Modelul ierarhic de date - stadopedia

Un model de date ierarhic este cel mai simplu dintre toate modelele datum. Din punct de vedere istoric, a fost primul dintre toate modelele datalogice: acest model este susținut de primul IBM IMS industrial înregistrat.







Apariția unui model ierarhic se datorează faptului că în lumea reală, foarte multe linkuri corespund unei ierarhii când un obiect acționează ca un părinte și multe obiecte subordonate pot fi asociate cu acesta. Ierarhia este simplă și naturală în cartografierea relației dintre clasele de obiecte.

Segmentul din punct de vedere al Asociatiei Americane pentru DBTG (Baza de date Task Group) Bazele de date numit un record, în același timp, ca parte a unui model ierarhic definit două concepte: tipul de segment sau de tipul de înregistrare și o copie a unui segment sau o copie a înregistrării.

Un tip de segment este o colecție numită de tipuri de elemente de date care sunt incluse în acesta. O instanță a unui segment este formată din valorile specifice ale câmpurilor sau elementelor de date care sunt incluse în acesta. Fiecare tip de segment dintr-un model ierarhic formează un set de înregistrări omogene. Pentru a putea distinge înregistrările individuale într-un set dat, fiecare tip de segment trebuie să aibă o cheie sau un set de atribute cheie (câmpuri, elemente de date). O cheie este un set de elemente de date care identifică în mod unic o instanță a unui segment. De exemplu, având în vedere tipul de segment care descrie angajatul organizației, trebuie să evidențiem acele caracteristici ale angajatului care o pot identifica în mod unic în baza de date a întreprinderii. Presupunând că omologii pot lucra la întreprindere, este probabil cel mai de încredere identificarea angajatului prin numărul său. Cu toate acestea, dacă construim o bază de date care conține o descriere a unei mulțimi de cetățeni, de exemplu, țara noastră, atunci cel mai probabil va trebui să alegem un set de câmpuri care să reflecte datele pașaportului ca o cheie.

În modelul ierarhic al segmentelor împreună în grafic orientate spre copac. Se crede că marginile graficelor îndreptate reprezintă relațiile ierarhice dintre segmente: segmentul de fiecare instanță, în picioare ierarhia și conectat cu acest tip de segment corespunde cu multiple (multiple) copii ale (slave) de tip segment. tip de segment, situat la un nivel mai înalt în ierarhia se numește o sursă de logică în ceea ce privește tipurile de segmente conectate la aceste destinații margini ierarhice, care, la rândul lor, sunt numite în mod logic subordonate tipului de segment. Uneori segmentele sursă sunt numite segment strămoși și segmentele subordonate se numește un segment descendenți.

Modelul ierarhic de date - stadopedia

Fig. 3.1 Exemplu de legături ierarhice între segmente

La nivel conceptual, conceptul de schemă DB este definit în terminologia modelului ierarhic.

Schema de bază de date ierarhică este o colecție de arbori individuali, fiecare arbore din cadrul modelului fiind numit o bază de date fizică. Fiecare bază de date fizică satisface următoarele constrângeri ierarhice:

  • în fiecare bază de date fizică există un segment rădăcină, adică un segment care nu are un segment de tip logic inițial (de tip parental);
  • fiecare segment logic inițial poate fi asociat cu un număr arbitrar de segmente subordonate logic;
  • fiecare segment logic subordonat poate fi asociat cu un singur segment logic inițial (părinte).

Este foarte important să înțelegem diferența dintre tipul segmentului și segment - este același ca și între tipul de variabilă și variabila însăși: segmentul este o instanță a tipului de segment. De exemplu, putem avea tipul segmentului Group (Number, Starosta) și segmente de acest tip, cum ar fi (4305, Petrov FI) sau (383, Kustova TS).







Există, de asemenea, legături ierarhice între instanțele de segmente. Luați în considerare, de exemplu, graficul ierarhic prezentat în Fig. 3.2.

Modelul ierarhic de date - stadopedia

Fig. 3.2 Exemplu de structură ierarhică de arbori

Fiecare tip de segment poate avea un număr de instanțe corespunzătoare. Există, de asemenea, legături ierarhice între instanțele de segmente.

În Fig. 3.3 două copii ale arborelui ierarhic al corespondentului

Modelul ierarhic de date - stadopedia

Fig. Exemplu de două copii ale acestui arbore

Instanțele de același tip care sunt asociate cu o instanță a segmentului strămoșilor se numesc "gemeni". Deci, pentru exemplul nostru, instanțele b1, b2 și b3 sunt "gemeni". dar instanța lui b4 este subordonată unei alte instanțe a segmentului părinte și nu este o "gemene" în ceea ce privește instanțele b1, b2 și b3. Un set de toate instanțele de segmente care sunt subordonate unei instanțe a segmentului rădăcină se numește înregistrare fizică. Numărul instanțelor copil poate fi diferit pentru diferitele instanțe ale segmentelor părinte, astfel încât, în general, înregistrările fizice au lungimi diferite. Astfel, folosind principiul înregistrării liniare a grafurilor ierarhice, exemplul din figura 3.3 poate fi reprezentat sub forma a două înregistrări:

Modelul ierarhic de date - stadopedia

După cum puteți vedea din exemplul nostru, înregistrările fizice din modelul ierarhic diferă în funcție de lungime și structură.

Limba de descriere a datelor pentru modelul ierarhic

În cadrul modelului ierarhic, se disting instrumentele de limbaj pentru descrierea datelor (DDL, Data Definition Language) și instrumentele de manipulare a datelor (DML, Data Manipulation Language).

Fiecare bază de date fizică este descrisă de un set de operatori care definesc atât structura sa logică, cât și structura de stocare a bazei de date. Descrierea începe cu operatorul DBD (Data Base Definition):

Numele DBD = <имя БД>, ACCESS = <способ доступа>

Metoda de acces determină modul de organizare a relației dintre înregistrările fizice. Definit 5 metode de acces: HSAM - Metoda ierarhică acces secvențial (metoda secvențială ierarhică), Hisam - metoda de acces secvențial index ierarhică (metoda secvențială ierarhică indexata), EDAM - metoda de acces direct ierarhică (metoda directă ierarhică), HID AM - indicele ierarhică directă metoda de acces (metoda directă ierarhică indexate), indicele - metoda indicelui.

Următoarea este o descriere a seturilor de date destinate stocării bazei de date:

Setul de date D01 = <имя оператора, определяющего хранимый набор данных>.

DEVICE =<устройство хранения БД>,

[OVFLW = <имя области переполнения>]

Deoarece înregistrările fizice au lungimi diferite, atunci cu modificarea datelor, înregistrarea poate crește și depăși lungimea recordului original înainte de modificare. În acest caz, spațiul de stocare suplimentar poate fi necesar pentru anumite metode de stocare, unde vor fi plasate date suplimentare. Acest spațiu se numește zona de suprapunere.

După descrierea întregii baze de date fizice, este descrisă o descriere a tipurilor de segmente care o compun, în conformitate cu ierarhia. Descrierea segmentelor începe întotdeauna cu descrierea segmentului rădăcină. Schema generală pentru descrierea tipului de segment este următoarea:

SEGM NAME = <имя сегмента>. OBIECTE =<размер в байтах>.

FREQ = <средняя частота реализаций сегмента под одним исходным>

PARENT = <имя родительского сегмента>

Parametrul FREQ specifică numărul mediu de instanțe ale acestui segment asociat cu o instanță a segmentului părinte. Pentru segmentul rădăcină, acesta este numărul de instanțe posibile ale segmentului rădăcină.

Pentru segmentul rădăcină, parametrul PARENT este 0 (zero). Apoi, pentru fiecare segment, este dată o descriere a câmpurilor:

START = <номер байта, с которого начинается значения поля>,

OBIECTE = <размер поля в байтах>,

Atributul SEQ este specificat pentru câmpul cheie dacă instanțele acestui segment sunt ordonate fizic în conformitate cu valorile acestui câmp.

Parametrul U este setat dacă valorile câmpului cheie sunt unice pentru toate instanțele acestui segment, M este altfel. În cazul în care câmpul este cheia, descrierea este dată în paranteze, în caz contrar, numele câmpului este specificat fără paranteze. Parametrul TYPE specifică tipul de date. Pentru modelele ierarhice timpurii sunt doar trei tipuri de date au fost definite: X - shestpadtsaterichiy P -upakovanny zecimale, C - caractere.

Descrierea circuitului se termină prin apelarea procedurii de generare:

  • DBDGEN - indică sfârșitul secvenței operatorilor de control al descrierii bazei de date;
  • FINISH - stabilește un cod de ieșire diferit de zero când se detectează o eroare;
  • END - sfârșitul.

Pot exista mai multe baze de date fizice în sistem, dar fiecare dintre ele este descrisă separat de către DBD și i se atribuie un nume unic. Fiecare FWA conține un singur segment rădăcină. Colecția FWA formează un model de date conceptual.







Articole similare

Trimiteți-le prietenilor: