Universit`a degli Studi di Udine Facolt`a di Medicina e Chirurgia
CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA
Introduzione:
Sistemi Informativi e Basi di Dati
D. Gubiani
11 marzo 2010
D. Gubiani Introduzione alle Basi di Dati 1
Programma del Corso
Introduzione: Sistemi Informativi e Basi di Dati Basi di dati tradizionali:
- modelli dei dati: ER e relazionale - linguaggi di interrogazione: SQL - progettazione
Basi di dati e immagini
D. Gubiani Introduzione alle Basi di Dati 2
Materiale Consigliato
Lucidi del corso
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone. Basi di dati:
modelli e linguaggi di interrogazione (terza edizione).
McGraw-Hill, Milano, 2009
R. Elmasri, S. Navathe. Fundamentals of Database Systems (Fourth Edition ). Pearson/Addison Wesley, 2007
riferimenti vari
D. Gubiani Introduzione alle Basi di Dati 3
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Organizzazioni e Sistemi Informativi - 1
Ogni organizzazione (azienda, ente, ...) `e dotata di un sistema organizzativo
- insieme di risorse e regole per lo svolgimento organizzato delle attivit`a per il raggiungimento del suo scopo
Ogni organizzazione, per poter svolgere le proprie attivit`a, deve disporre di un adeguato insieme di informazioni e deve essere in grado di gestire tali informazioni in modo efficace ed efficiente
Ogni organizzazione `e dotata di un sistema informativo per l’organizzazione e la gestione delle informazioni rilevanti
D. Gubiani Introduzione alle Basi di Dati 4
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Organizzazioni e Sistemi Informativi - 2
D. Gubiani Introduzione alle Basi di Dati 5
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Sistemi Informatici
La porzione automatizzata di un sistema informativo viene in genere indicata con il termine sistema informatico
D. Gubiani Introduzione alle Basi di Dati 6
Vantaggi e Svantaggi dei DBMS
Sistemi Informativi
Il Sistema Informativo di un organizzazione `e l’insieme costituito dall’informazione di interesse dell’organizzazione e dall’apparato
tecnologico ed organizzativo che tale informazione acquisisce, elabora, rende disponibile ed utilizza.
D. Gubiani Introduzione alle Basi di Dati 7
Vantaggi e Svantaggi dei DBMS
Gestione delle Informazioni
La gestione delle informazioni comprende le seguenti operazioni:
- raccogliere, acquisire - archiviare, conservare - elaborare, trasformare, produrre - distribuire, comunicare, scambiare
D. Gubiani Introduzione alle Basi di Dati 8
Vantaggi e Svantaggi dei DBMS
Sistema Informatico e Gestione delle Informazioni
D. Gubiani Introduzione alle Basi di Dati 9
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Informazioni e Dati - 1
Nei sistemi informatici le informazioni vengono rappresentate per mezzo di dati. Per fornire delle informazioni, i dati devono essere interpretati
Definizioni (dal dizionario):
- informazione: notizia, dato o elemento che consente di avere conoscenza pi`u o meno esatta di fatti, situazioni, modi di essere
- dato: ci`o che `e immediatamente presente alla conoscenza, prima di ogni elaborazione; (in informatica) elementi di informazione costituiti da simboli che devono essere elaborati
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Informazioni e Dati - 2
In modo intuitivo, possiamo affermare che i dati da soli non hanno nessun significato; una volta interpretati e
opportunamente correlati forniscono informazione Esempio.Immaginiamo di trovare scritto su un foglio
Rossi 12
(una stringa di caratteri e un numero). Si tratta di dati che di per s`e non forniscono alcuna informazione.
Se essi costituiscono la risposta alle domande: ”Chi `e il paziente a cui deve essere effettuata l’analisi? In quale stanza si trova?”, il loro significato (contenuto informativo) diventa
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Introduzione
L’approccio convenzionale alla gestione dei dati sfrutta gli archivi (o file) per memorizzare i dati in modo persistente in memoria di massa
Problemi:
- i meccanismi per l’accesso e la condivisione dei dati risultano estremamente elementari (limitati)
- le procedure scritte in un linguaggio di programmazione sono fra loro completamente indipendenti (moltiplicazione del codice)
- i dati utilizzati da pi`u procedure vengono replicati, introducendo ridondanze e possibili inconsistenze Le basi di dati sono state concepite per superare questi
Vantaggi e Svantaggi dei DBMS
Basi di Dati e DBMS
Una base di dati `e una collezione di dati utilizzata per rappresentare informazioni di interesse per un dato sistema informativo
- grande, condivisa e persistente
Un sistema di gestione di base di dati (Data Base Management System, abbreviato DBMS) `e un sistema software in grado di gestire basi di dati
- deve assicurare affidabilit`a e privatezza, - deve essere efficiente ed efficace
D. Gubiani Introduzione alle Basi di Dati 13
Vantaggi e Svantaggi dei DBMS
Sistema di Gestione di Basi di Dati - 1
Collezioni di dati grandi, condivise e persistenti:
Grandi: una base di dati pu`o avere dimensioni estremamente elevate, molto grandi rispetto alla memoria centrale
disponibile; il DBMS deve pertanto prevedere una gestione dei dati in memoria secondaria
Condivise: applicazioni e utenti diversi debbono poter accedere, secondo diverse modalit`a, a dati comuni, evitando ridondanze e possibili inconsistenze; il DBMS deve disporre di un meccanismo per il controllo della concorrenza
Persistenti: il tempo di vita dei dati non `e limitato alla sola esecuzione dei programmi che li utilizzano
D. Gubiani Introduzione alle Basi di Dati 14
Vantaggi e Svantaggi dei DBMS
Sistema di Gestione di Basi di Dati - 2
Affidabilit`a e privatezza:
Affidabilit`a: in caso di malfunzionamento, il DBMS deve essere in grado di conservare sostanzalmente intatto il contenuto della base di dati fornendo funzionalit`a di salvataggio e di ripristino
Privatezza: ciascun utente deve essere abilitato a svolgere solo particolari azioni sui dati attraverso meccanismi di gestione delle autorizzazioni/privilegi e/o di controllo degli accessi
D. Gubiani Introduzione alle Basi di Dati 15
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Sistema di Gestione di Basi di Dati - 3
Efficienza ed efficacia:
Efficienza: un DBMS deve essere in grado di svolgere le operazioni richieste utilizzando un insieme di risorse (di spazio e tempo) che sia accettabile per l’utente
Efficacia: un DBMS deve essere in grado di aumentare la produttivit`a dell’organizzazione/degli utenti
D. Gubiani Introduzione alle Basi di Dati 16
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
DBMS Disponibili
Diversi sono i DBMS disponibili:
- Access - Oracle - SQL Server - MySQL - Postgres - ...
D. Gubiani Introduzione alle Basi di Dati 17
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Modelli dei Dati - 1
I dati possono essere rappresentati a livelli di astrazione diversi, mediante l’utilizzo di opportuni modelli dei dati Un modello dei dati `e un insieme di concetti utilizzati per organizzare i dati di interesse e descriverne la struttura in modo che essa risulti adatta alla manipolazione da parte di un dato sistema di elaborazione (modelli concettuali, modelli logici, modelli fisici)
D. Gubiani Introduzione alle Basi di Dati 18
Vantaggi e Svantaggi dei DBMS
Modelli dei Dati - 2
I modelli possono essere di vario tipo:
- modelli concettuali: sono dei modelli utilizzati per descrivere i dati di interesse in modo astratto, preciso e, al tempo stesso, intuitivo; completamente indipendenti dalla scelta del modello logico, vengono utilizzati nell’interazione tra committente e progettista della base di dati
- modelli logici: sono dei modelli dei dati che consentono di interagire (in modo efficiente) con la base di dati ignorando il modo in cui i dati sono fisicamente organizzati
- modelli fisici
D. Gubiani Introduzione alle Basi di Dati 19
Vantaggi e Svantaggi dei DBMS
Modelli Concettuali dei Dati
Non sono supportati dai DBMS
Sono utilizzati nelle prime fasi della progettazione di una base di dati per descrivere la realt`a da modellare
Il modello pi`u utilizzato `e il modello Entit`a-Relazioni, abbreviato ER (di recente, quale possibile alternativa, `e stato proposto l’utilizzo del diagramma delle classi del modello UML); possono essere, e vengono, utilizzati anche modelli orientati agli oggetti
D. Gubiani Introduzione alle Basi di Dati 20
Vantaggi e Svantaggi dei DBMS
Modello Concettuale Entit` a-Relazioni
I costrutti fondamentali del modello ER (due pi`u uno): entit`a e relazioni, pi`u attributi
D. Gubiani Introduzione alle Basi di Dati 21
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Modelli Logici dei Dati
Sono i modelli supportati dai DBMS
Sono utilizzati per l’interfacciamento con la base di dati Il modello pi`u utilizzato `e il modello relazionale, ma esistono anche altri modelli come il modello reticolare, il modello gerarchico e il modello ad oggetti
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Modello Logico Relazionale - 1
Il modello relazionale dei dati `e da tempo il modello pi`u diffuso nell’ambito delle basi di dati
Esso utilizza un singolo costrutto, la relazione, che consente di organizzare i dati in insiemi omogenei di record a struttura fissa
Le relazioni vengono rappresentate mediante tabelle - le righe rappresentano i record
- le colonne definiscono i campi dei record
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Modello Logico Relazionale - 2
Persona CodiceFiscale Nome Cognome
RSSMRC67F78I816L Marco Rossi GLLNNA77G45K456I Anna Gialli VRDNTN56J66G878M Antonio Verdi GRGNTN81I71G987L Antonio Grigio
Auto Targa Marca Modello Proprietario
AG567TR Fiat Brava RSSMRC67F78I816L
TR122YH Opel Vectra GLLNNA77G45K456I
UD444RR Fiat Tipo VRDNTN56J66G878M
PO667TR Renault Clio GLLNNA77G45K456I
Vantaggi e Svantaggi dei DBMS
Modello Logico Relazionale - 3
Persone CodiceFiscale Nome Cognome
RSSMRC67F78I816L Marco Rossi GLLNNA77G45K456I Anna Gialli VRDNTN56J66G878M Antonio Verdi GRGNTN81I71G987L Antonio Grigio
Auto Possiede
Targa Marca Modello Auto Proprietario
AG567TR Fiat Brava AG567TR RSSMRC67F78I816L
TR122YH Opel Vectra TR122YH GLLNNA77G45K456I
UD444RR Fiat Tipo TR122YH VRDNTN56J66G878M
PO667TR Renault Clio UD444RR VRDNTN56J66G878M
PO667TR GLLNNA77G45K456I
D. Gubiani Introduzione alle Basi di Dati 25
Vantaggi e Svantaggi dei DBMS
Schemi e Istanze - 1
La fondamentale distinzione tra schemi e istanze:
Lo schema di una base di dati `e costituito dalle caratteristiche dei dati ed `e sostanzialmente invariante nel tempo
L’istanza (o stato) di una base di dati `e costituita dai valori effettivi ed `e variabile nel tempo
D. Gubiani Introduzione alle Basi di Dati 26
Vantaggi e Svantaggi dei DBMS
Schemi e Istanze - 2
Esempio(modello relazionale). Consideriamo lo schema di una relazione dato dalla sua intestazione (nome + attributi):
Persona (CodiceFiscale, Nome, Cognome) La sua istanza `e costituita da un insieme di righe:
RSSMRC67F78I816L Marco Rossi GLLNNA77G45K456I Anna Gialli VRDNTN56J66G878M Antonio Verdi GRGNTN81I71G987L Antonio Grigio
D. Gubiani Introduzione alle Basi di Dati 27
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Schemi e Istanze - 3
La controparte nel modello ER:
D. Gubiani Introduzione alle Basi di Dati 28
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Livelli di Astrazione - 1
Esiste uno standard per la descrizione di un DBMS a tre diversi livelli di astrazione:
- schema interno: rappresentazione della base di dati per mezzo di strutture fisiche di memorizzazione
- schema logico: descrizione dell’intera base di dati per mezzo del modello logico adottato dal DBMS
- schema esterno: descrizione di porzioni della base di dati di interesse per mezzo del modello logico (definizione di relazioni derivate o viste)
D. Gubiani Introduzione alle Basi di Dati 29
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Livelli di Astrazione - 2
D. Gubiani Introduzione alle Basi di Dati 30
Vantaggi e Svantaggi dei DBMS
Indipendenza dei Dati
L’indipendenza dei dati permette a utenti e programmi applicativi di interagire col DBMS ad un elevato livello di astrazione
Pu`o essere caratterizzata come:
- indipendenza fisica: consente di interagire con il DBMS in modo indipendente dalla struttura fisica dei dati
- indipendenza logica: consente di interagire con il livello esterno della base di dati in modo indipendente dal livello logico
D. Gubiani Introduzione alle Basi di Dati 31
Vantaggi e Svantaggi dei DBMS
Linguaggi per le Basi di Dati - 1
Su un DBMS `e possibile specificare operazioni di vario tipo I linguaggi per basi di dati si suddividono in due categorie:
- linguaggi di definizione, o data definition language (DDL), utilizzati per specificare gli schemi logici (e le autorizzazioni per l’accesso ai dati)
- linguaggi di manipolazione dei dati, o data manipulation language (DML), utilizzati per l’interrogazione e l’aggiornamento delle (istanze di) basi di dati
Alcuni linguaggi, come, ad esempio, SQL, presentano in forma integrata le funzionalit`a di definizione e manipolazione dei dati
D. Gubiani Introduzione alle Basi di Dati 32
Vantaggi e Svantaggi dei DBMS
Linguaggi per le Basi di Dati - 2
I linguaggi per basi di dati possono essere partizionati in due classi sulla base della loro natura:
- dichiarativi, che specificano le propriet`a del risultato (SQL, QBE)
- procedurali, che specificano le modalit`a di generazione del risultato (algebra relazionale)
D. Gubiani Introduzione alle Basi di Dati 33
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Linguaggi per le Basi di Dati - 3
L’accesso ai dati pu`o essere effettuato con varie modalit`a:
- tramite linguaggi testuali interattivi (come SQL)
SELECT Targa FROM Auto
WHERE Proprietario=”GLLNNA77G45K456I”
Targa PO667TR TR122YH
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Linguaggi per Basi di Dati - 4
- tramite comandi simili a quelli dei linguaggi testuali interattivi immersi in linguaggi di programmazione tradizionali (come C, C++, COBOL...), detti linguaggi ospite
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Linguaggi per Basi di Dati - 5
-tramite comandi simili a quelli interattivi immersi in linguaggi ad hoc (utilizzati, ad esempio, per la generazione di maschere)
Vantaggi e Svantaggi dei DBMS
Linguaggi per Basi di Dati - 6
-tramite interfacce amichevoli che permettono di sintetizzare interrogazioni senza usare un linguaggio testuale (come le query by example di Access)
D. Gubiani Introduzione alle Basi di Dati 37
Vantaggi e Svantaggi dei DBMS
Utenti
Varie categorie di persone possono interagire con una base di dati (con un DBMS):
- l’amministratore della base di dati (DBA), la persona o il gruppo di persone responsabili della progettazione e della gestione della base di dati
- i progettisti e programmatori di applicazioni, che specificano e realizzano i programmi per l’interazione con la base di dati - gli utenti, che utilizzano le basi di dati per le proprie attivit`a
D. Gubiani Introduzione alle Basi di Dati 38
Vantaggi e Svantaggi dei DBMS
Vantaggi dei DBMS
forniscono un modello uniforme e formale del dominio di interesse
permettono di gestire i dati come risorsa comune permettono un controllo centralizzato dei dati
permettono di ridurre le ridondanze, e, conseguentemente, le inconsistenze, attraverso la condivisione dei dati
favoriscono lo sviluppo di applicazioni flessibili e facilmente modificabili attraverso l’indipendenza dei dati
D. Gubiani Introduzione alle Basi di Dati 39
Il Corso Introduzione
Sistemi Informativi, Informazioni e Dati Basi di Dati
Modelli dei Dati
Linguaggi e Utenti delle Basi di Dati Vantaggi e Svantaggi dei DBMS
Svantaggi dei DBMS
costi e complessit`a
mettono a disposizione un insieme di servizi integrati non tutti necessari (non `e possibile scorporarli per abbattere i costi)
D. Gubiani Introduzione alle Basi di Dati 40