Cos'è l'Indipendenza Programma-Dati e i Metadati?
L'indipendenza programma-dati si riferisce alla capacità di lasciare i dati intatti e accessibili indipendentemente dalle modifiche al database che li contiene. L'indipendenza permette agli amministratori di database di riorganizzare un database per soddisfare nuove esigenze informative aziendali senza preoccuparsi che chi ha bisogno dei dati per ricerca, report e decisioni informate non possa più accedervi. I metadati forniscono agli amministratori informazioni sul database management system (DBMS) stesso, aiutandoli a mantenere l'integrità dei dati e monitorare le prestazioni.
Schema Database
Gli schemi di database sono progetti per database, articolando come i dati sono memorizzati in un DBMS e descrivendo le relazioni tra le tabelle. Uno schema fisico spiega come i dati sono memorizzati nel computer, descrivendo l'hardware usato come storage per i dati digitali. Lo schema logico descrive come i dati sono organizzati nel database, fornendo dettagli come quali tabelle sono usate per dati specifici e quali valori sono usati come chiavi primarie per stabilire relazioni tra tabelle.
Indipendenza dei Dati
Ci sono due livelli gerarchici di indipendenza programma-dati, ciascuno che assicura che integrità e accessibilità dei dati siano preservate nonostante cambiamenti allo schema fisico o logico. L'indipendenza fisica è il livello inferiore e si riferisce alla capacità di aggiornare l'hardware per lo storage senza interrompere lo schema logico o la capacità dell'utente finale di accedere ai dati tramite applicazioni. Similmente, l'indipendenza logica dà libertà agli amministratori di modificare lo schema logico, aggiungere tabelle o appendere campi a quelle esistenti, senza interrompere l'accesso degli utenti finali ai dati DBMS.
Metadati
I metadati sono dati che descrivono i dati in un database. In un DBMS tipico includerebbero dati su tabelle e colonne, descrivendo attributi come nomi tabelle/colonne, dimensioni campi e tipo dati (stringhe, interi, valute) che ogni campo contiene. I metadati articolano anche le relazioni tra tabelle e le regole del database per accesso e preservazione integrità.
Dizionario Dati
Il dizionario dati di un database è il suo deposito di metadati, consolidando tutti i dati sullo schema. Il dizionario memorizza i metadati nel suo set di tabelle, che un amministratore crea con un data definition language (DDL). Il DDL non è un linguaggio come SQL o Java; è un sottoinsieme di comandi che permette di creare e modificare oggetti database come tabelle. Oltre ai dati sulla struttura, il dizionario contiene info su procedure database e permessi accesso utenti. Questo repository aiuta a preservare l'integrità impedendo agli utenti di creare oggetti che duplicano nomi o chiavi primarie che violerebbero l'integrità relazionale.