Modello dei dati

Il modello dei dati è un'insieme di costrutti e algoritmi finalizzati a organizzare i dati e descrivere la struttura dei dati in un DBMS (Database Management System).

I modelli logici e concettuali

Le principali tipologie di modelli dei dati sono

  • I modelli logici
    Rappresentano i dati tramite algoritmi indipendenti dalle strutture fisiche dei dati. Utilizzano strutture astratte che riflettono una particolare struttura logica ad albero, grafi, tabelle o oggetti. Sono i più diffusi in ambito commerciale.
  • I modelli concettuali
    Descrivono i dati tramite concetti del mondo reale. I dati sono descritti in modo indipendente dal modello logico. I modello concettuali sono attualmente usati al momento della progettazione della base di dati. Uno dei più affermati è il modello entità-relazione.

In questa pagina mi focalizzo prevalentemente sui modelli logici.

I modelli logici

L'architettura di un DBMS basato sui modelli logici è caratterizzato dalla separazione tra lo schema logico (modello) e lo schema fisico.

Lo schema logico è indipendente da quello fisico.

C'è anche un ulteriore schema esterno usato dagli utenti.

Anche lo schema esterno e lo schema logico sono separati tra loro.

l'architettura di un DBMS con il modello logico

  • Lo schema logico descrive la base dati usando il modello logico del DBMS: modello relazionale, gerarchico, reticolare o a oggetto.
  • Lo schema fisico (o schema interno) rappresenta lo schema logico tramite strutture fisiche di memorizzazione (es. file sequenziali, file hash, file a indici, ecc.).
  • Lo schema esterno organizza lo schema logico per consentire ad alcuni utenti di accedere soltanto ai dati cui sono autorizzati. Di fatto lo schema esterno crea diversi schemi logici tramite le viste (views) assegnati a diversi gruppi di utenti in base al livello di autorizzazione. Tramite le viste gli utenti sono autorizzati a vedere soltanto alcuni dati dello schema logico ma non tutti.

Esempio. In un DBMS esistono più schemi esterni associati allo schema logico. Ogni schema esterno è assegnato a gruppi di utenti per consentire loro di accedere ad alcuni dati ma non ad altri. Ad esempio, gli utenti dell'ufficio commerciale (schema esterno 1) accedono ai dati relativi alle vendite e ordini. Gli utent dell'ufficio del personale (schema esterno 2) accedono ai dati relativi ai dipendenti e stipendi. Lo schema esterno più ampio è quello dell'amministratore della base dati che vede tutto.

Questa struttura a livelli permette l'indipendenza dei dati dagli utenti e dalle applicazioni che li utilizzano.

  • Indipendenza fisica
    La struttura fisica dei dati è indipendente da quella logica.

    Esempio. Posso modificare l'allocazione fisica dei dati del DBMS senza modificare i programmi che li utilizzano.

  • Indipendenza logica
    Il livello più esterno usato dagli utenti e dalle applicazioni è indipendente dalla struttura logica del DBMS.

    Esempio. Posso creare uno schema esterno per limitare l'accesso alla base dati a un gruppo di utenti, senza modificare lo schema logico dei dati nel DBMS. E viceversa, posso modificare lo schema logico dei dati senza modificare i programmi esterni che li utilizzano.

Tipi di modelli logici

Esistono diversi modelli di dati. Il più diffuso è il modello relazionale.

  • Modello gerarchico
    Si basa su una struttura ad albero. Ideato negli anni '60 nei primi DBMS. E' ancora usato.
  • Modello reticolare
    Si basa su una struttura a record e puntatori e sull'uso dei grafi. Ideato negli anni '60-70 dopo il modello gerarchico. E' anche conosciuto come CODASYL.
  • Modello relazionale
    Si basa sulla relazione matematica. Ideato negli anni '70 da Edgar Cood e diffuso negli anni '80-90. Attualmente è il modello più diffuso nei DBMS.
  • Modello a oggetti
    Si basa sullo stesso paradigma della programmazione a oggetto (OOP). Ideato negli anni '80. Nasce come evoluzione del modello relazionale.
  • Modello XML
    E' un modello auto-descrittivo e semi-strutturato. I dati sono presentati insieme alla descrizione. Non sottostanno rigidamente a una struttura logica. Ideato negli anni '90. E' simile al modello gerarchico.

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Basi di dati