1 Base di dati Insieme organizzato di dati utilizzati per lo svolgimento delle attività di un ente,...
-
Upload
italian-and-spanish-name-derived-from-th -
Category
Documents
-
view
213 -
download
0
Transcript of 1 Base di dati Insieme organizzato di dati utilizzati per lo svolgimento delle attività di un ente,...
1
Base di dati
Insieme organizzato di dati utilizzati per lo svolgimento delle attività di un ente, azienda, ufficio, persona
Es.: elenchi telefonici, elenco degli iscritti a una facoltà universitaria e gli esiti dei loro esami, elenco dei libri di una biblioteca, elenco dei reparti e dei pazienti di una struttura ospedaliera, ecc.
Campionato di calcio
Partita Risultato Data Ora Stadio
Parma-Empoli - 18-01-03 18:00 Ennio Tardini Reggina-Bologna - 18-01-03 20:30 Oreste Granillo Atalanta-Roma - 19-01-03 15:00 Atleti Azzurri D'I talia Lazio-Udinese - 19-01-03 15:00 Olimpico Milan-Piacenza - 19-01-03 15:00 Giuseppe Meazza Modena-Brescia - 19-01-03 15:00 Alberto Braglia Perugia-Inter - 19-01-03 15:00 Renato Curi Torino-Como - 19-01-03 15:00 Delle Alpi Chievo-J uventus - 19-01-03 20:30 Marc'Antonio Bentegodi
Squadra Punti Giocate V N P GF GS MG MI
Inter 36 16 11 3 2 33 16 +17 +3
Milan 36 16 11 3 2 32 10 +22 +2
Lazio 33 16 9 6 1 31 15 +16 +1
Chievo 32 16 10 2 4 27 13 +14 -3
J uventus 32 16 9 5 2 28 12 +16 -1
Bologna 27 16 7 6 3 19 13 +6 -7
Udinese 26 16 7 5 4 15 14 +1 -10
Parma 23 16 6 5 5 27 19 +8 -12
Roma 23 16 6 5 5 27 23 +4 -12
Empoli 22 16 6 4 6 24 22 +2 -14
Modena 19 16 6 1 9 12 24 -12 -17
Perugia 19 16 5 4 7 18 23 -5 -16
Brescia 17 16 4 5 7 19 26 -7 -19
Piacenza 13 16 3 4 9 13 24 -11 -25
Atalanta 11 16 2 5 9 15 28 -13 -26
Reggina 10 16 2 4 10 13 32 -19 -29
Torino 9 16 2 3 11 9 30 -21 -29
Como 6 16 0 6 10 9 27 -18 -31
3
Biblioteca
4
Punti di vista
Contesto
5
Sistema azienda
Sistema azienda
Sistema organizzativo
Sistema informativo
Sistema informatico
6
Sistema organizzativo
insieme di risorse e regole per lo svolgimento coordinato delle attività al fine del perseguimento degli scopi dell‘azienda
le risorse di una azienda (o amministrazione): persone denaro materiali informazioni ....
7
Sistema informativo
Componente (sottosistema) di una organizzazione che gestisce (acquisisce, elabora, conserva, produce) le informazioni di interesse (cioè utilizzate per il perseguimento degli scopi dell’organizzazione ) il sistema informativo è parte del sistema
organizzativo il sistema informativo esegue/gestisce processi
informativi (cioè i processi che coinvolgono informazioni)
8
Sistemi informativi e automazione
Il concetto di “sistema informativo” è indipendente da qualsiasi automatizzazione esistono organizzazioni la cui ragion d’essere è
la gestione di informazioni (per es. servizi anagrafici e banche) e che operano da secoli.
9
Sistema Informatico
Porzione automatizzata del sistema informativo: la parte del sistema informativo che gestisce informazioni con tecnologia informatica
Anche prima di essere automatizzati, molti sistemi informativi si sono evoluti verso una razionalizzazione e standardizzazione delle procedure e dell’organizzazione delle informazioni
10
11
Ferie
12
13
15
16
17
18
19
20
21
22
23
24
25
26
Gestione delle informazioni
Raccolta, acquisizione Archiviazione, conservazione Elaborazione, trasformazione,
produzione Distribuzione, comunicazione,
scambio
27
Gestione delle informazioni
Nelle attività umane, le informazioni vengono gestite (registrate e scambiate) in forme diverse: idee informali linguaggio naturale (scritto o parlato, formale o
colloquiale, in una lingua o in un’altra) disegni, grafici, schemi numeri e codici
e su vari supporti memoria umana, carta, dispositivi elettronici
28
Gestione delle informazioni
Nelle attività standardizzate dei sistemi informativi complessi, sono state introdotte col tempo forme di organizzazione e codifica delle informazioni
Ad esempio, nei servizi anagrafici si è iniziato con registrazioni discorsive e poi nome e cognome estremi anagrafici codice fiscale
29
Informazioni e dati
Nei sistemi informatici (e non solo), le informazioni vengono rappresentate in modo essenziale, spartano: attraverso i dati
Dal Vocabolario della lingua italiana (1987)informazione: notizia, dato o elemento che consente di avere
conoscenza più o meno esatta di fatti, situazioni, modi di essere.
dato: ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione; (in informatica) elementi di informazione costituiti da simboli che debbono essere elaborati.
30
31
32
Base di dati
Accezione generica, metodologica: insieme organizzato di dati utilizzati per il supporto allo svolgimento delle attività di un ente (azienda, ufficio, persona)
Accezione specifica,, metodologica e tecnologica:) insieme di dati gestito da un DBMS.
33
Sistema di gestione di basi di datiDataBase Management System (DBMS)
Sistema che gestisce collezioni di dati: grandi persistenti condivise
garantendo privatezza affidabilità efficienza efficacia
34
DBMS
Prodotti software (complessi) disponibili sul mercato; esempi: Access DB2 Oracle Informix Sybase SQLServer MySQL
35
Le basi di dati sono ... grandi
dimensioni molto maggiori della memoria centrale (RAM) dei sistemi di calcolo utilizzati
sono memorizzate in memoria secondaria (hard disk, nastri, dischi, DVD, floppy, ecc.)
il limite è solo quello fisico dei dispositivi e dei supporti
36
Le basi di dati sono ... persistenti
hanno un tempo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano
37
Le basi di dati sono ... condivise
Ogni organizzazione (specie se grande) è divisa in settori o comunque svolge diverse attività
Ciascun settore/attività ha un (sotto)sistema informativo che interagisce con gli altri settori
38
Problemi
Ridondanza: informazioni ripetute
Rischio di incoerenza: le versioni possono non coincidere in seguito ad
aggiornamenti
39
Archivi e basi di dati
Gestione ricevimento
Archivio 2:ricevimento
Gestione orario lezioni
Archivio 1:orario lezioni
40
Archivi e basi di dati
Gestione ricevimento
Gestione orario lezioni
Base di dati
41
Le basi di dati sono condivise
Una base di dati e' una risorsa integrata, condivisa fra applicazioni
Conseguenze: Attivita' diverse su dati condivisi:
meccanismi di autorizzazione Accessi di più utenti ai dati condivisi:
controllo della concorrenza degli accessi
42
I DBMS garantiscono ... privatezza
Si possono definire meccanismi di autorizzazione l'utente A è autorizzato a leggere tutti i dati e a
modificare solo quelli sull‘iscrizione
43
I DBMS garantiscono... affidabilità
Affidabilità (per le basi di dati): resistenza a malfunzionamenti hardware e
software
Una base di dati è una risorsa pregiata e quindi deve essere possibile conservarla a lungo termine
44
I DBMS debbono essere...efficienti
Cercano di utilizzando al meglio le risorse di spazio di memoria (principale e secondaria) e tempo (di esecuzione e di risposta)
I DBMS, con tante funzioni, rischiano l'inefficienza e per questo ci sono grandi investimenti e competizione sul mercato software
45
46
47
48
Descrizione dei dati nei DBMS
Descrizioni e rappresentazioni dei dati a livelli diversi permettono l’indipendenza dei dati dalla
rappresentazione fisica:
- i programmi fanno riferimento alla struttura a livello più alto,
- le rappresentazioni sottostanti possono essere modificate senza necessità di modifica dei programmi
49
Modello dei dati
insieme di costrutti utilizzati per organizzare i dati di interesse e descriverne la dinamica
componente fondamentale: meccanismi di strutturazione (o costruttori di tipo)
come nei linguaggi di programmazione esistono meccanismi che permettono di definire nuovi tipi, così ogni modello dei dati prevede alcuni costruttori
Il modello relazionale prevede il costruttore relazione, che permette di organizzare i dati come insiemi record omogenei a struttura fissa.
50
Orario
Insegnamento Docente Aula Ora
Analisi matem. I Luigi Neri N1 8:00
Basi di dati Piero Rossi N2 9:45
Chimica Nicola Mori N1 9:45
Fisica I Mario Bruni N1 11:45
Fisica II Mario Bruni N3 9:45
Sistemi inform. Piero Rossi N3 8:00
Basi di dati: schema e istanza
51
Schemi e istanze
In ogni base di dati esistono: lo schema, sostanzialmente invariante nel
tempo, che ne descrive la struttura nell’esempio, le intestazioni delle tabelle
l’istanza, i valori attuali, che possono cambiare anche molto rapidamente nell’esempio, il “corpo” di ciascuna tabella.
52
Due tipi principali di modelli
modelli concettuali: permettono di rappresentare i dati in modo indipendente da ogni sistema e da ogni modello logico cercano di descrivere i concetti del mondo reale sono utilizzati nelle fasi preliminari di progettazione di
basi di datiil più noto è il modello Entity-Relationship
modelli logici: utilizzati nei DBMS esistenti per l’organizzazione dei dati utilizzati dai programmi indipendenti dalle strutture fisiche
esempi: relazionale, reticolare, gerarchico, a oggetti.
53
Livelli di astrazione
schema logico: descrizione dell’intera base di dati nel modello logico adottato dal DBMS (ad esempio, la struttura delle tabelle)
schema fisico: rappresentazione dello schema logico per mezzo di strutture fisiche di memorizzazione su supporto informatico (es. files)
schema esterno: descrizione di parte della base di dati in un modello logico (“viste” parziali, derivate, anche ev. in modelli diversi)
Una vista
Corso AulaDocente
RossiBasi di dati DS3
BruniReti N3
NeriSistemi N3
BruniControlli G
Corsi
Nome PianoEdificio
OMIDS1 Terra
PincherleG Primo
OMIN3 Terra
Aule
CorsiSedi Corso Aula
Reti N3
Sistemi N3
Controlli G
PianoEdificio
OMI Terra
Pincherle Primo
OMI Terra
55
Architettura DBMS
56
Indipendenza fisica
il livello logico è indipendente da quello fisico una relazione è utilizzata nello stesso modo
qualunque sia la sua realizzazione fisica la realizzazione fisica può cambiare senza che
debbano essere modificati i programmi che utilizzano la base di dati
57
Indipendenza logica
il livello esterno è indipendente da quello logico
aggiunte o modifiche alle viste non richiedono modifiche al livello logico
modifiche allo schema logico che lascino inalterato lo schema esterno sono trasparenti
58
Linguaggi per basi di dati
Un altro contributo all’efficacia: disponibilità di vari linguaggi e interfacce diverse che permettono l'accesso ai dati con varie modalità: linguaggi testuali interattivi (SQL) tramite comandi (come quelli del linguaggio interattivo) immersi in
linguaggi di programmazione tradizionale (linguaggio ospite, es. Pascal, C, Cobol, etc.)
tramite comandi (come quelli del linguaggio interattivo) immersi in un linguaggio ad hoc, con anche altre funzionalità (p.es. per grafici o stampe strutturate), anche con l’ausilio di strumenti di sviluppo (p. es. per la gestione di maschere)
con interfacce amichevoli che permettono di realizzare le operazioni sulla base dati senza usare un linguaggio testuale
59
SQL, un linguaggio interattivo
"Trovare i corsi tenuti in aule a piano terra"
Nome PianoEdificio
OMIDS1 Terra
PincherleG Primo
OMIN3 Terra
Aule
RossiBasi di dati DS3
BruniReti N3
NeriSistemi N3
BruniControlli G
Corsi
AulaDocenteCorso
60
SQL, un linguaggio interattivo
SELECT Corso, Aula, PianoFROM Aule, CorsiWHERE Nome = AulaAND Piano="Terra"
Corso Aula
Reti N3
Sistemi N3
Piano
Terra
Terra
61
SQL immerso in linguaggio ad hoc (Oracle PL/SQL)
declare Stip number;begin select Stipendio into Stip from Impiegato where Matricola = '575488' for update of Stipendio; if Stip > 30 then update Impiegato set Stipendio = Stipendio * 1.1 where Matricola = '575488'; else update Impiegato set Stipendio = Stipendio * 1.15 where Matricola = '575488'; end if; commit; exception when no_data_found then insert into Errori values('Non esiste la matricola specificata',sysdate); end;
Interazione non testuale (in Access)
63
Una distinzione terminologica (separazione fra dati e programmi)
data manipulation language (DML), linguaggi per la manipolazione di dati:
per l’interrogazione e l’aggiornamento di (istanze di) basi di dati
data definition language (DDL), linguaggi per la definizione di dati:
per la definizione di schemi (logici, esterni, fisici) e altre operazioni generali (es. autorizzazioni)
64
Personaggi e interpreti
Database administrator (DBA): Persona o gruppo di persone responsabile del controllo centralizzato e della gestione del sistema, delle prestazioni, dell’affidabilità e delle autorizzazioni
Progettisti. Le funzioni del DBA includono quelle di progettazione (Modello E/R)
Utenti
65
Personaggi e interpreti
Utenti
66
Personaggi e interpreti (2)
progettisti della base di dati: raccolgono dati in base alle esigenze del committente e
degli utenti; li organizzano in strutture adeguate per rappresentarli
correttamente e memorizzarli. progettisti e realizzatori di DBMS: implementano
la base di dati progettisti e programmatori di applicazioni che
operano su sulla base di dati
67
Personaggi e interpreti (3)
utenti utenti finali (terminalisti): eseguono applicazioni
predefinite e frequenti (transazioni).Es.Bancomat utenti casuali: eseguono operazioni non previste
a priori, usando linguaggi interattivi (Es. interrogazioni, aggiornamenti Webserver)
68
Transazioni (per l'utente)
Programmi che realizzano attività frequenti e predefinite previste a priori.
Esempi: versamento presso uno presso sportello bancario emissione di certificato anagrafico dichiarazione presso l’ufficio di stato civile prenotazione aerea
Le transazioni sono di solito realizzate in linguaggio ospite ad hoc
69
Vantaggi e svantaggi dei DBMS
Pro permettono di trattare i dati come risorsa comune,
base di dati come modello della realtà gestione centralizzata dei dati con possibilità di
standardizzazione disponibilità di servizi integrati la condivisione dei dati evita ridondanze e
inconsistenze indipendenza dei dati (favorisce lo sviluppo e la
manutenzione) delle applicazioni)
70
Contro I prodotti sono costosi e complessi, e diversi
da molti altri strumenti informatici; la loro introduzione comporta investimenti: Acquisto prodotto Acquisto risorse hardware e software necessarie
Sicurezza
71
Evoluzione delle basi di dati
Basi dati multimediali (per memorizzare immagini, video, suoni)
Sistemi di informazione geografica (GIS, geographic information sistems), per memorizzare e analizzare carte geografiche, dati metereologici e immagini da satellite
Data Warehouse, possono memorizzare dati storici integrati e consistenti relativi al personale delle aziende
72
Fine