
I database relazionali e gerarchici sono due dei tipi più comuni di database.
I database sono programmi per computer che memorizzano dati o "record". Ancora più importante, descrivono anche come tali dati si riferiscono ad altri dati nel database. Esistono molti tipi diversi di database, inclusi gerarchici, di rete, relazionali e orientati agli oggetti. Servono tutti a scopi diversi e consentono di descrivere i propri record in modi diversi.
Database gerarchici
I database gerarchici sono alcuni dei tipi di database più vecchi e più semplici. Organizzano i dati in una struttura ad "albero", che è simile a cartelle e file su un computer. Proprio come un file su un computer si trova in una cartella, ogni record nel database ha un "genitore". I dati disposti gerarchicamente sono spesso descritti come aventi solo relazioni padre/figlio.
Video del giorno
Problemi con i database Heirachical
Mentre il modello gerarchico è adatto per strutture semplici, è facile vedere come potrebbero sorgere problemi, poiché ogni "figlio" può avere un solo "genitore". Se il database conteneva i nomi dei genitori effettivi e dei loro figli all'interno di un'azienda, non saresti in grado di descrivere il fatto che entrambi i genitori di un solo figlio lavorassero per quella società. Nel linguaggio dei database, questa sarebbe una relazione "molti a uno" (o "molti a molti" se è coinvolto più di un bambino) e i database gerarchici non li descrivono bene.
Database relazionali
I database relazionali non hanno problemi con le relazioni molti a uno o molti a molti. I loro record sono costruiti come più "tabelle", piuttosto che come strutture ad albero, e ogni record su una tabella ha un identificatore univoco. Un'azienda potrebbe quindi avere una tabella con i nomi di tutti i genitori, una tabella con i nomi di tutti i figli e ogni record della tabella padre potrebbe avere una relazione con uno (o più, o nessuno) dei record univoci nella tabella figlio: tale relazione è "è il genitore di". La capacità di registrare tali relazioni è ciò che conferisce ai database relazionali il loro nome.
Vantaggi dei database relazionali
I database relazionali prevengono gli errori consentendo l'applicazione di un record a un numero qualsiasi di altre tabelle. Un record figlio potrebbe essere utilizzato in una relazione "è figlio di" e lo stesso record potrebbe essere indicato in una tabella di "bambini che partecipano il picnic aziendale." Impedendo la duplicazione, le stesse informazioni possono essere utilizzate in molti modi diversi, senza alterare accidentalmente un disco.
Inoltre, i database relazionali sono molto utili per fornire altri tipi di dati nascosti nei record, utilizzando query scritte in Structured Query Language o SQL. Ciò consente di esplorare il database in modi non immediatamente evidenti, come trovare tutti i bambini di una certa età o tutti i genitori con tre o più figli.
Utilizzo di database gerarchici
Potrebbe sembrare che i database relazionali siano superiori a quelli gerarchici, ed è vero che sono più flessibili. Ma tale flessibilità non è sempre necessaria per ogni database. Le biblioteche utilizzano database gerarchici per registrare i loro libri, poiché il sistema Dewey Decimal è di natura gerarchica. Un elenco di numeri di telefono di contatto potrebbe essere perfettamente servito da un database gerarchico. Un database è uno strumento e lo strumento giusto per il lavoro dipende dal lavoro da svolgere.