Zobrazit minimální záznam

Analýza datových toků pro PySpark a ORM knihovny jazyka Python
dc.contributor.advisorParízek, Pavel
dc.creatorJurčo, Andrej
dc.date.accessioned2023-07-24T23:27:05Z
dc.date.available2023-07-24T23:27:05Z
dc.date.issued2023
dc.identifier.urihttp://hdl.handle.net/20.500.11956/181592
dc.description.abstractIn the world of ETL tools and data processing, Python is one of the main languages used in practice. Python scripts that define data manipulations usually use the same Python framework, PySpark, which is the Python API for the Spark framework, alongside database libraries, using their ORM features. These ORM features usually work in a similar way in most of the relevant libraries. Recently, MANTA Flow, a highly automated data lineage analysis tool, was extended with a Python language scanner and now it is in the phase of being extended to support more commonly used frameworks. In this work, we analyzed the PySpark library and the SQLAlchemy ORM technology in order to extend the MANTA's Python scanner with the support for these two frequently used tools. In case of the PySpark library, we designed and implemented a core of the plugin to the Python scanner which supports elementary functionality. The plugin is capable of analyzing various DataFrame input and output options available in PySpark for both file and database data sources, and it is able to propagate data flows during transformations with reasonable level of overapproximation, as demonstrated in the work. In case of the SQLAlchemy ORM, we designed a solution that would allow the scanner to analyze the ORM source code and its core could be used to...en_US
dc.description.abstractVo svete ETL nástrojov a spracovania dát je Python jedným z najčastejšie použí- vaných jazykov. Skripty napísané v jazyku Python, ktoré definujú manipuláciu s dá- tami, zvyčajne používajú rovnakú knižnicu, PySpark, čo je Python API pre framework Spark, spoločne s databázovými knižnicami, využívajúc ich ORM funkcionalitu. Táto funkcionalita zvyčajne funguje podobným spôsobom vo väčšine relevantných knižníc. Nedávno bol MANTA Flow, vysoko automatizovaný nástroj na analýzu data lineage, rozšírený o skener jazyka Python a teraz je vo fáze rozširovania o podporu bežných frameworkov. V tejto práci sme analyzovali knižnicu PySpark a technológiu SQLAlchemy ORM s cieľom rozšíriť Python skener firmy MANTA o podporu týchto dvoch často používaných nástro- jov. V prípade knižnice PySpark sme navrhli a implementovali jadro pluginu pre skener jazyka Python, ktorý podporuje elementárnu funkcionalitu. Plugin je schopný analyzo- vať rôzne vstupné a výstupné možnosti DataFramov dostupné v PySparku pre súborové aj databázové dátové zdroje a je schopný propagácie dátových tokov počas transformá- cií s primeranou úrovňou overaproximácie, ako sme v práci demonštrovali. V prípade SQLAlchemy ORM sme navrhli riešenie, ktoré umožní skeneru analyzovať zdrojový kód využívajúci funkctionalitu ORM a jeho jadro by bolo možné použiť aj pre...cs_CZ
dc.languageEnglishcs_CZ
dc.language.isoen_US
dc.publisherUniverzita Karlova, Matematicko-fyzikální fakultacs_CZ
dc.subjectdata lineage|data flow|python|symbolic analysisen_US
dc.subjectdata lineage|python|symbolická analýza|dátové tokycs_CZ
dc.titleData Lineage Analysis for PySpark and Python ORM Librariesen_US
dc.typediplomová prácecs_CZ
dcterms.created2023
dcterms.dateAccepted2023-06-06
dc.description.departmentKatedra distribuovaných a spolehlivých systémůcs_CZ
dc.description.departmentDepartment of Distributed and Dependable Systemsen_US
dc.description.facultyFaculty of Mathematics and Physicsen_US
dc.description.facultyMatematicko-fyzikální fakultacs_CZ
dc.identifier.repId247480
dc.title.translatedAnalýza datových toků pro PySpark a ORM knihovny jazyka Pythoncs_CZ
dc.contributor.refereeŠkoda, Petr
thesis.degree.nameMgr.
thesis.degree.levelnavazující magisterskécs_CZ
thesis.degree.disciplineInformatika - Softwarové a datové inženýrstvícs_CZ
thesis.degree.disciplineComputer Science - Software and Data Engineeringen_US
thesis.degree.programInformatika - Softwarové a datové inženýrstvícs_CZ
thesis.degree.programComputer Science - Software and Data Engineeringen_US
uk.thesis.typediplomová prácecs_CZ
uk.taxonomy.organization-csMatematicko-fyzikální fakulta::Katedra distribuovaných a spolehlivých systémůcs_CZ
uk.taxonomy.organization-enFaculty of Mathematics and Physics::Department of Distributed and Dependable Systemsen_US
uk.faculty-name.csMatematicko-fyzikální fakultacs_CZ
uk.faculty-name.enFaculty of Mathematics and Physicsen_US
uk.faculty-abbr.csMFFcs_CZ
uk.degree-discipline.csInformatika - Softwarové a datové inženýrstvícs_CZ
uk.degree-discipline.enComputer Science - Software and Data Engineeringen_US
uk.degree-program.csInformatika - Softwarové a datové inženýrstvícs_CZ
uk.degree-program.enComputer Science - Software and Data Engineeringen_US
thesis.grade.csVýborněcs_CZ
thesis.grade.enExcellenten_US
uk.abstract.csVo svete ETL nástrojov a spracovania dát je Python jedným z najčastejšie použí- vaných jazykov. Skripty napísané v jazyku Python, ktoré definujú manipuláciu s dá- tami, zvyčajne používajú rovnakú knižnicu, PySpark, čo je Python API pre framework Spark, spoločne s databázovými knižnicami, využívajúc ich ORM funkcionalitu. Táto funkcionalita zvyčajne funguje podobným spôsobom vo väčšine relevantných knižníc. Nedávno bol MANTA Flow, vysoko automatizovaný nástroj na analýzu data lineage, rozšírený o skener jazyka Python a teraz je vo fáze rozširovania o podporu bežných frameworkov. V tejto práci sme analyzovali knižnicu PySpark a technológiu SQLAlchemy ORM s cieľom rozšíriť Python skener firmy MANTA o podporu týchto dvoch často používaných nástro- jov. V prípade knižnice PySpark sme navrhli a implementovali jadro pluginu pre skener jazyka Python, ktorý podporuje elementárnu funkcionalitu. Plugin je schopný analyzo- vať rôzne vstupné a výstupné možnosti DataFramov dostupné v PySparku pre súborové aj databázové dátové zdroje a je schopný propagácie dátových tokov počas transformá- cií s primeranou úrovňou overaproximácie, ako sme v práci demonštrovali. V prípade SQLAlchemy ORM sme navrhli riešenie, ktoré umožní skeneru analyzovať zdrojový kód využívajúci funkctionalitu ORM a jeho jadro by bolo možné použiť aj pre...cs_CZ
uk.abstract.enIn the world of ETL tools and data processing, Python is one of the main languages used in practice. Python scripts that define data manipulations usually use the same Python framework, PySpark, which is the Python API for the Spark framework, alongside database libraries, using their ORM features. These ORM features usually work in a similar way in most of the relevant libraries. Recently, MANTA Flow, a highly automated data lineage analysis tool, was extended with a Python language scanner and now it is in the phase of being extended to support more commonly used frameworks. In this work, we analyzed the PySpark library and the SQLAlchemy ORM technology in order to extend the MANTA's Python scanner with the support for these two frequently used tools. In case of the PySpark library, we designed and implemented a core of the plugin to the Python scanner which supports elementary functionality. The plugin is capable of analyzing various DataFrame input and output options available in PySpark for both file and database data sources, and it is able to propagate data flows during transformations with reasonable level of overapproximation, as demonstrated in the work. In case of the SQLAlchemy ORM, we designed a solution that would allow the scanner to analyze the ORM source code and its core could be used to...en_US
uk.file-availabilityV
uk.grantorUniverzita Karlova, Matematicko-fyzikální fakulta, Katedra distribuovaných a spolehlivých systémůcs_CZ
thesis.grade.code1
uk.publication-placePrahacs_CZ
uk.thesis.defenceStatusO


Soubory tohoto záznamu

Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail
Thumbnail

Tento záznam se objevuje v následujících sbírkách

Zobrazit minimální záznam


© 2025 Univerzita Karlova, Ústřední knihovna, Ovocný trh 560/5, 116 36 Praha 1; email: admin-repozitar [at] cuni.cz

Za dodržení všech ustanovení autorského zákona jsou zodpovědné jednotlivé složky Univerzity Karlovy. / Each constituent part of Charles University is responsible for adherence to all provisions of the copyright law.

Upozornění / Notice: Získané informace nemohou být použity k výdělečným účelům nebo vydávány za studijní, vědeckou nebo jinou tvůrčí činnost jiné osoby než autora. / Any retrieved information shall not be used for any commercial purposes or claimed as results of studying, scientific or any other creative activities of any person other than the author.

DSpace software copyright © 2002-2015  DuraSpace
Theme by 
@mire NV