Concetti Chiave
- Un DBMS è un insieme di strumenti software che gestisce i database permettendone la creazione, ricerca e aggiornamento, garantendo persistenza, consistenza, privacy e sicurezza dei dati.
- I DBMS supportano transazioni con operazioni di commit e rollback per garantire l'integrità dei dati anche in caso di crash del sistema.
- Il sistema di astrazione del DBMS è organizzato su tre livelli: esterno (interazione con l'utente), logico (struttura globale del database) e fisico (memorizzazione dei dati).
- Il livello esterno consente agli utenti di interagire con viste autorizzate del database, utilizzando il DML per manipolare i dati.
- Il livello fisico riguarda come i dati sono memorizzati su supporti fisici, ottimizzando l'efficienza e mantenendo la trasparenza per l'utente.
DBMS: Database Management System
Un DBMS consiste nell’insieme degli strumenti software in grado di gestire i database. Essi dunque ne permettono la generazione, la ricerca e l’aggiornamento.I database sono degli oggetti statici e i DBMS sono il sistema attivo. All’interno di un sistema reale biblioteca, per esempio, i database possono essere visti come gli armadi o i libri della biblioteca, mentre i DBMS possono essere visti come la bibliotecaria che ne lavora all’interno.
Esso ha varie funzioni:
1) gestisce i database: permette di creare, inserire, aggiornare e interrogare tramite un’interfaccia (softwaristi e utenti).
2) garantisce persistenza (con back-up e restore) e consistenza (concorrenza).
3) garantisce privacy e sicurezza: permette l’accesso solo ad utenti autorizzati e lo blocca a coloro che non hanno il permesso di visualizzare certi dati.
4) integrità dei dati: valori e vincoli (che possono essere anche posti dall’utente stesso).
5) gestisce il dizionario dei dati: i metadati sono le informazioni che descrivono gli oggetti del database ed essi sono organizzati in tabelle.
6) supporta le transazioni: sono operazioni composte (con commit e rollback). Se durante una transazione il sistema va in crash, si ha un black-out. Con il rollback il DBMS si accorge che qualcosa è andato storto e riporta la situazione al punto di recupero, in modo da perdere meno dati possibile. Con il commit una transazione è arrivata al termine e dunque non c’è stato nessun crash e nessun dato è andato perduto.
Livelli di astrazione DBMS
Organizzazione a tre livelli, mantenuti separati:-esterno: si occupa dell’interazione con l’utente con vista sui dati e strumenti di modifica.
-logico: si occupa dello schema logico e dello schema interno del DBMS.
-fisico: è il sistema operativo che si occupa della memorizzazione dei dati.
Livello esterno:
L’utente vede solo ciò che il database administrator (DBA) lo ha autorizzato a vedere, ossia solo la vista.
Una vista è l’astrazione di una parte del database concettuale che coinvolge i dati dell’istanza del database limitatamente alla porzione interessata o consentita.
Il DML è un database manipulation language, il quale consente di interrogare, inserire, modificare e cancellare il database.
Livello logico
Si occupa della struttura globale del database, rappresentandola in maniera astratta.Il DDLè un data definition language, il quale descrive le caratteristiche delle categorie di dati.
Il DCL è un data control language, il quale di occupa del controllo degli accessi e permessi.
Livello fisico
Come i dati sono memorizzati sui supporti fisici.Il DMCL è un device media control language,nel quale l’efficienza del database dipende dal grado di ottimizzazione nell’organizzazione dei dati in questo livello. Inoltre esso è trasparente per l’utente.
Domande da interrogazione
- Qual è il ruolo principale di un DBMS?
- Come sono organizzati i livelli di astrazione in un DBMS?
- Quali sono le funzioni del livello esterno di un DBMS?
- In che modo il livello fisico di un DBMS influisce sull'efficienza del database?
Un DBMS gestisce i database, permettendo la creazione, l'inserimento, l'aggiornamento e l'interrogazione dei dati tramite un'interfaccia, garantendo persistenza, consistenza, privacy, sicurezza e integrità dei dati.
I livelli di astrazione in un DBMS sono organizzati in tre livelli separati: esterno, logico e fisico, ciascuno con funzioni specifiche per l'interazione con l'utente, la struttura del database e la memorizzazione dei dati.
Il livello esterno si occupa dell'interazione con l'utente, mostrando solo la vista autorizzata dal database administrator e permettendo operazioni di interrogazione, inserimento, modifica e cancellazione tramite il DML.
L'efficienza del database al livello fisico dipende dall'ottimizzazione dell'organizzazione dei dati sui supporti fisici, gestita dal DMCL, ed è trasparente per l'utente.