O bază de date ierarhică este ... Modele, exemple
O bază de date ierarhică este o bază de date bazată pestructura arborelui. Prin principiul construcției, este oarecum similar cu sistemul de fișiere al calculatorului. Utilizarea unui astfel de model are avantajele și dezavantajele sale, care vor fi discutate în acest articol, împreună cu exemple detaliate.
Tipuri de baze de date
După cum știți, există patru tipuri de construcție de baze de date:
- Tabelele relaționale sunt DBMS, unde informațiile sunt reprezentate ca coloane-rând. Prin acest principiu, bazele de date sunt construite în "Accessory", de exemplu.
- Obiect orientat - strâns legat de OOP(Programare, în care lucrăm cu obiecte), iar acest lucru este avantajul lor principal, ci datorită performanțelor lor mici, acestea sunt încă semnificativ mai mici decât în prevalența relațională.
- Hybrid - DBMS, conținând simultan cele două specii menționate mai sus.
- Ierarhic - obiectul atenției acestui articol. Acest DB, caracterizat printr-o structură arborescentă.
Cel mai faimos exemplu de bază ierarhicădatele sunt un produs creat de IBM ("IBE"), numit Sistemul de Management al Informațiilor (tradus ca "Management Information System"), abreviat IMS. Prima versiune a IMS a ieșit în trecut, secolul al XX-lea, în anii șaizeci și opt. Este folosit pentru stocarea și controlul datelor până în prezent.
Principiul construirii unui model ierarhic
Modelul de date ierarhic este construit în conformitate cu următorul principiu:
- pentru fiecare nod al structurii arborilor, un segment este pus în corespondență;
- un segment este înțeles ca câmpuri de date cu un nume atribuit fiecărui câmp și aliniat într-o singură trupă liniară;
- încă un meci: o intrare și mai multe segmente de ieșire pentru fiecare câmp sursă;
- pentru fiecare element structural există un singur loc în sistemul ierarhiei;
- structura copacului începe cu elementul rădăcină;
- fiecare nod subordonat are doar un strămoș, dar fiecare sursă poate avea mai mulți descendenți.
Aplicarea unei structuri ierarhice de date
O bază de date ierarhică este un depozit care este aplicabil acelor sisteme care sunt inițial caracterizate printr-o structură arborescentă. Pentru ei, alegerea unei astfel de simulări este logică.
Un exemplu de bază de date ierarhică de la începutgrade sistematice - unitate militară, în care, după cum știți, rânduri clar definite. Poate fi și mecanisme complexe care constau din tot mai simplificate până la fundul ierarhiei particulelor. Pentru a simula astfel de sisteme și a le aduce în forma bazei de date în cauză, nu este nevoie de descompunere. Cu toate acestea, această situație nu este întotdeauna cazul.
În plus, există o tendință în care o interogare direcționată în jos este mai simplă decât o ascendentă similară.
Operații baze de date bazate pe un model ierarhic
Structura ierarhică a bazei de date permitecu succes și practic fără probleme (în funcție de abilități și abilități) efectuați următoarele operații (sunt prezentate cele mai de bază, lista poate fi întotdeauna extinsă cu adăugiri minore):
- căutați în baza de date a unui element;
- treci prin baza de date - de la copac la copac;
- mișcarea pe un copac - de la ramificație la ramură;
- în consecință, tranziția de-a lungul ramurilor este elementară;
- lucrul cu înregistrări: introducerea unui nou și / sau ștergerea acestuia, copierea, tăierea etc.
Rezumatul structurii
Termenul "copac" pentru a descrie structuradeja menționate în acest articol de mai multe ori. E timpul să-i spuneți de unde provine. Toate deoarece baza de date ierarhică este o astfel de bază de date care utilizează tipul de date "copac". Să analizăm în detaliu ce este el.
Acesta este un tip compus: În fiecare dintre elementele (nodurile) există mai multe (unul sau mai multe). Și totul începe cu un element rădăcină. Linia de jos este că fiecare dintre piesele de tipul "copac" este un subtip, de asemenea un "copac". Multe, multe ramificate și toate structurile ordonate.
Tipurile elementare pot fi simple și complexe, dar, în esență, acestea sunt întotdeauna înregistrări. Dar într-o înregistrare simplă există un tip de date, iar într-un compozit există un întreg set de date.
Modelul ierarhic este specific principiuluidescendenți, atunci când fiecare segment anterior este un strămoș pentru următorul. În plus, un descendent cu privire la tipul său superior este un tip subordonat, în timp ce intrările care sunt echivalente unul cu celălalt sunt considerate gemeni.
Completarea DB
Datele principale ale unei baze de date ierarhice sunt valori (numere sau simboluri) stocate în înregistrări. O astfel de bază de date este de obicei trecută de jos în sus și de la stânga la dreapta.
demnitate
Baza de date ierarhică este cea care are rădăcinadosar de baze de date, ramificând treptat. Având în vedere că o astfel de structură este foarte asemănătoare cu sistemul de fișiere, astfel de baze de date sunt utilizate cu succes pentru a efectua diverse operații pe date de calculator. Rezultatul: o distribuție rațională a memoriei ei, precum și indicatori foarte decenti ai timpului petrecut la locul de muncă.
Modelul ierarhic este ideal pentru a fi aplicat informațiilor comandate.
deficiențe
Cu toate acestea, aceleași caracteristici ale sistemului DBMS luat în considerare,care au devenit principalele lor avantaje, determină, de asemenea, deficiențele acestora. De exemplu, complexitatea și complexitatea conexiunilor logice - va fi dificil pentru un specialist experimentat să lucreze cu o bază necunoscută anterior și un simplu utilizator se va "pierde" în el. Această complexitate a înțelegerii conduce la faptul că nu multe DBMS-uri sunt de fapt construite pe un model ierarhic. Un exemplu de bază de date ierarhică este, pe lângă produsul deja descris de IBEEM, Oka și MIRIS (realizat în Rusia), precum și Data Edge și Team-UP (de la corporații străine).
exemple
Baza de date ierarhică este o varietateniveluri diferite pe care sunt construite relațiile. Schematic, arata ca un grafic inversat. Un exemplu de bază de date ierarhică este orice instituție administrativă a statului. Luați, să zicem, școala.
La cel mai înalt nivel va fi localizat"Conducătorul" administrației este directorul. În subordinea sa sunt cadrele didactice, directorii sunt profesorii, care supraveghează paralelele clasei. Fiecare paralel un număr nelimitat de ele, și fiecare clasă are un anumit număr de studenți.
Prin același principiu pot fi pictate șimanagementul oricărei corporații. Șeful companiei sau chiar consiliul de administrație se află la vârf. Apoi - un număr tot mai mare de unități, fiecare având structura proprie. Există trăsături comune: șeful fiecărui departament, asistentul său, secretarul, personalul de la birou și așa mai departe.
Cerere de calculator
Pot exista aplicații mai serioase. Un prim exemplu de bază de date ierarhică este sistemul de fișiere. Familiar "Explorer" este construit pentru toată lumea în centrul de bază a sistemului de operare "Windows" doar în conformitate cu această schemă, la fel ca mulți alți administratori de fișiere.
Baze de date de rețea
Există:
- relațională;
- ierarhică;
- baze de date de rețea.
De ce ne-am amintit din nou clasificarea? Deoarece, spre deosebire de baza de date relațională, există caracteristici ierarhice similare.
Este timpul să vă amintiți tipurile de relații din bazele de date. Există link-uri unu-la-unul, la mulți și multe-la-multe. Suntem interesați de aceasta din urmă. Într-o bază de date de rețea se manifestă după cum urmează: un singur nod moștenitor poate avea mai mulți strămoși odată. Se păstrează și proprietatea de a avea mai mulți descendenți. Se poate spune că bazele de date ierarhice, bazele de date ale rețelelor reprezintă un exemplu de astfel de moștenire. În acest caz, strămoșul este tocmai baza de date ierarhică, deoarece principiul construirii structurii în bazele de date de rețea rămâne același.
Ierarhia și relaționalitatea
Numele "relațional" vine de la limba englezăcuvintele "atitudine". După cum sa menționat la începutul articolului, acestea sunt adesea exprimate în tabel. Dar în paragraful anterior am indicat că o bază de date ierarhică poate organiza și conexiuni, înseamnă că există un fel de fir subțire care le unește între aceste două tipuri?
Da. În plus față de faptul că atât primul, cât și al doilea tip se referă încă la baze de date, pe lângă această caracteristică, există o proprietate mai comună. De exemplu, o bază de date ierarhică (și una de rețea împreună cu ea) poate fi exprimată într-un tabel. Punctul nu are forma de prezentare a informațiilor către utilizatorul final (aceasta este deja o chestiune a utilizabilității interfeței), dar pe ce bază a fost structurată informația. Deci, o diviziune clară în departamente cu capul, diviziunea și alte lucruri vor continua să fie exprimate în ierarhie, dar pentru comoditate, sunt enumerate în tabel.