ORGANIZZAZIONE DEGLI ARCHIVI E BASI DI DATI
Archivi tradizionali
Un file (archivio) è una raccolta di record logici.
La gestione dei file è un servizio reso dal Sistema Operativo.
Ogni record logico contiene una sequenza di bit ed è suddiviso in campi. Ogni campo contiene una
differente informazione.
Su questi file esistono meccanismi per l’inserimento, la cancellazione, la modifica e la ricerca dei dati.
Organizzazioni dei file:
-
Sequenziale: I record sono letti o scritti uno dopo l'altro. Inserimento, cancellazione e modifica di un file sequenziale presentano problemi, in quanto richiedono di norma lo spostamento di tutti i record che seguono il punto di intervento.
-
Ad accesso diretto: L’allocazione dei record in memoria di massa è definita da un algoritmo che genera un indirizzo a partire dal valore assunto da un campo del record detto chiave. Il vantaggio delle strutture ad accesso diretto è la rapidità della ricerca: in assenza di conflitti ogni ricerca richiede una sola operazione di ingresso/uscita.
-
A indice: In queste strutture, come in quelle ad accesso diretto, è il valore di un campo chiave che determina il record a cui accedere. La corrispondenza fra la chiave e l’indirizzo è mantenuta esplicitamente mediante un file ausiliario detto file indice. Su uno stesso archivio è possibile avere diversi file indice relativi a chiavi diverse.
.
Le basi di dati sono sorte alla fine degli anni ’60. Prima i sistemi informativi si basavano sull’uso di files separati.
I programmi applicativi accedevano ai files individualmente, utilizzando procedure del Sistema Operativo.
L’accesso ai files tradizionali comportava una serie di problemi:
-
Ridondanza: informazioni ripetute
-
Incongruenza: le modifiche non sempre vengono apportate in tutti gli archivi dove compaiono le stesse informazioni
-
Inconsistenza: se ad esempio uno stesso articolo si ritrova con marche diverse quale sarà quella giusta?
-
Dipendenza dei programmi dai dati: se cambia il tracciato record o la cartella di un archivio devo cambiare l’applicativo
-
Difficoltà nel gestire l’integrità dei dati: va scritto codice ad hoc nell'applicativo
-
Difficoltà nel gestire la concorrenza: in un file condiviso se due utenti tentano la modifica, si possono generare informazioni non corrette
-
Limitata sicurezza e privatezza: non tutti gli utenti hanno stessi permessi sui dati e la privatezza dei dati è limitata perché gestita solo dal sistema operativo
-
Scarsa protezione dei dati da guasti accidentali
Questi inconvenienti si possono superare se tutti i dati vengono organizzati in una base di dati e gestiti da un DBMS (Data Base Management System).
.