Informatica Introduzione alle basi di dati



Похожие документы
Informatica 2 Basi di dati

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati)

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti

IL SISTEMA INFORMATIVO

Informatica Documentale

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

Base di dati e sistemi informativi

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

1. BASI DI DATI: GENERALITÀ

Che cos è un DBMS? Capitolo 1. Perché usare un DBMS? DBMS. Descrizioni dei dati nei DBMS. Modelli di dati

1.1 Introduzione alle basi di dati

Le Basi di Dati. Le Basi di Dati

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Facoltà di Farmacia - Corso di Informatica

Introduzione alle basi di dati (prima parte)

Sistema di Gestione di Basi di Dati DataBase Management System DBMS

Sistemi Informativi e Basi di Dati

Testi di riferimento. Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione)

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

DBMS (Data Base Management System)

Progettaz. e sviluppo Data Base

Corso di Informatica

DEFINIZIONI FONDAMENTALI

Corso di Basi di Dati A.A. 2014/2015

Informatica. Basi di dati. Basi di dati (Database, DB) Basi di dati parte 1: Introduzione

Le Basi di dati: generalità. Unità di Apprendimento A1 1

Introduzione. Elenco telefonico Conti correnti Catalogo libri di una biblioteca Orario dei treni aerei

Il database management system Access

Introduzione al data base

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Organizzazione degli archivi

Data Base. Prof. Filippo TROTTA

Elena Baralis 2013 Politecnico di Torino 1

Lezione V. Aula Multimediale - sabato 29/03/2008

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

Database. Si ringrazia Marco Bertini per le slides

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

Alessandra Raffaetà. Basi di Dati

Progettazione di Basi di Dati

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Sistemi centralizzati e distribuiti

Sistemi di gestione delle basi di dati. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Corso di Basi di Dati e Conoscenza

PROXYMA Contrà San Silvestro, Vicenza Tel Fax

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

I Sistemi Informativi

Lezione 1. Introduzione e Modellazione Concettuale

DATABASE.

Le funzionalità di un DBMS

LABORATORIO di INFORMATICA

Archivi e Basi di Dati

L architettura di un DBMS

Archivi e database. Lezione n. 7

Corso di Informatica

Informatica I per la. Fisica

LABORATORIO. 2 Lezioni su Basi di Dati Contatti:

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

Basi di dati. Basi di dati = database. Basi di dati

Basi di Dati e Microsoft Access

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Organizzazione delle informazioni: Database

Informatica per le discipline umanistiche 2 lezione 10

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

La Metodologia adottata nel Corso

Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Progettaz. e sviluppo Data Base

Data Base Management System. Strumenti: Formato: Pro: Contro: Software specifico. Proprietario

Introduzione all Architettura del DBMS

Sistemi informativi secondo prospettive combinate

BASI DI DATI. Queste slides sono un adattamento di quelle di Luca Anselma e Gian Luca Pozzato, cui va il mio ringraziamento

Ciclo di vita del software: Tipologie di software

Introduzione ai sistemi di basi di dati

database: modello entityrelationship

Dispensa di database Access

Informatica Generale Andrea Corradini Sistemi di Gestione delle Basi di Dati

Concetti di base di ingegneria del software

Caratteristiche principali. Contesti di utilizzo

BASI DI DATI - : I modelli di database

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

I database. Cosa sono e a cosa servono i Database

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Basi di Dati. Programmazione e gestione di sistemi telematici

SQL prima parte D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2011/12

Database. Francesco Tapparo Informatica e Bioinformatica /16

PROGRAMMAZIONE MODULARE. Periodo mensile. Ore previste

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli

Basi di Dati. Introduzione ai sistemi di basi di dati. K.Donno - Introduzione ai sistemi di basi di dati

Introduzione ai sistemi di basi di dati

Транскрипт:

Informatica Introduzione alle basi di dati Prof. Giovanni Giuffrida e-mail: giovanni.giuffrida@dmi.unict.it 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 1

Materiale didattico Atzeni,Ceri,Paraboschi,Torlone, Basi di Dati,Modelli e linguaggi di interrogazione, terza edizione, McGraw-Hill 2002. Albano-Ghelli-Orsini, Basi di Dati Relazionali e a Oggetti, Zanichelli, 1997 Ullman, Basi di Dati e Basi di Conoscenza Access: Manuale utente Slides del corso 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 2

Sistema informativo Componente (sottosistema) di qualsiasi organizzazione Azienda privata, pubblica, info private (PIM), famiglia, etc. Gestisce (acquisisce, elabora, conserva, produce) le informazioni di interesse (i.e., utilizzate per il perseguimento degli scopi dell organizzazione) ogni organizzazione ha un sistema informativo, possibilmente non esplicitato nella struttura stessa quasi sempre, il sistema informativo è di supporto ad altri sottosistemi il sistema informativo è di solito suddiviso in sottosistemi (in modo gerarchico o decentrato), più o meno fortemente integrati 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 3

Sistema organizzativo Insieme di risorse e regole per lo svolgimento coordinato delle attività al fine del perseguimento degli scopi il sistema informativo è parte del sistema organizzativo il sistema informativo esegue/gestisce processi informativi (cioè i processi che coinvolgono informazioni) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 4

Risorse aziendali le risorse di una azienda: persone denaro materiali informazioni Oggi viviamo nell era della conoscenza Il capitale principale delle organizzazioni è rappresentato dalla conoscenza (basata sui dati) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 5

Sistemi informativi e automazione Il concetto di sistema informativo è indipendente da qualsiasi automazione esistono organizzazioni la cui ragion d essere è la gestione di informazioni Es.: servizi anagrafici, tribunali, biblioteche, etc Operano da secoli La gestione delle loro informazioni si è evoluta nel tempo Ma ciò non altera l obiettivo dell organizzazione! 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 6

Sistema Informatico Porzione automatizzata del sistema informativo: la parte del sistema informativo che gestisce informazioni con tecnologia informatica Sistema azienda Sistema organizzativo Sistema informativo Sistema informatico 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 7

Sistema informativo e sistema informatico Anche prima di essere informatizzati, molti sistemi informativi si sono evoluti Razionalizzazione delle procedure di accesso ai dati Standardizzazione dell esecuzione delle procedure Organizzazione delle informazioni Duplicazione degli archivi Esempi: Uffici anagrafe Contabilità familiare Ordinazione al ristorante 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 8

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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 9

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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 10

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. Informazione può essere vista come un interpretazione semantica dei dati Dipendente dal contesto 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 11

Dati e informazioni I dati hanno bisogno di essere interpretati Esempio Mario 275 su un foglio di carta sono due dati. 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 12

Dati e informazioni I dati hanno bisogno di essere interpretati Esempio Mario 275 su un foglio di carta sono due dati. Se il foglio di carta viene fornito in risposta alla domanda A chi mi devo rivolgere per il problema X; qual è il suo interno?, allora i dati possono essere interpretati per fornire informazione e arricchire la conoscenza. Oppure, soldi che Mario mi deve Oppure, giorni lavorativi di Mario Etc. Etc. 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 13

Perché i dati? La rappresentazione precisa di forme più ricche di informazione e conoscenza è difficile I dati costituiscono spesso una risorsa strategica Più stabili nel tempo di altre componenti quali processi, tecnologie, ruoli umani 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 14

Base di dati Insieme organizzato di dati utilizzati per il supporto allo svolgimento delle attività di un ente (azienda, ufficio, personale) Tecnologicamente parlando: Insieme di dati gestito da un sistema software dedicato alla gestione di basi di dati Data Base Management System (DBMS) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 15

Sistema di gestione di basi di dati DataBase Management System DBMS Applicazione software in grado di gestire collezioni di dati che siano: Grandi: di dimensioni (molto) maggiori della memoria centrale dei sistemi di calcolo utilizzati Persistenti: con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano Condivise: utilizzate da applicazioni diverse anche in località geografiche diverse Affidabili: resistenza a malfunzionamenti hardware e software, blackout, etc. Private: con una disciplina e un controllo degli accessi Come ogni prodotto informatico, un DBMS deve essere Efficiente: utilizzando al meglio le risorse di spazio e tempo del sistema Efficace: rendendo produttive le attività dei suoi utilizzatori 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 16

Alcuni DBMS in commercio Business estremamente grosso e profittevole Alcuni sistemi Microsoft Access IBM-DB2 Oracle Informix Sybase Microsoft SQLServer Ingres MySql (open-source) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 17

Condivisione dei dati Ogni organizzazione (specie se grande) è divisa in settori o comunque svolge diverse attività A ciascun settore o attività corrisponde un (sotto-)sistema informativo Possono esistere sovrapposizioni fra i dati di interesse dei vari settori Una base di dati è una risorsa integrata, condivisa fra i vari settori 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 18

Possibili problemi nella condivisione Ridondanza: informazioni duplicate Rischio di incoerenza: dei dati le versioni possono non coincidere L incoerenza tra i dati è un problema frequente nelle grandi organizzazioni (e molto complicato a volte da risolvere) Le basi di dati condivise hanno aiutato molto 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 19

Archivi e basi di dati Gestione orario lezioni Archivio 1: orario lezioni Gestione ricevimento Archivio 2: ricevimento 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 20

Archivi e basi di dati Gestione orario lezioni Gestione ricevimento Base di dati 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 21

Le basi di dati condivise Una base di dati e' una risorsa integrata e condivisa tra varie applicazioni e vari utenti Attivita' diverse da parte di diversi utenti su dati in parte condivisi: Meccanismi di autorizzazione Controllo degli accessi Controllo della concorrenza, accesso ai dati in competizione 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 22

Efficienza Si misura (come in tutti i sistemi informatici) in termini di tempo di esecuzione (tempo di risposta) spazio di memoria (principale e secondaria) L efficienza è funzione di vari fattori Qualità del DBMS Qualità delle applicazioni che usano il DBMS Manutenzione del DBMS Caratteristiche del server Ecc. 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 23

utente Architettura standard (ANSI/SPARC) a tre livelli per DBMS utente utente utente utente Schema esterno Schema esterno Schema esterno Schema logico Schema fisico BD 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 24

Architettura ANSI/SPARC: schemi Schema esterno: descrizione di parte della base di dati del modello logico ( viste parziali, derivate, anche in modelli diversi) Schema logico: descrizione dell intera base di dati nel modello logico principale del DBMS Schema fisico: rappresentazione dei dati per mezzo di strutture fisiche di memorizzazione sui dischi rigidi 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 25

Astrazione dei dati nei DBMS Descrizioni e rappresentazione dei dati a livelli diversi di astrazione I livelli seguono un ordine ben preciso Ciò permette l indipendenza dei dati dalla loro rappresentazione fisica sugli hard-disk: i programmi fanno riferimento alla struttura a livello più alto, e le rappresentazioni sottostanti possono essere modificate senza necessità di modifica dei programmi La rappresentazione ad un livello può cambiare nel tempo senza bisogno di cambiare i livelli sovrastranti 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 26

Indipendenza dei dati Conseguenza della articolazione in livelli L accesso avviene solo tramite il livello esterno (che può coincidere con il livello logico) Due forme: Indipendenza fisica Indipendenza logica 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 27

Indipendenza fisica Il livello logico e quello esterno sono indipendenti 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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 28

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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 29

Modello dei dati Insieme di costrutti e metodi utilizzati per organizzare i dati di interesse e descriverne la dinamica Componente fondamentale: meccanismi di strutturazione (o costruttori di tipo) Ogni modello dei dati prevede specifici costruttori Ad esempio, il modello relazionale prevede il costruttore relazione, che permette di definire insiemi di record omogenei 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 30

Due tipi principali di modelli Modelli logici: utilizzati nei DBMS esistenti per l organizzazione dei dati utilizzati dai programmi indipendenti dalle strutture fisiche esempi: relazionale, reticolare, gerarchico, a oggetti Modelli concettuali: permettono di rappresentare i dati in modo indipendente da ogni sistema cercano di descrivere i concetti del mondo reale sono utilizzati nelle fasi preliminari di progettazione Il più noto è il modello Entity-Relationship 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 31

Organizzazione dei dati nel modello relazionale 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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 32

Schemi e istanze Lo schema della base di dati Insegnamento Docente Aula Ora 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 33

Schemi e istanze L istanza della base di dati 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 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 34

Schemi e istanze In ogni base di dati esistono: Aspetto intensionale: lo schema Sostanzialmente invariante nel tempo Descrive la struttura Nell esempio, le intestazioni delle tabelle Aspetto estensionale: l istanza I valori possono cambiare anche molto rapidamente Raccoglie i dati Nell esempio, il corpo di ciascuna tabella 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 35

Esempio di DB relazionale Studenti Nome Matricola Indirizzo Citta Luogo di nascita Mario Rossi 456 Via Roma 1 Catania Catania Ugo Bianchi 567 Via Etnea 154 Enna Ragusa Teo Verdi 678 Via Parma 12 Catania Enna Leo Poldo 768 Piazza Roma 1 Ragusa Ragusa Esami Corsi Denominazione Programmazione Architettura Matematica Statistica Docente Ferro Pappalardo Lizzio Lizzio Matr_Studente Corso Voto 678 Programmazione 27 456 Architettura 30 567 Programmazione 18 678 Matematica 22 678 Architettura 30 456 Statistica 19 678 Statistica 22 567 Matematica 18

Esempio di query Corso Programmazione Architettura Docente Ferro Pappalardo Quali docent hanno dato piu di 24 a Teo Verdi ed in quali corsi?

Linguaggi per basi di dati Permettono interrogazioni formali delle basi di dati nel modello logico utilizzato Algebra relazionale: Formalismo di base per la formalizzazione interrogazioni nel modello relazionale (la madre di tutti i modelli) di SQL (Structured Query Language): Linguaggio di tipo testuale per basi di dati relazionali Adottato da tutti i sistemi DBMS relazionali Interfacce visuali (tipo Access) I vari linguaggi di programmazione (e.g. Java) permettono di interrogare le basi di dati incorporando SQL al loro interno New: Linguaggi No-SQL Ancora in definizione Non strutturati Efficienti Imprecisi 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 38

Esempio di SQL SELECT Corso, Aula, Piano FROM Aule, Corsi WHERE Nome = Aula AND Piano="Terra" Corso Sistemi Reti Aula N3 N3 Piano Terra Terra 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 39

Interazione non testuale (in Access) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 40

Una distinzione terminologica (separazione fra dati e programmi) Data manipulation language (DML) Per l interrogazione e l aggiornamento di (istanze di) basi di dati Data definition language (DDL) Per la definizione di schemi (logici, esterni, fisici) e altre operazioni generali 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 41

Un'operazione DDL (sullo schema) CREATE TABLE orario ( insegnamento CHAR(20), docente CHAR(20), aula CHAR(4), ora time ) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 42

Personaggi e interpreti Progettisti e realizzatori di DBMS Progettisti della base di dati e amministratori della base di dati (DBA) Progettisti e programmatori di applicazioni Utenti 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 43

Database administrator (DBA) Persona o gruppo di persone responsabile del controllo centralizzato e della gestione del sistema, delle prestazioni, dell affidabilità, delle autorizzazioni Le funzioni del DBA includono quelle di progettazione, anche se in progetti complessi ci possono essere distinzioni 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 44

Transazioni Programmi che realizzano attività frequenti e predefinite, con poche eccezioni, previste a priori Esempi: versamento presso uno sportello bancario emissione di certificato anagrafico dichiarazione presso l ufficio di stato civile prenotazione aerea Le transazioni sono di solito realizzate con programmi in linguaggio ospite (tradizionale o ad hoc) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 45

Transazioni Altra definizione importante di transazione: Sequenza indivisibile di operazioni Atomicità: O vengono eseguite tutte le operazioni o nessuna I DBMS sono in grado di garantire l atomicità delle transazioni Costrutti per marcare l inizio e la fine della transazione 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 46

Vantaggi e svantaggi dei DBMS Pro dati come risorsa comune, base di dati come modello della realtà gestione centralizzata con possibilità di standardizzazione ed economia di scala disponibilità di servizi integrati riduzione di ridondanze e inconsistenze indipendenza dei dati (favorisce lo sviluppo e la manutenzione delle applicazioni) Contro costo dei prodotti e della transizione verso di essi non scorporabilità delle funzionalità (con riduzione di efficienza) 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 47

FINE 27 November 2014 Basi di Dati - Introd. - Prof. G. Giuffrida 48