UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE DELLA COMUNICAZIONE MASTER UNIVERSITARIO DI I LIVELLO - COMUNICAZIONE e DIVULGAZIONE SCIENTIFICA Direttore del Master: Ch.mo Prof. Franco Eugeni Tesi: Il Mondo dei Database Candidata: Relatore: Dott.ssa Cirillo Marianna Prof. Ferdinando Casolaro
Che cosè un database? Definizione Un database (o base di dati) è un archivio elettronico che può contenere una immensa quantità di dati, o informazioni, e le procedure necessarie per la loro elaborazione
Diffusione dei database Conti correnti bancari Anagrafe dei clienti
Diffusione dei database Sistemi di immagazzinamento nei supermercati
Diffusione dei database Sistemi di prenotazione delle linee aeree Sistemi di prenotazione delle linee aeree
Interrogativi: A cosa si ispira questa tecnologia? A cosa si ispira questa tecnologia? A cosa si ispira questa tecnologia? A cosa si ispira questa tecnologia? Comè organizzato e strutturato un database? Comè organizzato e strutturato un database? Comè organizzato e strutturato un database? Comè organizzato e strutturato un database? Quali problemi sono stati affrontati? Quali problemi sono stati affrontati? Quali problemi sono stati affrontati? Quali problemi sono stati affrontati? Qual è la realtà attuale e quali gli sviluppi futuri? Qual è la realtà attuale e quali gli sviluppi futuri? Qual è la realtà attuale e quali gli sviluppi futuri? Qual è la realtà attuale e quali gli sviluppi futuri?
Cosa cè dietro questa tecnologia? Cosa cè dietro questa tecnologia? A cosa è ispirata? A cosa è ispirata?
Cammino Storico Già i popoli antichi usavano archiviare i loro cittadini
Cammino Storico Gli Assiri sulle loro tavolette;
Cammino Storico Gli Incas, pur non ammettendo la scrittura, usavano un sistema di nodi;
Cammino Storico Per i Romani il Tabularium conservava gli archivi di tutto limpero
Cammino Storico Archiviare ha come fine ottenere più Archiviare ha come fine ottenere più tasse tasse
Cammino Storico Censimento come strumento per larchiviazione
Influenza governativa Prime macchina scheda perforatrice
Comè organizzato un database? Comè organizzato un database?
Database : un insieme di informazioni ORGANIZZATE e GESTIBILI da un sistema automatico
Esempio: Rubrica telefonica
Notiamo come in questo caso le informazioni sono già organizzate. In generale ogni informazione deve essere organizzata, memorizzata, catalogata
I dati organizzati confluiscono nei file del Database
Database Relazionale: Il più diffuso modello di database Costituito da Tabelle
Tabella E un contenitore di informazioni organizzate per colonne, dette campi e per righe, dette record. Campo: categoria di informazioni Campo: categoria di informazioni Record: insieme di informazioni relative alloggetto rappresentato nella tabella Record: insieme di informazioni relative alloggetto rappresentato nella tabella
Tabella Dalla rubrica precedente: Dalla rubrica precedente:
Database Esempio: Costruiamo un database per una raccolta di videocassette
Database Database VideoCassette: Informazioni da conservare: Nome del film Nome del film Regista Regista Attore Attore ….. ….. Se abbiamo prestato a qualcuno la videocassetta Se abbiamo prestato a qualcuno la videocassetta
Tabella VideoCassette Contiene tutte le informazioni relative a ciascuna videocassetta
Quali problemi nascono? Quali problemi nascono?
Database VideoCassette Primo problema: Troppe informazioni in ununica tabella!!! Primo problema: Troppe informazioni in ununica tabella!!! Difficile da consultare e utilizzare
Database VideoCassette Primo problema: Troppe informazioni in ununica tabella!!! Primo problema: Troppe informazioni in ununica tabella!!! Tipi di dati che ci interessano: –Dati della cassetta –Dati delle persone che lavorano nel film –Dati degli amici ai quali potremmo prestare la videocassetta
Database VideoCassette Secondo problema: Ridondanza dei dati Secondo problema: Ridondanza dei dati Potrebbe capitare di dover inserire più volte lo stesso attore che ha interpretato più di un film, o più volte il nome, e i corrispondenti dati, di qualche amico a cui abbiamo prestato più di un film.
Database VideoCassette Terzo problema: Inconsistenza dei dati Terzo problema: Inconsistenza dei dati La ridondanza di un dato può portare ad errori nella modifica di dati correlati, ad esempio dovendo modificare il numero di telefono di un amico ripetuto più volte nella tabella, potrebbe capitare di non modificare in tutte le occorrenze il numero e ciò implica un inconsistenza del database
Database VideoCassette Creiamo non una ma più di una tabella in relazione tra loro, nel nostro esempio 3: Creiamo non una ma più di una tabella in relazione tra loro, nel nostro esempio 3: »Tabella Cassette »Tabella Personaggi »Tabella Amici Soluzione:
Tabella Cassette
Tabella Personaggi
Tabella Amici
Database Relazionale Semplice Risolve i problemi di: Semplice Risolve i problemi di: Ridondanza Ridondanza Consistenza Consistenza
Chi aiuta gli utenti nellorganizzazione di un database? Chi aiuta gli utenti nellorganizzazione di un database? Come e dove vengono memorizzati fisicamente i dati? Come e dove vengono memorizzati fisicamente i dati? La risposta è DBMS (DataBase Management System)
Un DBMS è un sistema per la gestione delle basi di dati. E uno strato software che si frappone tra lutente e i dati veri e propri. DBMS
DBMS Livello Fisico : lorganizzazione interna dei dati dal punto di vista fisico; scrittura, lettura, sistemi di accesso ai dispositivi hardware. Livello Fisico : lorganizzazione interna dei dati dal punto di vista fisico; scrittura, lettura, sistemi di accesso ai dispositivi hardware. Livello Logico : lorganizzazione dei dati dal punto di vista del loro contenuto informativo Livello Logico : lorganizzazione dei dati dal punto di vista del loro contenuto informativo Livello Esterno : i dati descritti o visualizzati da un utilizzatore. Livello Esterno : i dati descritti o visualizzati da un utilizzatore. Il DBMS permette una distinzione tra
DBMS Amministratore del sistema: responsabile della creazione, gestione e manutenzione del livello logico e fisico del database Amministratore del sistema: responsabile della creazione, gestione e manutenzione del livello logico e fisico del database Programmatore: utilizzatore del database che implementa le applicazioni di uso e manutenzione, sotto la supervisione dellamministratore Programmatore: utilizzatore del database che implementa le applicazioni di uso e manutenzione, sotto la supervisione dellamministratore Utente Finale: coloro che utilizzano gli strumenti creati dalle due figure precedenti Utente Finale: coloro che utilizzano gli strumenti creati dalle due figure precedenti Questo sarà di conforto alla maggior parte degli uditori che sono semplici utenti finali!! Ecco le figure che si alternano intorno a un database:
DBMS Tra i più noti DBMS cè Access della Microsoft
DBMS Garantisce il buon funzionamento del database Garantisce il buon funzionamento del database Assicura laffidabilità, capacità del sistema di preservare il database dai malfunzionamenti, quindi la sua integrità Assicura laffidabilità, capacità del sistema di preservare il database dai malfunzionamenti, quindi la sua integritàaffidabilità Assicura la privatezza, permettendo laccesso solo agli utenti autorizzati Assicura la privatezza, permettendo laccesso solo agli utenti autorizzati
SQL (Structured Quey Language) Uno dei requisiti fondamentali per utilizzare un database è avere un linguaggio che ci permetta di manipolarlo e interrogarlo in modo opportuno. SQL, tramite le Query (domande), ci permette di creare, modificare, cancellare, manipolare, interrogare i dati contenuti nel database
Qual è la realtà attuale e quali gli sviluppi futuri? Qual è la realtà attuale e quali gli sviluppi futuri?
Realtà Attuale La possibilità di elaborare i dati è una delle caratteristiche più importanti dei database. E possibile oggi mettere in relazione dati di varia natura e provenienti da diverse fonti, per ottenerne tutte le possibili e inusuali rielaborazioni e valutazioni. Si tratta di estrapolare informazioni di varia natura dai dati immagazzinati. Questo è eseguito dai sistemi detti Datawarehouse. La possibilità di elaborare i dati è una delle caratteristiche più importanti dei database. E possibile oggi mettere in relazione dati di varia natura e provenienti da diverse fonti, per ottenerne tutte le possibili e inusuali rielaborazioni e valutazioni. Si tratta di estrapolare informazioni di varia natura dai dati immagazzinati. Questo è eseguito dai sistemi detti Datawarehouse.
Realtà Attuale Database Distribuiti: è la possibilità di vedere come un unico database più database che risiedono su computer differenti, anche remoti, lavorandoci come se fosse il proprio computer. Database Distribuiti: è la possibilità di vedere come un unico database più database che risiedono su computer differenti, anche remoti, lavorandoci come se fosse il proprio computer. Internet: spesso le pagine che noi vediamo non sono statiche ma vengono create dinamicamente attingendo i dati da un database, e spesso Internet si appoggia sulle capacità di protezione dei database. Internet: spesso le pagine che noi vediamo non sono statiche ma vengono create dinamicamente attingendo i dati da un database, e spesso Internet si appoggia sulle capacità di protezione dei database.
Evoluzione I database evolvono di pari passo con lo sviluppo delle tecnologie informatiche. Avremo sempre più sicurezza, velocità, tecnologia e potenza.
Comunicare nel senso esteso di scambiare informazioni. I database forniscono informazioni sui dati memorizzati. La comunicazione avviene anche attraverso luso dei database.
Affidabilità di un Database Risolvere problemi legati a: Recupero dai malfunzionamenti Recupero dai malfunzionamenti Recupero dai malfunzionamenti Recupero dai malfunzionamenti Accesso concorrente Accesso concorrente Accesso concorrente Accesso concorrente
Affidabilità di un Database Recupero vuol dire Ripristinare un database dopo un errore grave del sistema. E necessario attuare 2 politiche: BackUp dei dati sistematico ed affidabile, per permettere una ricostruzione completa del sistema dopo BackUp dei dati sistematico ed affidabile, per permettere una ricostruzione completa del sistema dopo Uso delle transazioni, per recuperare da errori immediati. Consiste nella capacità del sistema di effettuare le operazioni a blocchi, in modo che se non si riesce ad eseguire tutto un blocco di operazioni, allora queste saranno annullate per tutto il blocco corrente. Uso delle transazioni, per recuperare da errori immediati. Consiste nella capacità del sistema di effettuare le operazioni a blocchi, in modo che se non si riesce ad eseguire tutto un blocco di operazioni, allora queste saranno annullate per tutto il blocco corrente.
Affidabilità di un Database Il controllo della concorrenza si occupa della gestione degli aggiornamenti e modifiche dei dati da parte di molti utenti contemporaneamente, tramite il meccanismo del blocco dei dati: si pone un blocco esclusivo per un certo numero di dati da parte di un unico utente, così che gli altri non potranno modificare i record bloccati evitando di creare confusione ed errori per la sovrapposizione di modifiche.