Precise and Efficient Incremental Update of Data Lineage Graph
Přesné efektivní inkrementální modifikace grafu datových toků
diplomová práce (OBHÁJENO)

Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/173511Identifikátory
SIS: 234472
Kolekce
- Kvalifikační práce [11322]
Autor
Vedoucí práce
Oponent práce
Zavoral, Filip
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
7. 6. 2022
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
{datové toky}|{inkrementální update}|{statická analýza}|{graf datových toků}|{Manta}Klíčová slova (anglicky)
{data lineage}|{incremental updates}|{static analysis}|{data flow graph}|{Manta}Datové toky jsou důležitým aspektem dnešního korporátního prostředí. MANTA Flow je platforma pro analýzu datových toků, která funguje na základě extrakce a analýzy zdrojových souborů zákazníka. Často se však stává, že zákazník chce aktualizovat graf datových toků pouze kvůli malé změně v jeho zdrojových souborech. Současně se ale v takovém případě všechny vstupní zdrojové soubory analyzují znovu a většina času se tak promarní analýzou nezměněných souborů. V této práci jsme představili způsob, jak lze analyzátor datových toků vylepšit pomocí inkrementálních updatů tak, aby analyzoval pouze zlomek všech vstupních souborů a přitom stále produkoval správné datové toky. V rámci práce jsme změnili způsob provádění celé analýzy tím, že jsme změnili gran- ularitu analýzy na mnohem menší části. Také jsme vylepšili mergovací algoritmus, aby rozpoznal, kdy by nezměněný soubor mohl vygenerovat rozdílný datový tok pomocí nových konceptů, jako jsou zdrojové segmenty, nebo nové akce při odstranění či vytvoření vrcholu. Na základě toho nyní upravený algoritmus analyzuje pouze všechny změněné soubory a několik málo nezměněných souborů, které by mohly vygenerovat odlišný datový tok ve srovnání s předchozí analýzou. Implementovali jsme také prototyp pro MANTA Oracle skener, který využívá těchto nových konceptů. Prototyp byl...
Data lineage forms an essential aspect of today's enterprise environment. MANTA Flow is a data lineage analysis platform that works based on extracting and analyzing customers' source files. However, often the customer wants to update the data lineage graph because of a slight change in provided source files. However, all of the input source files are currently reanalyzed, and most of the time is wasted analyzing unchanged files. In the thesis, we presented how the data lineage analyzer can be improved using incremental updates to analyze only a fraction of all input files while still producing the same correct data lineage. We changed how the whole analysis is done by changing the granularity of the anal- ysis to much smaller pieces. We also improved the merge algorithm to recognize when an unchanged file could generate a different data lineage using new concepts like source segments, node removal, or node creation. The new MANTA client algorithm now ana- lyzes only changed files and a few unchanged files that could generate a different lineage compared to the last analysis. We also implemented a prototype for the MANTA Oracle scanner that contains these new ideas. It was tested for both the correctness and the performance. 1