uni
Una Base di Dati è il cuore di un sistema informativo automatizzato, cioè un insieme organizzato di dati utilizzati per rappresentare le informazioni di interesse.
Un Database è l’insieme di dati gestito da un DBMS.

I Database hanno:

  • dimensioni enormi, molto maggiori della memoria centrale del sistema di calcolo utilizzato.
  • tempo di vita indipendente dalle singole esecuzioni dei programmi che lo utilizzano (persistenza dei dati): i dati rimangono salvati in modo permanente finché non vengono modificati o cancellati.
  • diverse tipologie di informazioni e diversi utenti: ogni utente ha diverse autorizzazioni (es. uno studente può vedere i voti ma non modificarli).

Una base di dati è una risorsa integrata, condivisa fra applicazioni e quindi necessita di meccanismi di autorizzazione e controllo della concorrenza e dell’incoerenza.

Il linguaggio usato per interagire con i database è l’SQL.

Problemi della condivisione

I possibili problemi possono essere:

  • ripetizione di informazioni
  • rischio di incoerenza
  • cattiva gestione dello spazio di archiviazione

Privacy di un Database

Un database è una risorsa integrata, condivisa fra applicazioni. Servono meccanismi di autorizzazione e Gestione della Concorrenza.
Si possono definire meccanismi di autorizzazione, ovvero privilegi diversi per utenti diversi.

Affidabilità di un Database

Un Database deve essere resistente a malfunzionamenti hardware e software. Un Database è una risorsa pregiata e quindi deve essere conservata a lungo termine.

Serve una gestione delle transazioni: una transazione è un insieme di operazioni da considerare indivisibile (atomico), corretto anche in presenza di concorrenza e con effetti definitivi.
Le transazioni sono atomiche e devono funzionare correttamente anche in presenza di concorrenza.

I risultati di una transazione conclusa positivamente devono essere permanenti e corrisponde ad un impegno (commit) a mantenere traccia del risultato in modo definitivo, anche in presenza di guasti e/o di esecuzione concorrente.

Efficienza di un Database

I database devono cercare di utilizzare al meglio le risorse di spazio di memoria, principale e secondaria, e tempo, di esecuzione e di risposta.
Minore efficienza di un Database porta ad affrontare spese più grandi per maggiore spazio di archiviazione o a esperienze di utilizzo peggiori.
Qui è quindi di grande importanza l’Ottimizzazione delle Interrogazioni.