Orvosbiológiai adatok nagyléptékű gráf alapú vizualizációja

OData támogatás
Konzulens:
Dr. Hullám Gábor István
Méréstechnika és Információs Rendszerek Tanszék

Diplomadolgozatom tárgya egy valós projekt, melynek célja nagy léptékű, gráf alapú adatmegjelenítésre alkalmas eszközök vizsgálata olyan szempontból, hogy azok milyen mértékben alkalmasak orvosbiológiai adatok megjelenítésére. Ehhez a célhoz két eszközt vizsgáltam. Az egyik a Collaboration Spotting (CS) nevű szoftver, míg a másik keretrendszer egy hasonló, saját készítésű frontend alkalmazás.

A CS egy, a svájci, genfi központú Európai Nukleáris Kutatási Szervezet (CERN) által fejlesztett vizualizációs keretrendszer. A szoftver a Budapesti Műszaki és Gazdaságtudományi Egyetem és a CERN közös kutatási együttműködésének keretein belül volt használva adatmegjelenítés céljából. A másik frontend alkalmazás egy egyedi szoftver megoldás, amelynek alapjaként a Sigma.js könyvtár renderelő motorja szolgál, amely a grafikus megjelenítést teszi lehetővé a kívánt módon.

Az elvégzett munka korai fázisaiban irodalomkutatás történt bioinformatikai témában, amelyet további kutatás követett a gráfok tématerületén. Szintén feltérképeztem a szóba jövő, már létező gráf alapú alkalmazásokat és egyéb szoftveres megoldásokat. Időközben megvizsgáltam néhány nyilvánosan elérhető orvosbiológiai tudásbázist, és meghatároztam az entitások megfeleltetéséhez szükséges azonosítókat. Továbbá eldöntöttem, mely attribútumokra lehet szükségünk. Ez segített általánosságban megérteni az entitások közötti kapcsolatokat, és hogy milyen hierarchiába szerveződnek. Mindez végül nagy segítséget nyújtott abban, hogy fel tudjak írni egy összetett gráf alapú adatmodellt.

Az adatok forrásaival való megismerkedést követően egy egyszerűsített modell is készült, amely alapján négy biológiai entitáshoz letöltöttem a szükséges adatot. Ezután elvégeztük a szükséges adat átalakító lépéseket, amely során eljutottunk a kívánt formátumú állományhoz. Az attribútumokat illetően az eszköz specifikus feltételek megköveteltek még néhány további ETL lépést.

Következő lépésben, a projekt második szakaszában a CS került a középpontba. Először a lehetséges bemeneti adatok struktúrája került feltérképezésre. Ezután, a leírások alapján megismerkedtem a szoftverrel. Ezt követően tanulmányozni kezdtem az alkalmazás programozási felületét, ami alapján létrejöttek az alkalmazás működéséhez szükséges kódrészletek is, majd elkészültek a gráf komponenseit leíró elemek. Ezek megírásakor figyelembe vettem, hogy az adathalmaz esetlegesen hatalmas méreteket is ölthet. A CS keretrendszere elemzésre került, ám használatára külső okok miatt végül nem került sor.

Később, a harmadik szakaszban elkészítettem a saját alkalmazásomat, hogy tesztelni tudjam, hogyan jeleníthető meg az adat egy másik, ám hasonlóan működő megoldáson. Csak az után döntöttem el, hogy melyik megoldást valósítom meg a több lehetőség közül, hogy folyamatosan felmértem az előnyöket és hátrányokat. Végül a Sigma.js bizonyult a legjobbnak. Jobban belemélyedtem, majd előkészítettem a megfelelő környezetet, amiben létrehoztam egy könnyen közzétehető alkalmazást. A működő alkalmazás elkészültéhez vezető úton legelőször mindössze annyi volt a célom, hogy legalább egy adatsort meg tudjak jeleníteni. Később a szűrés megvalósítása lett a kihívás, majd az automatikus elrendezés, és végül az, hogy felhasználói szempontból is fejlesszek a felületen.

Végül a Sigma.js alapú alkalmazással valósítottam meg a megjelenítést. Az eszköz lehetővé teszi ontológiai adat ábrázolását, és megjeleníti az egyes entitások közötti kapcsolatokat. Az egy időpontban megjelenítendő adat méreteihez alkalmazkodva, a felület úgy lett elkészítve, hogy a felhasználó elvégezhessen általa kívánt szűrő lekérdezéseket. Továbbá, az alkalmazás figyelembe veszi az adatok közötti kapcsolat erősségét is.

Végül, céljaim között áll, hogy az alkalmazásom használata során minél több új ismeret kerüljön napvilágra, és hogy az orvosbiológia területén valódi érték teremtődjön.

Letölthető fájlok

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