Il modello di dati gerarchico è stato il primo modello di database da creare , prima apparizione nel 1966 . E 'stato un miglioramento sui sistemi di file - elaborazione generale perché permette la creazione di relazioni logiche tra le informazioni in un database . Tuttavia, questa struttura ha anche i suoi svantaggi che hanno portato allo sviluppo finale del modello di rete e il modello relazionale . Struttura
La caratteristica principale di un modello di dati gerarchico è la struttura ad albero . Ad esempio, un database aziendale può organizzare con un ramo di personale , seguita da Dipartimenti , Squadre e poi membri del team. Questa struttura padre-figlio è coerente in tutto il database , e ogni segmento bambino può avere un solo segmento di genitore . Ogni segmento , o la registrazione , può avere un numero qualsiasi di elementi di campo che danno informazioni su quel disco . Ad esempio, il record membro del team avrebbe dettagli come nome , supervisore e contatti .
Uno-a -molti e ridondanza
Perché modelli gerarchici non consentono record composito - che è, per una voce per avere più di un genitore - il database ha una relazione uno- a-molti struttura , una società può avere molti reparti , e un reparto può avere molti team leader . Questo può portare alla ridondanza nel modello . Ad esempio , un ramo sotto i membri del team potrebbe essere chiamata progetti in corso. Dal momento che diversi membri del personale possono lavorare su un progetto, le informazioni di progetto deve essere duplicato , che può portare a problemi di coerenza .
Navigazione
Il modello di dati gerarchico è un modello di dati di navigazione , i percorsi di accesso nel modello sono limitati da strutture predeterminate . Per ottenere un record di file specifico , le mosse di query dal segmento principale del database attraverso i rami. Questo va bene se si conosce già la posizione dei record che cercate , ma se si stanno facendo domande esplorative , questo è lento , come il database deve leggere tutti i record di un determinato livello prima di passare a quello successivo .
logiche puntatori Parent
le limitazioni della struttura gerarchica sono un po ' alleviato utilizzando puntatori padre logico . Sviluppato da IBM per il Management Information modello dei dati del sistema , si tratta di creare un nuovo database per le voci che hanno molti-a -molti e che collega i due. Ad esempio , il ramo Progetti in corso avrebbe puntatori che collegano l' utente a un database di progetti separati in cui le informazioni del progetto è contenuta . Questo è simile a come l' Extensible Markup Language opere funzionali IDREF XML .