Fondamenti di Informatica Sistemi di Elaborazione delle Informazioni Informatica Applicata 1.1 Introduzione alle basi di dati Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE LINGUISTICO FILOLOGICHE E GEOGRAFICHE 1.1 Introduzione alle basi di dati* • • Il concetto di base di dati Il concetto di sistema di gestione di dati * Le slide sulle basi di dati sono tratte dal corso di “Basi di dati” tenuto dal prof. Lenzerini nel corso di Laurea in Ingegneria Informatica Antonella Poggi Pagina 2 Importanza delle basi di dati • Applicazioni che sono usate da tutti, tutti i giorni – – – – gestione conto corrente acquisto prodotti online prenotazione biglietti aerei ... • Sono diventate uno dei principali driver delle imprese medio/grandi per essere competitive sul mercato... Antonella Poggi Pagina 3 Un esempio “famoso” Antonella Poggi Pagina 4 Risorse di una organizzazione • le risorse di una organizzazione: – persone – denaro – materiali – dati e informazioni (sistema informativo) • funzioni di un sistema informativo – raccolta, acquisizione delle informazioni – archiviazione, conservazione delle informazioni – elaborazione delle informazioni – distribuzione, scambio di informazioni – il concetto di “sistema informativo” è indipendente da qualsiasi forma di automatizzazione Antonella Poggi Pagina 5 Sistema informatico • porzione automatizzata del sistema informativo • il sistema informatico è la parte del sistema informativo che gestisce informazioni per mezzo della tecnologia informatica Istituzione Sistema organizzativo Sistema informativo Sistema informatico Basi di dati Antonella Poggi Pagina 6 Base di dati Collezione di dati in memoria secondaria gestita da un apposito sistema software, chiamato DBMS (Data Base Management Systems, o Sistema di Gestione di Basi di Dati). Antonella Poggi Pagina 7 Nuova architettura del sistema informatico Applicazione 1 Archivio 1 Applicazione N Archivio N Applicazione 1 Applicazione N Antonella Poggi Base di dati Situazione pre-DBMS (anni 60-70) Situazione post-DBMS Pagina 8 Esempio: nuova architettura del sistema informatico Orario lezioni Archivio lezioni Gestione esami Archivio esami Orario lezioni Gestione esami Antonella Poggi Base di dati Situazione pre-DBMS (anni 60-70) Situazione post-DBMS Pagina 9 Confronto con fogli elettronici • In una prima approssimazione, una base di dati (relazionale) permette di immagazinare, gestire e analizzare collezioni di dati rappresentate sotto forma di tabelle.... • Ci sono però delle profonde differenze tra una base di dati ed un foglio elettronico, che rendono opportuno l’utilizzo di uno strumento piuttosto che dell’altro – – – – – Capacità di memorizzazione Strumenti di ricerca Condivisione tra applicazioni Strumenti di analisi dei dati ... Antonella Poggi Pagina 10 1.1 Introduzione alle basi di dati • • Antonella Poggi Il concetto di base di dati Il concetto di sistema di gestione di dati Pagina 11 Sistema di gestione di basi di dati Data Base Management System — DBMS Sistema (prodotto software) in grado di gestire collezioni di dati che siano (anche): • grandi (di dimensioni molto maggiori della memoria centrale dei sistemi di calcolo utilizzati normalmente) • persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano) • condivise (utilizzate da applicazioni diverse) garantendo: • • • • affidabilità (resistenza a malfunzionamenti hardware e software) privatezza (con una disciplina e un controllo degli accessi), efficienza (utilizzare al meglio le risorse di spazio e tempo del sistema) efficacia (rendere produttive le attività dei suoi utilizzatori). • Ogni DBMS è basato su un modello dei dati, ovvero insieme di costrutti utilizzati per organizzare i dati di interesse e descriverne le operazioni. Noi ci riferiremo al modello relazionale, basato sulla nozione di relazione. Antonella Poggi Pagina 12 Un pò di storia • Inizio anni ’60: Charles Bachman (General Electric) progetta il primo DBMS (Integrated Data Store), basato sul modello reticolare. Bachman vincerà il primo ACM Turing Award nel 1973. • Fine anni ’60: l’IBM sviluppa l’Information Management System (IMS), basato sul modello gerarchico e usato tutt’oggi. • 1970: Edgar Codd (IBM) propone il modello relazionale. Codd vincerà l’ACM Turing Award nel 1981. • Anni ’80: il modello relazionale vince sugli altri, e i DBMS basati su tale modello si diffondono. Il linguaggio SQL viene standardizzato come linguaggio per DBMS basati sul modello relazionale. • Anni ’90: sulla spinta di intense ricerche, i DBMS relazionali divengono sempre più sofisticati e diffusi (DB2, Oracle, Informix, ecc.). Nel 1999 James Gray vince l’ACM Turing Award per il suo contributo alla gestione delle transazioni. • Anni 2000: i DBMS si integrano con il contesto generale dello sviluppo del software e con strumenti WEB. Antonella Poggi Pagina 13