Implementace paralelního zpracování dotazů v databázovém systému PostgreSQL
Implementace paralelního zpracování dotazů v databázovém systému PostgreSQL
diploma thesis (DEFENDED)
![Document thumbnail](/bitstream/handle/20.500.11956/33380/thumbnail.png?sequence=8&isAllowed=y)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/33380Identifiers
Study Information System: 66193
Collections
- Kvalifikační práce [11264]
Author
Advisor
Referee
Bednárek, David
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software Systems
Department
Department of Software Engineering
Date of defense
31. 1. 2011
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Very good
Keywords (Czech)
Paralelní zpracováni dotazů, PostgreSQL, Master Worker paradigmaKeywords (English)
Parallel query processing, PostgreSQL, Master Worker paradigmCONTENTS v Název práce: Implementace paralelního zpracování dotazů v databázo- vém systému PostgreSQL Autor: Bc. Daniel Vojtek Katedra: Katedra softwarového inženýrství Vedoucí diplomové práce: Mgr. Július Štroffek e-mail vedoucího: julo@stroffek.cz Abstrakt: Paralelní zpracování dotazů je jednou z možností jak v reálném čase zpracovávat rychle narůstající množství dat uložených v databázích. Cílem této diplomové práce bylo prozkoumání možností, návrh řešení a zároveň implementace paralelního zpracování dotazů v open source data- bázovém systému PostgreSQL. Využil jsem návrhový vzor Master/Worker, kde standardní databázový proces vykonává pozici vedoucího. Jako pra- covníky jsem využil procesy vznikající z řídícího procesu databáze, post- mastra. V práci jsem se zaměřil na přípravu infrastruktury potřebné pro paralelní zpracovaní. Definoval jsem nový kontext nad sdílenou pamětí, který umožňuje efektivní správu alokací. Implementoval jsem vytváření pracovních procesů na základě požadavků vedoucích procesů. Defino- val jsem také struktury umožňující jejich řízení. Následně jsem na této infrastruktuře implementoval paralelní operace, jako je řazení a SQL operátor UNION ALL. Výsledkem této...
CONTENTS vi Title: Implementation of parallel query processing in PostgreSQL Author: Bc. Daniel Vojtek Department: Department of Software Engineering Supervisor: Mgr. Július Štroffek Supervisor's e-mail address: julo@stroffek.cz Abstract: Parallel query processing can help with processing of huge amounts of data stored in database systems. The aim of this diploma the- sis was to explore the possibilities, analyze, design and finally implement parallel query processing in open source database system PostgreSQL. I used a Master/Worker design pattern, in which standard PostgreSQL backend process is a master. As workers I used processes created from postmaster. In the thesis I focused on preparing an infrastructure nec- essary for parallel processing. I defined a new top level memory context over shared memory, which allows efficient and convenient memory al- locations. Then I implemented creation of new worker processes, based on master process requirements. To be able to control these workers I defined controlling structures using state machines. Then I implemented parallel sort operation and SQL operator UNION ALL using this infras- tructure. The result of this diploma thesis is not only implementation of infrastructure and some parallel operations, but also description of the problems encountered during the...