Úvod do hierarchického databázového modelu
Databázový model je spôsob, ako definovať štruktúru alebo logický návrh databázy. Poskytuje informácie o spôsobe uloženia, prístupu a aktualizácie údajov v databáze DBMS (Database Management System). Teraz budeme podrobne diskutovať o modeli hierarchickej databázy. Existuje veľa dátových modelov reprezentujúcich údaje. Niektorí sú:
- Relačný model
- Hierarchický model
- Model siete
- Model entít a vzťahov
V časti Relation sú údaje modelu usporiadané do 2D (dvojrozmerných) tabuliek, kde je vzťah udržiavaný spoločným poľom v dvoch tabuľkách.
V modeli hierarchickej databázy sú údaje reprezentované stromovou štruktúrou. Predstavuje vzťah rodič - dieťa s jedným rodičom pre každé dieťa.
Sieťový model je rozšírením hierarchického modelu. V týchto údajoch sú znázornené grafy s viac ako jedným nadradeným uzlom pre jeden podradený uzol.
V modeli vzťahov entít sa objekty delia na entity a ich vlastnosti na ich atribúty a potom sa vytvorí vzťah medzi rôznymi entitami.
Teraz budeme podrobne diskutovať o modeli hierarchickej databázy.
Čo je hierarchický databázový model
Hierarchický databázový model je dátový model, v ktorom sú údaje zastúpené v stromovej štruktúre. V tomto modeli sa údaje ukladajú vo forme záznamov, ktoré sú zbierkou polí. Záznamy sú prepojené prepojeniami a typ záznamu hovorí, ktoré pole obsahuje záznam. Každé pole môže obsahovať iba jednu hodnotu.
Hierarchický databázový model musí mať iba jedného rodiča pre každý podradený uzol, ale rodičovský uzol môže mať viac ako jedno dieťa. Nie je povolený viac rodičov. Toto je hlavný rozdiel medzi hierarchickým a sieťovým databázovým modelom. Prvý uzol stromu sa nazýva koreňový uzol. Ak je potrebné údaje načítať, prejde celý strom, počnúc koreňovým uzlom. Tento model predstavuje vzájomné vzťahy.
Pozrime sa na jeden príklad: Predpokladajme, že máme hlavný adresár, ktorý obsahuje ďalšie podadresáre. Každý podadresár obsahuje viac súborov a adresárov. Každý adresár alebo súbor môže byť v jednom adresári, tj má iba jedného rodiča.
Tu A je hlavný adresár, tj koreňový uzol. B1 a B2 sú ich podriadené alebo podadresáre. B1 a B2 majú tiež dve deti C1, C2 a C2, C3 . Môžu to byť adresáre alebo iné súbory. Toto zobrazuje vzájomné vzťahy medzi mnohými.
Použitie hierarchického databázového modelu
Hierarchický databázový model sa počas éry mainframových počítačov často používal. Hierarchický databázový model sa dnes používa hlavne na ukladanie súborových systémov a geografických informácií. Používa sa v aplikáciách, kde sa vyžaduje vysoký výkon, napríklad v telekomunikáciách a bankovníctve. Hierarchická databáza sa používa aj pre register Windows v operačnom systéme Microsoft Windows. Je užitočné, ak sú splnené tieto dve podmienky:
- Údaje by mali mať hierarchický charakter, tj musia existovať vzťahy medzi rodičmi a deťmi.
- K údajom v hierarchickom vzore sa musí pristupovať iba cez jednu cestu.
Výhody hierarchického databázového modelu
- Dáta sa dajú ľahko získať kvôli explicitným väzbám medzi štruktúrami tabuľky.
- Referenčná integrita je vždy udržiavaná, tj všetky zmeny vykonané v nadradenej tabuľke sa automaticky aktualizujú v podradenej tabuľke.
- Podporuje zdieľanie údajov.
- Je to koncepčne jednoduché z dôvodu vzťahu medzi rodičom a dieťaťom.
- Vynucuje sa zabezpečenie databázy.
- Efektívne s vzťahmi 1: N.
- Jasná reťaz velenia alebo oprávnenia.
- Zvyšuje špecializáciu.
- Vysoký výkon.
- Jasné výsledky.
Nevýhody hierarchického databázového modelu
- Ak nadradená tabuľka a podradená tabuľka nesúvisia, je ťažké pridať nový záznam do podradenej tabuľky, pretože do nadradenej tabuľky sa musí pridať ďalší záznam.
- Komplexné vzťahy nie sú podporované.
- Redundancia, ktorá vedie k nepresným informáciám.
- Zmena štruktúry vedie k zmene vo všetkých aplikačných programoch.
- Vzťah M: N nie je podporovaný.
- Žiadna manipulácia s údajmi alebo jazyk na definovanie údajov.
- Nedostatok noriem.
- Nízka flexibilita
- Komunikačné bariéry
- Organizačná choroba.
- Pevná štruktúra
Funkcie modelu hierarchickej databázy:
- Mnohé až mnohé vzťahy: Podporuje iba vzájomné vzťahy. Mnohé až mnohé vzťahy nie sú podporované.
- Problém s odstránením: Ak je rodič odstránený, dieťa sa automaticky odstráni.
- Hierarchia údajov: Údaje sú zastúpené v hierarchickej stromovej štruktúre.
- Vzťah rodič - dieťa: Každé dieťa môže mať iba jedného rodiča, ale rodič môže mať viac ako jedno dieťa.
- Ukazovateľ: Ukazovatele sa používajú na prepájanie záznamov, ktoré informujú o tom, kto je rodič a ktorý je detský záznam.
- Vstup a výstup na disk je minimalizovaný: Rodičovské a podradené záznamy sa ukladajú alebo ukladajú blízko seba na úložné zariadenie, čím sa minimalizuje vstup a výstup pevného disku.
- Rýchla navigácia: Keďže rodič a dieťa sú uložené blízko seba, čas prístupu sa skracuje a navigácia sa stáva rýchlejšou.
- Preddefinovaný vzťah: Všetky vzťahy medzi koreňovými, rodičovskými a podradenými uzlami sú preddefinované v schéme databázy.
- Problémy s reorganizáciou : Hierarchia bráni reorganizácii údajov.
- Redundancia: Jeden až veľa vzťahov zvyšuje redundanciu údajov, čo vedie k získaniu nepresných údajov.
Príklady
Zoberme si príklad študentov vysokých škôl, ktorí absolvujú rôzne kurzy. Kurz môže byť priradený iba jednému študentovi, ale študent môže absolvovať toľko kurzov, koľko chce, a to podľa jedného až mnohých vzťahov.
Teraz môžeme reprezentovať vyššie uvedený hierarchický model ako relačné tabuľky, ako je uvedené nižšie:
Študentská tabuľka:
Tabuľka kurzov:
Týmto spôsobom môže byť hierarchický model reprezentovaný v relačných tabuľkách a naopak.
záver
V tomto článku sme podrobne diskutovali hierarchický databázový model, ktorý zobrazuje vzťah rodič-dieťa, čo uľahčuje reprezentáciu údajov a ľahké pochopenie tohto pojmu. Väčšinou sa používal v počítačoch sálových počítačov, stále sa však používa v mnohých oblastiach, v ktorých sú parametre vysokovýkonné a ľahké koncepty. Hierarchický model je teda efektívny pre jeden až veľa vzťahov a je široko používaný pri zaznamenávaní údajov systému súborov.
Odporúčané články
Toto bol návod k modelu hierarchickej databázy. Diskutovali sme tu o základných pojmoch, definícii a výhodách hierarchického databázového modelu. Viac informácií nájdete aj v ďalších navrhovaných článkoch -
- Čo je možné?
- Čo je MySQL databáza
- Je veľká dáta databáza?