1 / 153

Systém riadenia bázy dát (Database Management System)

Explore RAID, sort-merge algorithms, physical data organization, indexing, and query optimization in Database Management Systems. Learn about RAID levels, performance, and advanced algorithm design in data sorting.

gszymanski
Download Presentation

Systém riadenia bázy dát (Database Management System)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Systém riadenia bázy dát(Database Management System) Ján GENČI PDT 2009

  2. Obsah • RAID • 2-phase multiway sort-merge • Fyzická organizácia dát • Indexovanie • Systémový katalóg • Operácie relačnej algebry (krátko) • Implementácia operácií relačnej algebry • Query plány – optimalizácia dotazov

  3. Literatúra [1] • Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer D. Widom: Database System Implementation, Prentice Hall, 1999. ISBN-10: 0130402648, pp.653 • Database Systems: The Complete Book, 2001

  4. Literatúra [2] • Elmasri R., NavatheS. B. : Fundamentals of database systems. 4th ed., Pearson Education, 2001.5th ed. – 2006, pp. 1030 (ch. 13-15 -19; 120 resp. 220 str.)

  5. Literatúra [3] • Ramakrishnan R., Gehrke J.: Database Management Systems. McGraw-Hill Science/Engineering/Math; 3rd ed., 2002, pp. 906 (ch. 7-14; 220 str.)

  6. Literatúra [4] • Abraham Silberschatz, Henry Korth, S. Sudarshan: Database System Concepts. McGraw-Hill Science/Engineering/Math; 5th ed., 2005. pp.~920 (ch. 11-14-17; 170 resp. 290 str.

  7. RAID Obrázky (väčšina) z [2]

  8. RAID • Originally - Redundant Arrays of Inexpensive Disks. • Currently - Redundant Array of Independent Disks • Chen, Lee, Gibson, Katz, and Patterson (1994), ACM Computing Survey, Vol. 26, No.2 (June 1994). • http://sk.wikipedia.org/wiki/RAID (pekne názorne spracované)

  9. RAID 0

  10. RAID 1, 2

  11. RAID 3, 4, 5, 6

  12. RAID – ďalšie kombinácie • 10, 01 - Kombinácie základných RAIDov • Performance: • Block-interleaved distributed-parity disk arrays (RAID 5) have the bestsmall read, large read, andlarge writeperformance of any redundantdisk array. • Small write requests aresomewhat inefficient compared with redundancyschemes such as mirroring.

  13. Two phase,multiway sort-merge Na základe prezentácie Simonas Šaltenis: Advanced Algorithm Design and Analysis

  14. Purpose of Algorithm • Triedenie veľkých súborov dát (Data>Memory) • Klasický algoritmus – Wirthov sort-merge algoritmus (Wirth C.: Algoritmy a dátové štruktúry.)

  15. Princíp – 1. fáza • Vytvoriť maximálne možné veľké „behy“ (utriedené postupnosti elementov) – najlepšie načítaním do dostupnej pamäte a zotriedením napr. quick-sortom • Spájanie behov (mergovanie)

  16. Bf1 p1 min(Bf1[p1], Bf2[p2], …, Bfk[pk]) Bf2 Read, when pi = B Bfo p2 po Bfk pk Write, when Bfo full Current page Current page Current page File Y: EOF Run 1 Run 2 Run k=n/m File X: Princíp – 2. fáza

  17. Zhodnotenie • Fáza 1: O(n), Fáza 2: O(n) • Celkom: O(n) I/Os! • Dajú sa triediť iba súbory obmedzenej veľkosti • Fáza 2 môže spájať (merge) maximálnem-1 behov (m – počet vyrovnávacích pamätí). • Čo znamená: N/M(počet behov) ≤m-1

  18. (m-1)3M = N Phase 2 . . . . . . (m-1)2M . . . (m-1)M (m-1)M (m-1)M . . . … … … M M M M M M Phase 1 . . . … … … M M M M M M M M M M M M Triedenie veľmi veľkých súborov

  19. Otázky

  20. SRBD – štruktúry a algoritmy

  21. Zdroj [1]

  22. Primárne (fyzické) organizácie

  23. Zdroj:Paul Beynon-Davies: DATABASE SYSTEMS.3RD ED. PALGRAVE MACMILLAN,2004

  24. O čom budeme hovoriť • Podporované dátové typy • Formovanie záznamov • Organizácia (radenie) záznamov • fyzická • logická • „Umiestnenie“ DBMS v rámci OS

  25. Podporované dátové typy • Tzv. built-in dátové typy • Pre účely ukladania dát, je pre nás zaujímavá veľkosť dátového typu (sizeof(typ)) • „Sémantika“ typu je podporená implementáciou (HW alebo SW) relevantných operácií (out of scope)

  26. Formáty ukladaných záznamov • Záznamy s pevnou dĺžkou (A fixed-length record) • Záznamy s premenlivou dĺžkou (A record with variable-length fields) • Záznamy s premenlivou dĺžkous oddelľovačmi (A variable-field record with separator characters).

  27. Storage Record Formats[2]

  28. Fixed length record • Veľkosť záznamu je uložená v systémovom katalógu

  29. Variable length records • Záznamy s premenlivou dĺžkou

  30. Reprezentácia NULL hodnôt • Prakticky väčšina zdrojov o spôsobe implementácie „mlčí“ • Pri záznamoch premenlivej dĺžky sa dá využiť null pointer na prvok záznamu • ORACLE v dokumentácii pre ORA7 prezentoval ukladanie NULL hodnoty cez bitmapový prefix záznamu

  31. Fyzická organizácia záznamov

  32. Fyzická organizácia záznamov 2

  33. Umiestňovanie záznamov do fyzických blokov • Spanned • Unspanned

  34. Logické organizácie záznamov • Sekvenčná • Hašovaná • Heap (hromada) • Zhodnotenie z pohľadu operácií insert, find a delete

  35. Sekvenčná organizácia

  36. Zhodnotenie – sekvenčná org. • Insert – drahá operácia (potreba posunúť priemerne N/2 záznamov) – oblasti pretečenia (overflow areas) • Find – možnosť binárneho vyhľadávania podľa usporiadavajúceho atribútu - O(log2N), ináč O(N) = N/2 alebo N • Delete – drahá operácia (potreba posunúť priemerne N/2 záznamov) – možnosť označovať záznamy ako zmazané pack

  37. Interné Hašovanie

  38. Zhodnotenie – hašovanie • Insert – O(1) ak neuvažujeme konflikty; ak uvažujeme - najhorší prípad O(N) • Find – O(1) – hashovací atribút, O(N) ostatné atribúty • Delete – O(1) • Štruktúra musí byť dimenzovaná na maximálny počet záznamov

  39. Externé hašovanie

  40. Zhodnotenie - externé hašovanie • Ako interné hašovanie • Konflikty sa riešia blokmi pretečenia (viď ďalší slajd )

  41. Ext. hašovanie –bloky pretečenia

  42. „Rozšíriteľné“ hašovanie

  43. Zhodnotenie – rozšíriteľné hašovanie • Ako externé hašovanie • Plusom je možnosť dynamického rozširovania „veľkosti hašovacieho poľa“

  44. Heap (hromada) • Záznamy sú neusporiadané – nie je usporiadavací atrubút • Strácame možnosť - binárne vyhľadávanie; primárny index (ale iba pre usporiad. atr.) • Veľmi efektívna operácia INSERT

  45. Miesto DBMS v rámci OS Cooked files Raw devices • NTFS

  46. Otázky

  47. Indexovanie Z podstatnej časti podľa [2] Všetky obrázky z [2]

  48. Index • Alternatívny spôsob prístupu k dátam • Lokalizácia záznamu podľa obsahu

  49. Počet úrovní Kategorizácia indexov Indexované záznamy Indexovaný atribút Kategorizácia indexov Primárne Klastrovacie Jednoúrovňové Sekundárne Viacúrovňové Hustý Riedky

  50. Kategorizácia indexov • Podľa počtu úrovní: • Jedno-úrovňové • Viac-úrovňové • Podľa indexovaného atribútu: • Primárne • Klastrovacie (clustering) • Sekundárne • Podľa počtu indexovaných záznamov: • Hustý (dense) – všetky záznamy v indexe • Riedky (sparse) – len časť záznamov v indexe

More Related