Hatékony gráflekérdezési technikák

OData támogatás
Konzulens:
Szárnyas Gábor
Méréstechnika és Információs Rendszerek Tanszék

Az elmúlt évtizedben sokféle különböző NoSQL technikát használó adatbázis-kezelő készült. Ezek egyik csoportja a gráfadatbázisoké, melyek lehetővé teszik az adatok gráf formában történő tárolását és lekérdezését. Ez az adatmodell gyakran jobban illeszkedik a sok összefüggést tartalmazó adatok tárolására, mint a relációs modell, és a tömörsége miatt gyakran képes jobb teljesítményt nyújtani. Mindezek ellenére, mivel a relációs adatbázisokat majdnem 50 éve fejlesztik és optimalizálják, jelenleg is nyitott kérdés, hogy szükség van-e specializált gráfadatbázisokra a gráfadatok hatékony feldolgozásához.

A gráfadatbázisok számos felhasználási esetében -- ajánlórendszerek, pénzügyi csalások felderítése -- a lekérdezések össszetettek, és ezek ismételt, gyors végrehajtása kritikus eleme a munkafolyamatoknak, továbbá a gráfadatbázisokat egyre többször használják szoftverek modelljeinek validációjára és forráskód-elemzésére. Az ilyen felhasználási módok esetében a hagyományos gráfadatbázis-kezelőknél jobb teljesítményt tudna nyújtani egy inkrementális lekérdezéseket támogató gráfadbázis-kezelő rendszer, amely támogatja nézetek létrehozását és azokat automatikusan karbantartja az adatbázis változása során.

Különböző adatbázis-kezelő rendszerek összehasonlításához elengedhetetlenek a teljesítménymérési specifikációk (benchmarkok). Relációs adatbázisok esetében ezt a szerepet a Transaction Processing Performance Council benchmarkjai töltik be. A gráfadatbázisok relatív kiforratlansága miatt jelenleg kevés teljesítménymérési keretrendszer létezik a gráflekérdezések teljesítménymérésére. Azért, hogy segítsem egy szabványos teljesítménymérési keretrendszer létrejöttét, bekapcsolódtam az LDBC (Linked Data Benchmark Council) Social Network Benchmark fejlesztésébe, amelynek keretében frissítettem és jelentősen fejlesztettem a meglévő implementációkat, továbbá elkészítettem a SPARQL nyelvű implementációt. Ezek felhasználásával megvizsgáltam és részletesen elemeztem az adatbázis kezelőket különböző adatmodellek (relációs, gráf és szemantikus) felhasználásával.

Az inkrementális gráflekérdezésekhez kapcsolódóan megismertem az időalapú és differenciális adatfolyamok programozási paradigmákat, és a TTC (Transformation Tool Contest) verseny 2018-as feladatát megvalósítottam egy differenciális adatfolyamok létrehozását támogató szoftverkönyvtár, a Naiad felhasználásával. Ennek teljesítményét összehasonlítottam a versenyre érkezett más megoldások teljesítményével.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.