Experimental Analysis of Querying in Modern Database Systems
Experimentální analýza dotazování v moderních databázových systémech
bakalářská práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/192942Identifikátory
SIS: 254988
Kolekce
- Kvalifikační práce [11242]
Autor
Vedoucí práce
Oponent práce
Holubová, Irena
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Informatika se specializací Programování a vývoj software
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
5. 9. 2024
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Velmi dobře
Klíčová slova (česky)
porovnání databázových systémů|integrace dat|vyjadřovací síla dotazů|výkon dotazůKlíčová slova (anglicky)
database systems comparison|data integration|query expressiveness|query performanceV současné době s vysokým množstvím dostupných databázových systému je často obtížné vybrat mezi nimi ten nejlepší pro naše potřeby. V této práci se zaměříme na vý- běr výkonného databázového systému mezi PostgreSQL, Virtuoso, OrientDB, ScyllaDB, Couchbase a RavenDB, u kterých porovnáváme statické vlastnosti a dostupné funkce a přidáváme diskuzi o extrakci a transformaci dat, pro kterou vytváříme pomocnou kni- hovnu v Pythonu. Dále porovnáváme časy importů dat do databázových systému a pro stanovení nejefektivnější databáze měříme výkonnost dotazů pro několik různých velikostí datových sad a nakonec nabízíme doporučení na základě výsledků a diskutujeme další možné úvahy.
In today's landscape, with a multitude of available database systems, it is often hard to choose which one would fit our needs best. In this thesis we focus on choosing a performant database system from a choice between PostgreSQL, Virtuoso, OrientDB, ScyllaDB, Couchbase, and RavenDB. We compare the static properties and features of said database systems, and we include a brief discussion on data extraction and trans- formation, for which we developed a helper library for Python. We then assess dataset import times into each database system. To determine the most efficient database, we measure query performance across multiple dataset sizes, and finally we offer a recom- mendation based on the results, and discuss further possible considerations.