Modello gerarchico

Da Wikipedia, l'enciclopedia libera.

In informatica il modello di database gerarchico è stato storicamente il primo modello di database ad affermarsi sul mercato.

Descrizione[modifica | modifica wikitesto]

Il modello di database gerarchico prevede che i dati siano organizzati secondo strutture ad albero, che si suppone riflettano una gerarchia esistente tra le entità (un esempio di entità è l'entità "Fornitori") che appartengono al database. Ogni albero è formato da un unico record radice (detto anche segmento o padre) e da un insieme di uno o più sotto-alberi dipendenti da esso, costruiti in modo simile.

Ciascuna struttura ad albero costituisce, quindi, un insieme organizzato di segmenti o rami strutturati del database, in forma gerarchica. Al livello più alto (la radice della struttura ad albero) può apparire solo una tipologia di entità (ad esempio "Fornitore X"). Tutte le altre tipologie di entità, possono avere un solo "padre", mentre il numero dei "figli" è variabile.

Il modello gerarchico consente di rappresentare informazioni usando la relazione tra segmenti "padre" e segmenti "figli": ogni padre può avere molti figli, ma ogni figlio può avere un solo padre. In questo caso si parla di relazioni 1:N, chiamate anche relazioni uno-a-molti.

Per fare un esempio di modello gerarchico, prendiamo un'organizzazione con un archivio di dipendenti memorizzati in una tabella chiamata appunto "Dipendenti". Nella tabella si trovano attributi come Nome, Cognome, Sesso, Livello, Reparto. Immaginiamo che l'organizzazione abbia dati sui figli dei dipendenti, memorizzati in una tabella "Figli" con attributi come Nome, Cognome, Sesso, Data di nascita. La tabella Dipendenti rappresenta il segmento padre e la tabella Figli il segmento figlio. I due segmenti formano una gerarchia dove un impiegato può avere diversi figli, mentre un figlio può avere un solo padre.

Un altro esempio di modello gerarchico è dato dai file system attualmente in uso sulla totalità dei computer presenti in aziende, uffici e abitazioni.

Il modello gerarchico era ampiamente usato nei primi DBMS per mainframe, mentre successivamente i DBMS gerarchici sono stati sostituiti dai DBMS reticolari e in seguito da quelli relazionali chiamati anche RDBMS. Le relazioni di tipo gerarchico rendono molto semplice rispondere alle interrogazioni quando la realtà rappresentata è appunto gerarchica, ma molto difficile rispondere quando le relazioni rappresentate sono di tipo molti-a-molti (ad esempio nel caso classico di fornitori che vendono diversi prodotti e prodotti venduti da diversi fornitori).

Limiti[modifica | modifica wikitesto]

-Per utilizzare questo modello lo schema logico deve essere ad albero. Quindi per fare certi collegamenti si facevano duplicazioni d’informazioni (rischio di molte ridondanze in associazioni M-N).

-Per cambiare lo schema logico, e quindi il DB, si deve fermare tutto e leggere e riscrivere tutta la base dati (ha scarsa indipendenza logica).

-Per fare schemi esterni devo prevedere tutta la radice e tutto il percorso che lo porta dalla radice al segmento che ci interessa.

Altri progetti[modifica | modifica wikitesto]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica