Informatica - DBMS
Il DBMS (DataBase
Management System) è il software che consente di costruire e gestire una base
di dati, realizzandola nella pratica su memoria di massa, a partire da un
progetto e da uno schema dei dati definiti a livello concettuale e tradotto poi
in un modello logico dei dati. Il DBMS costituisce quindi un'interfaccia tra
gli utenti di un database con le loro applicazioni e le risorse costituite
dall'hardware e dagli archivi di dati presenti in un sistema di elaborazione.
I principali compiti svolti da un DBMS sono:
1. Manipolazioni e interrogazioni mediante:
-
Inserimento,
modifica e cancellazione dei dati nel database;
-
Interfaccia tra i
programmi degli utenti e la base di dati, utilizzando le funzionalità del DBMS
per migliorare l'organizzazione dei dati e le prestazioni dei programmi nelle
operazioni di ritrovamento dei dati;
-
Accesso ai dati
attraverso interfacce grafiche o semplici comandi che facilitano l'utente non
specialista;
2. L'implementazione del modello logico sul sistema di
elaborazione mediante:
- La definizione
dei dati e delle strutture dati derivate dallo schema logico (tipicamente le
tabelle del modello relazionale) e della relativa documentazione;
- La definizione
dei sottoschemi (viste logiche), che consentono agli utenti di accedere ai soli
dati che servono. Una vista è una tabella virtuale, mentre le tabelle del
database sono indicate come tabelle primarie;
3. Sicurezza e protezione dei dati:
-
Contro
i danni causati da malfunzionamenti o da interventi dolosi;
-
Protezione
da eventuali danneggiamenti con la possibilità di attivare procedure di
recovery;
-
Autorizzazione
degli utenti che accedono alla base di dati e protezione dagli accessi non
autorizzati;
-
Controllo
degli accessi simultanei da parte di più utenti;
4. Supporto alle transazioni garantendo che tutte le
operazioni di una transazione siano completate correttamente oppure che non ne
sia eseguita alcuna. Una transazione consiste in un insieme di operazioni di
interrogazione o di modifica del
database che devono essere eseguite come se fossero un'unica operazione.
5. Controllo di integrità sui dati in relazione ai valori
che possono assumere e alle interdipendenze tra dati di differenti tabelle.
6. Ottimizzazione delle prestazioni mediante:
- Ottimizzazione
della memoria di massa occupata e dei tempi di accesso ai dati;
-
Implementazione
di strategie per ottimizzare le interrogazioni
minimizzando i tempi di risposta o, più in
generale, i costi dell'interrogazione.
Inoltre, i DBMS
dispongono spesso di componenti specializzate nella produzione di report; in
pratica, si tratta di applicazioni specializzate per presentare i dati estratti
da un database in un formato comodo per la lettura da parte di una specifica
categoria di utenti.
Un DBMS
gestisce anche il dizionario dei dati (o catalogo del database). Il dizionario
contiene i metadati, cioè i dati che descrivono i dati contenuti nel database,
come nomi delle tabelle, associazioni, vincoli di integrità ecc...
Commenti
Posta un commento