Model ierarhic

Din punct de vedere istoric, modelul ierarhic a apărut în fața rețelei. Este cel mai simplu dintre toate modelele de date. Cel mai cunoscut sistem ierarhic care permite crearea de baze de date ierarhice este sistemul de management al informațiilor al IBM (IMS), utilizat în timp pentru a susține proiectul lunar Apollo. Apariția unui model ierarhic se datorează faptului că în lumea reală, foarte multe legături corespund unei ierarhii, atunci când un obiect acționează ca un părinte și multe obiecte subordonate pot fi asociate cu acesta.







Principalele unități de informații din modelul ierarhic sunt. baza de date (DB), segmentul și câmpul. Câmpul de date este definit ca o unitate minimă, indivizibilă de date aflată la dispoziția utilizatorului cu ajutorul DBMS. Se selectează și tipul câmpului. care este o colecție de câmpuri de același tip. Un segment constă din instanțe specifice de câmpuri. Tipul unui segment este colecția tipurilor de câmpuri. Modelul ierarhic este un grafic nedirecționat cu segmentele (sau tipurile de segmente) din noduri. Particularitatea acestui model este că fiecare segment nu poate avea mai mult de un strămoș, un număr arbitrar de descendenți și cel puțin un câmp. Un segment care nu are descendenți se numește un segment de frunze. Un arbore ierarhic începe cu un segment, numit segmentul rădăcină. Este foarte important ca fiecare segment să aibă propriul său nume sau identificator unic.

Figura 1.1 prezintă schematic o structură ierarhică. Nodurile (segmentele) sunt conectate între ele prin conectarea arcurilor. Segmentul A este segmentul rădăcină. Segmentele B, E, H, J, I sunt segmente de frunze. Fiecare segment, în acest caz, poate conține un număr arbitrar de câmpuri.







Pentru un model de date ierarhic, se disting două instrumente lingvistice:

· Limba descrierii datelor

· Limba de modificare a datelor

Descrierea bazei de date implică descrierea tuturor segmentelor sale și stabilirea de legături între ele.

Figura 1.1. Structura ierarhică

Un exemplu de structură ierarhică. Modelul ierarhic este destul de convenabil pentru a reprezenta ariile de subiect, deoarece relațiile ierarhice sunt destul de des întâlnite între entitățile lumii reale. Dar modelul ierarhic nu suportă relații multe-la-multe, atunci când un set de obiecte de același tip sunt asociate cu un set de obiecte de alt tip. Să presupunem că este necesar să construim un model al relației dintre multitudinea de proprietari și o multitudine de apartamente. Dacă întrebarea principală este de a determina ce fel de locuință este deținută de unul sau de altul proprietar, atunci este firesc să se ia ca noduri părinte date despre proprietar. În acest caz, fiecare segment - proprietarul va fi asociat cu N noduri - apartamente. Astfel, de către proprietar vom găsi cu ușurință toate apartamentele aflate în proprietatea sa. Cu toate acestea, problema este că unul și același apartament poate avea mai mulți proprietari. Ie același apartament poate fi găsit în copaci diferiți. Ca urmare a rezolvării unor astfel de probleme cum ar fi obținerea unei liste a tuturor apartamentelor sau obținerea tuturor proprietarilor unui anumit apartament, acestea nu vor fi atât de evidente. În plus, chiar și operația de înlăturare a unui anumit apartament din baza de date pare complicată, deoarece toți copacii trebuie să fie examinați pentru aceasta. Puteți, desigur, să construiți arbori paralele în care segmentele părinte sunt date de apartament, iar segmentele generate sunt date de proprietar, dar, ca rezultat, vom obține mai multe date de redundanță, ceea ce va da naștere la o problemă suplimentară a coerenței lor.

Unitatea de bază de procesare în modelul ierarhic este segmentul. Segmentele pot fi folosite astfel încât să rețină, să modifice, să șterge, să extragă, să găsească. Funcționarea căutării este redusă la una dintre procedurile posibile pentru traversarea arborelui. Bazele de date ierarhice suportă de obicei o regulă: niciun segment nu poate exista fără părinte (cu excepția segmentului rădăcină). Astfel de reguli, susținute de DBMS, se numesc constrângeri de integritate.







Articole similare

Trimiteți-le prietenilor: