Relaatio- ja graafitietokantojen sekä niiden hallintajärjestelmien vertailua

Tämän kandidaatintutkielman tarkoituksena on kirjallisuuskatsauksen keinoin kuvata relaatio- ja graafitietokantojen eroavaisuuksia tietomalliensa, käyttökohteidensa ja hallintajärjestelmiensä näkökulmista. Relaatiomalli on saavuttanut itsestään selvän aseman koko tietokanta-alalla, niin akateemis...

Full description

Bibliographic Details
Main Author: Ahonen, Mika
Other Authors: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, University of Jyväskylä, Jyväskylän yliopisto
Format: Bachelor's thesis
Language:fin
Published: 2017
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/53952
Description
Summary:Tämän kandidaatintutkielman tarkoituksena on kirjallisuuskatsauksen keinoin kuvata relaatio- ja graafitietokantojen eroavaisuuksia tietomalliensa, käyttökohteidensa ja hallintajärjestelmiensä näkökulmista. Relaatiomalli on saavuttanut itsestään selvän aseman koko tietokanta-alalla, niin akateemisessa kuin liiketoiminnallisissakin yhteyksissä, mutta myös harrastajapiireissä. 1990- luvulta lähtien, internetin hyödyntämisen yleistyessä ja linkittyneen, verkkomuotoisen tiedon lisääntyessä yhä suurempi osa tiedosta on rakenteeltaan osittain tai kokonaan jäsentymätöntä, jatkuvasti uudelleen muotoutuvaa ja verkottunutta. Verkkomuotoinen tieto tietokantojen yhteydessä mukautuu niin sanottuun graafimalliin, jonka teoreettinen tausta on jo pitkään tunnetussa verkkoteoriassa. Graafimuotoisen tiedon käsittely perinteisillä relaatiotietokannan hallintajärjestelmillä (RDBMS) on osoittautunut haasteelliseksi. Tämä johtuu graafeille ominaisten, objektien välisten liitoksien runsaasta määrästä. Relaatiotietokannassa liitoksien runsas määrä aiheuttaa RDBMS:lle merkittäviä suorituskykyongelmia. Lisäksi osittain tai kokonaan jäsentymättömän tiedon käsittely on relaatiotietokannassa haasteellista, koska siinä hyödynnetään skeemaa eli tietokannan luonnin yhteydessä määriteltyä tietokannan rakenteellista mallia. Näiden pohjalta on syntynyt tarve kehittää uudenlaisia, graafeille sopivampia tietokannanhallintajärjestelmiä (DBMS). Uudenlaiset tietokannat kuuluvat NoSQL-tietomalliperheeseen. SQL on yleisesti RDBMS:issä käytetty kyselykieli ja termillä NoSQL pyritään luomaan eroa perinteiseen relaatiomalliin. Sana NoSQL on akronyymi sanoista Not only SQL. NoSQL-tietomalliperheeseen kuuluvat muun muassa dokumentti-, avainarvopari-, sarakeperhe-, ja graafitietokannat. Tässä kandidaatintutkielmassa kuvataan relaatiomalliin ja sen soveltamiseen liittyvät peruskäsitteet, mutta painotus on enemmän graafimallissa ja sen soveltamisessa sekä siihen liittyvissä hyödyissä, haasteissa ja sovellusalueiden kuvaamisessa. Lisäksi tutkielmassa kuvataan kaksi RDBMS:n ja GDBMS:n (Graph Database Management System) käyttötapauksia vertailevaa tutkimusta. Kirjallisuuden pohjalta voidaan tehdä johtopäätös, että GDBMS:t sopivat tarkoitukseensa ja ovat vakiinnuttamassa paikkaansa tietokanta-alalla. Silti niiden käytössä on edelleen haasteita. The purpose of this Bachelor’s thesis is to describe differences between relational and graph database in terms of data model they use, where they are used and what kind of management systems they are used on. The scientific method used in this thesis is based on literature review. In the area of databases a relational model and its applications have reached a self-evident status consisting academic and business contexts but also private enthusiasts. Since the early nineties along with Internet becoming more common and the amount of linked network related data increased, is data organized more and more semi-structured or unstructured ways and it is also frequently re-structured and linked. Relating to databases a networked data adapts to so called graph model, where its theoretical model is based on mathematical graph theory. Manipulating the graph data by traditional relational database management systems (RDBMS) has been proven to provoke challenges. This is due to a large amount of joins between objects characterized by the graphs. In the relational database a large amount of joins causes a significant performance reduction for RDBMS. The relational database makes use of a schema which is a model for database structure and is defined while creating the database. For that reason a processing of semi-structured or unstructured data in the relational database is challenging. Based on previously announced facts, there has emerged a need to develop new type of and more suitable database management systems (DBMS) and data models for the graphs. New type of data model family is called NoSQL. In the RDBMS, SQL is commonly used as query language and the term aims to make a difference to relational databases. Therefore the word NoSQL is an acronym for the words Not only SQL. Key-value stores, column family stores, document stores and also graph databases belong to the NoSQL. This Bachelor’s Thesis describes the basic concepts of relational model but the emphasis is more on the side of the graph model, benefits and challenges it faces and in the descriptions of application domains for the graph model. Moreover, the thesis describes two benchmarked use cases of RDBMS and GDBMS. Based on the literature used in the thesis it can be concluded that graph GDBMSs fit for their purpose, are consolidating status in the area of data bases but challenges still exist.