This Master’s thesis presents the theory, design, and implementation of a scalable cloud database solution for a sensor network utilizing a cloud-based database-as-a-service platform. The sensor network is a part of the project called Internet of Things, a project studying on networking physical objects and visualizing of sensor data in a 3D environment. The challenge comes from being able to handle the massive data set expected to be produced by the sensor network. This is an example of the concept of Big Data, a data set so large that it becomes difficult and time consuming to be processed with conventional relational database methods. The solution can be found in NoSQL architectures. However, the distributed NoSQL architectures trade off several advantages of the relational database model to achieve database scaling, query performance, and partition tolerance. In this work, the database infrastructure is acquired as-a-service from one of the major cloud database service providers. Several decision criteria have been used to choose the database infrastructure service, such as scalability, absence of administrative duties, query functions, and service pricing. The work presents the rationale behind the database service selection and the design and implementation of the database and client software. Amazon’s DynamoDB is chosen as a target system due to its high scalability and performance, which offset its restrictions to query versatility. The resulting database design offering scalability beyond the traditional database management systems is presented with additional discussion on how to further improve the system and to implement new features. / Tämä diplomityö käsittelee sensoriverkon datan tallennukseen hyödynnettävän skaalautuvan pilvitietokantaratkaisun teoriaa, suunnittelua ja toteutusta käyttäen olemassaolevan pilvipalvelutarjoajan tietokanta-alustaa. Sensoriverkko on osa Internet of Things -projektia, joka tutkii fyysisten objektien verkottumista ja sensoridatan visualisointia 3D-ympäristössä. Sensoriverkon tuottama valtava datamäärä on haasteellista hallita. Tästä ilmiöstä käytetään nimitystä Big Data, jolla tarkoitetaan niin suurta datan määrää, että sitä on vaikeata ja hidasta käsitellä perinteisillä tietokantasovelluksilla. Ratkaisu on hajautetut NoSQL tietokanta-arkkitehtuurit. NoSQL-arkkitehtuureissa joudutaan kuitenkin tekemään myönnytyksiä, jotta saavutaan tietokannan skaalautuvuus, hakujen suorituskyky ja partitioiden sieto. Tässä työssä tietokantainfrastruktuuri hankitaan palveluna suurelta pilvitietokantapalveluiden tarjoajalta. Tietokantapalvelun valintaan vaikuttavat useat kriteerit kuten skaalautuvuus, hallinnoinnin helppous, hakufunktiot sekä palvelun kustannukset. Työssä esitetään tietokantapalvelun valintaperusteet sekä tietokannan ja asiakasohjelman suunnittelu ja toteutus. Tietokantapalveluksi valitaan Amazon DynamoDB, jonka suuri skaalautuvuus ja suorituskyky kompensoivat tietokantahakujen rajoituksia. Työssä kehitetään tietokantasuunnitelma, joka tarjoaa perinteisiä relaatiotietokantoja suuremman skaalautuvuuden, sekä käsitellään menetelmiä uusien ominaisuuksien lisäämiseksi ja järjestelmän parantamiseksi.
Identifer | oai:union.ndltd.org:oulo.fi/oai:oulu.fi:nbnfioulu-201306061571 |
Date | 14 June 2013 |
Creators | Moilanen, T. (Tuomo) |
Publisher | University of Oulu |
Source Sets | University of Oulu |
Language | English |
Detected Language | Finnish |
Type | info:eu-repo/semantics/masterThesis, info:eu-repo/semantics/publishedVersion |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess, © Tuomo Moilanen, 2013 |
Page generated in 0.0017 seconds