Reprezentace XML dat pomocí C-store
Representing XML data by C-store
diploma thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/20731Identifiers
Study Information System: 43798
Collections
- Kvalifikační práce [11242]
Author
Advisor
Referee
Holubová, Irena
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software systems
Department
Department of Software Engineering
Date of defense
25. 5. 2009
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Very good
Prostředí C-store - tedy relační databáze ukládající záznamy na disku po sloupcích. Vhodná pro agregace, optimalizovaná pro čtení. Lze ji efektivně použít coby XML databázi? Práce zvažuje XML data se schématem i bez něj. Pro oba případy je definovaný databázový model vzniklý z XML souboru. Měřítkem vhodnosti modelu je možnost rychlého vyhledávání cest v XPath. Předek, potomek, mladší sourozenec - to jsou pouze některé z diskutovaných os XPath. Nízká systémová úroveň, umožňující odhadnout počet nutných skoků na disku, je pro algoritmy na jednotlivých cestách charakteristická. Výsledek? Schéma XML dat se neukazuje jako přínosné. Co se týká dat bez schématu, použití C-store se jeví jako optimální. Ale... Doplnění určitých funkčností systému by bylo i tady záhodno - přímý přístup k položkám, nečtení nutně celého sloupce. Práce rozšiřuje definici C-store o tyto principy a doplňuje to experimenty na reálných datech. V závěru je uvedena ukázka implementace vybraných algoritmů sloužící jako návod na další implementaci.
C-store environment - relational database storing records on the disk by columns. Suitable for aggregations, optimalized for reading. Can it be effectively used as XML database? This thesis considers XML data with and without a schema. Database model is generated from a XML file for both cases. A measure of the model suitability is the possibility of making quick XPath queries. Ancestor, child, younger sibling - these are just some of the discussed XPath axes. Low level system enabling the estimation of number of jumps needed on drive is characteristic for algorithms for each axis. Result? Schema for XML data does not seem useful. Regarding the data without a schema, the use of C-store seems to be optimal. But ... Addition of certain functionality to the system would also be appropriate here - direct access to elements, possibility of not reading the whole column. The thesis extends the definition of C-store with these principles, and adds experiments with real data. The conclusion provides an example implementation of selected algorithms that might be used as guidance for further implementation.