DOCENTE PROF. ALBERTO BELUSSI. Anno accademico 2010/11

Documenti analoghi
Basi di dati 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 2012/13

Basi di dati Basi di dati per bioinformatica

Elena Baralis 2007 Politecnico di Torino 1

Basi di Dati Concetti Introduttivi

Basi di Dati Concetti Introduttivi

INFORMATICA PER LE SCIENZE UMANE a.a. 2015/2016

INTRODUZIONE. Prof. Fabio A. Schreiber. Dipartimento di Elettronica e Informazione Politecnico di Milano PROGRAMMA DEL CORSO

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Basi di dati. Giuseppe De Giacomo. Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma

Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2011/2012. Basi di dati

Basi di Dati Ingegneria Informatica e delle Telecomunicazioni

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Ricevimento: dopo la lezione (in aula) o su appuntamento (Sede Scientifica Pal. 1 Primo Piano)

Basi di dati Introduzione

BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

Cap. 1-I 1 I sistemi informatici

Università di Roma La Sapienza Laurea in Ingegneria Informatica. Basi di Dati. Anno Accademico 2003/2004 Canale M-Z.

SISTEMA INFORMATIVO E SISTEMA INFORMATICO. Sistema informativo e sistema informatico

Cap. 1-I 1 I sistemi informatici

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

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

Informatica per le Scienze Umane. Introduzione al corso: programma

Sistema azienda. Sistema azienda (o sistema della organizzazione) uno o più obiettivi, o fini istituzionali

Progettazione di basi di dati

ARCHITETTURA DI UN DBMS

Bibliografia e strumenti. Obiettivi del corso. Comunicazione docente

Informatica per le Scienze Umane. Introduzione al corso: programma dettagliato

Corso di Informatica (Basi di Dati)

Corso di Sviluppi dell Informatica e della Telematica a.a (ultima edizione v.o. 509)

SISTEMI INFORMATIVI E DATABASE

Informatica (Basi di Dati)

Basi di dati Modelli e linguaggi di interrogazione

DBMS. Alice Pavarani

Linee di programmazione

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

Metodologie e modelli di progetto

Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2010/2011. Basi di dati

DB e DBMS. Corso di Fondamenti di Informatica (PEU-Z) Dott.ssa Rossella Aiello

MODELLI DEI DATI. Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia

DBMS. Affidabilità. Privatezza dei dati. Efficienza. Efficacia. Un DBMS deve garantire:

Informatica Documentale

Fondamenti di Informatica (lettere A-I) A

I database. Introduzione alla teoria delle basi di dati

Basi di Dati. Prof.ssa Rosalba Giugno

A proposito di informatica

Architettura MVC-2. Alberto Belussi. Anno accademico 2006/2007

Liceo Scientifico V. Volterra Fabriano. Informatica Basi di dati Anno C Scienze Applicate Prof. Amedeo De Amicis

Architettura CPU. Memoria principale (RAM) Dispositivi di ingresso. Dispositivi di uscita. Memoria secondaria (memoria di massa)

Ciclo di vita di un sistema informativo

Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

UNIVERSITA' DEGLI STUDI DI MILANO - BICOCCA Facoltà di Scienze Matematiche, Fisiche e Naturali

Generalizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica

Basi di dati I

Sommario. Introduzione... 13

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

UNIVERSITA DEGLI STUDI DI MILANO-BICOCCA FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI

Introduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1

Informatica 2 Basi di dati

BASI DI DATI. Titolo Prof. Cognome Nome Indirizzo Numero Telefono

Le basi di dati. Le basi di dati. dalla teoria all'utilizzo di tutti i giorni. Alessandro Tanasi

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi

FONDAMENTI DI INFORMATICA

Laboratorio Progettazione Web

Elementi di Informatica Corso di Laurea in Scienze Geologiche a.a. 2003/2004. Docente. Orario. Da Ottobre-Dicembre:

Corso di Fondamenti di Informatica e Laboratorio T-AB

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

I Nuovi Corsi di Laurea in Informatica. La laurea triennale (classe L-31) L

Principi di Progettazione del Software a.a Introduzione al corso Prof. Luca Mainetti Università del Salento

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

Corso di Sistemi di Elaborazione delle informazioni

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/

Architettura Model-View-Controller (MVC)

Archivi e database. Lezione n. 7

Le funzionalità di un DBMS

Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970.

Basi di dati I

Fondamenti di Informatica II Corso (HA-ZZ) Introduzione al corso

Le funzionalità di un DBMS

Componenti di un DBMS

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

Le aree dell informatica

DEFINIZIONI FONDAMENTALI

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione logica. Dati di ingresso e uscita


INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE TERZA

Il PROCESSO UNIFICATO

Programmatore sviluppatore software

32 Laurea magistrale in Informatica Scienze

Corso di Fondamenti di Informatica e Laboratorio ato o T-AB

REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Presentazione del corso

Informatica Introduzione alle basi di dati

Sistema di Gestione di Basi di Dati DataBase Management System DBMS

Laboratorio di Basi di Dati e Web

Transcript:

Basi di dati DOCENTE PROF. ALBERTO BELUSSI Anno accademico 2010/11

Informazioni generali sull organizzazione Insegnamento annuale su due semestri Orario I Semestre Lunedì 11.30 13.30 (aula B) Martedì 11.30 13.30 (aula A) Ricevimento Lunedì 16.30 18.30 2

Informazioni generali sull organizzazione Testi e eserciziari P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone Basi di dati: modelli e linguaggi di interrogazione McGraw-Hill P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati: architetture e linee di evoluzione McGraw-Hill E. Baralis, A. Belussi, G. Psaila Basi di dati: temi d esame svolti Progetto Leonardo Editrice Esculapio 3

Percorso didattico Insegnamento: BASI DI DATI 4 Unità didattiche CFU I Sem II Sem Teoria 9 ~44 ore ~34 ore Laboratorio 3 0 42 ore

Programma 5 Insegnamento: BASI DI DATI Sul sito di facoltà: http://www.scienze.univr.it it Pagina dell insegnamento

Modalità d esame 6 Modulo Teoria (9 crediti) ESAME SCRITTO: Progettazione concettuale/logica di una base di dati Algebra relazionale SQL Domande di teoria (indici, concorrenza, transazioni, ecc..) Dati multimediali XML Modulo Laboratorio (3 crediti) ESAME SCRITTO: Tecnologie per applicazioni i i web data-centric: Servlet, JSP, JDBC Progettazione logica di un applicazioni web Implementazione di applicazioni web secondo l approccio MVC-2 (servlet centric) SQL

Relazione ea econ gli at altri insegnamenti e del corso 7 Programmazione I e II Architettura degli Elab Algoritmi Ingegneria Software Metodologie di progettazione Java Sistemi Operativi File System e Memoria secondaria Reti di calcolatori Web, HTTP, ecc.. Basi di Dati

Relazione con Algoritmi (e Strutture Dati) 8 Algoritmi e strutture dati Memoria Centrale MEMORIA VOLATILE Accesso veloce e casuale Basi di dati Memoria secondaria MEMORIA PERSISTENTE Accesso lento e sequenziale

Relazione con Algoritmi (e Strutture Dati) 9 Tempo di vita dei dati Memoria Centrale Dati Programmi tempo Memoria secondaria Dati Programmi tempo

Evoluzione dell informatica applicata 10 anni 60: applicazioni negli ambienti di ricerca scientifica (laboratori) con enfasi sui programmi (e quindi sugli algoritmi). anni 70: nascono le applicazioni informatiche in ambito gestionale

Applicazioni gestionali 11 Caratteristiche algoritmi di elaborazione semplici. grande quantità di dati CONDIVISI da PIU applicazioni. Tali caratteristiche derivano dall ambiente ambiente in cui vennero introdotte le applicazioni informatiche (anni 70): IL SISTEMA INFORMATIVO

Sistema Informativo 12 Definizione è l insieme delle attività umane e dei dispositivi di memorizzazione ed elaborazione che organizza e gestisce l informazione di interesse di un organizzazione di dimensioni qualsiasi N.B.: un sistema informativo NON contiene necessariamente tecnologia informatica.

Sistema Informativo 13 Dato Elemento odi conoscenza o di base costituito oda simboli che devono essere elaborati. Informazione Interpretazione dei dati che permette di ottenere conoscenza più o meno esatta di fatti e situazioni.

Sistema Informativo 14 Schema descrittivo i Archivio A1 Procedura P1 Procedura P4 Procedura P3 Utente TIPO A Procedura P5 Archivio A2 Amministratore Procedura P2 Utente TIPO B

Sistema Informativo e Basi di Dati 15 BASE DI DATI Definizione è una collezione di dati utilizzati per rappresentare con tecnologia informatica le informazioni di interesse per un sistema informativo

Applicazioni gestionali 16 Soluzione convenzionale Programma P1 Programma P3 Programma P2 File 1 File 3 File 2 File 4 File System File 5

Applicazioni gestionali 17 Problemi della soluzione convenzionale Scarsa efficienza nell accesso ai dati su file (struttura ad accesso sequenziale) Ridondanza nei dati (duplicazioni dello stesso dato su più file) Inconsistenza (aggiornamenti parziali) Progettazione dei dati replicata per ogni programma

Applicazioni gestionali Soluzione innovativa (anni 70-80) 18 Applicazione P1 Applicazione P2 Applicazione P3 Sistema per la Gestione di Basi di Dati Data Base Management System (DBMS) File System Mem. Sec

DBMS (Data Base Management System) 19 DBMS Definizione È un sistema che gestisce su memoria secondaria collezioni di dati (chiamate Basi di Dati ): GRANDI, CONDIVISE e PERSISTENTI assicurando: AFFIDABILITA, PRIVATEZZA e ACCESSO EFFICIENTE

Utenti casuali DBMS: interazione 20 Utenti programmatori Utenti DBA (Data Base Administrator) Applicazione Pi Utenti finali Applicazione Pj Modello dei dati BD 1 BD 2 DBMS BD 3

DBMS: interazione 21 Linguaggi di interazione: Linguaggio gg per la definizione dei dati (Data Definition Language - DDL) Linguaggio per l interrogazione e aggiornamento dei dati (Data Manipulation Language DML): Linguaggio di interrogazione: estrae informazioni da una base di dati (esempio: SQL, algebra relazionale) Linguaggio gg di manipolazione: popola p la base di dati, modifica il suo contenuto con aggiunte, cancellazioni e variazioni sui dati (esempio: SQL)

Definizione DBMS: modello dei dati 22 È l insieme dei costrutti forniti dal DBMS per descrivere la struttura e le proprietà dell informazione contenuta in una base di dati. Costrutti: permettono di definire le strutture dati che conterranno le informazioni o della base di dati (analogia a a con i costruttori di tipo di un linguaggio di programmazione) e di specificare le proprietà che dovranno soddisfare le istanze di informazione che saranno contenute nelle strutture dati

DBMS: modello dei dati 23 Modelli dei dati del passato Modello reticolare Modello gerarchico Modelli dei dati attuali Modello relazionale Modello ad oggetti Modello object-relational

Modello, schema e istanza 24 È fondamentale nel contesto delle basi di dati distinguere correttamente questi tre concetti: Modello dei dati: visto nel lucido precedente Schema di una base di dati: è la descrizione della struttura e delle proprietà di una specifica base di dati fatta utilizzando i costrutti del modello dei dati (lo schema di una base di dati è invariante nel tempo) Istanza di una base di dati: è costituita dai valori effettivi che in un certo istante popolano le strutture dati della base di dati (l istanza di una base di dati varia nel tempo)

Modello, schema e istanza 25 Esempio Modello dei dati Schema Istanza Basi di dati Tabella (o relazione) P(cognome: VARCHAR(40), nome: VARCHAR(30)) cognome Rossi Bianchi nome Mario Lia Linguaggi i di progr. Array Class Persona { String cognome; String nome; } Class X { Persona[] p; p = new Persona[100]; p Persona Nome: Mario } Cognome: Rossi

Architettura di un DBMS (schema based) 26 Schema Esterno 1 Schema Esterno n Livello Esterno Livello Logico Schema Logico Schema Interno Livello Interno

Architettura di un DBMS 27 Schema Logico: è la rappresentazione della struttura e delle proprietà della base di dati attraverso i costrutti del modello dei dati del DBMS Schema Interno: è la rappresentazione della base di dati per mezzo delle strutture fisiche di memorizzazione (file dati, file indice, ecc ) Schema Esterno: descrive una porzione dello schema logico di interesse per uno specifico utente o applicazione (attraverso viste sullo schema logico)

Indipendenza dei dati Indipendenza d FISICA: lo schema logico della base di dati è completamente indipendente dallo schema fisico. 28 Conseguenza variazioni delle strutture fisiche non impattano sullo schema logico e quindi sulle applicazioni i i

Indipendenza dei dati Indipendenza LOGICA: gli schemi esterni della base di dati sono indipendenti dallo schema logico. 29 Conseguenza variazioni dello schema logico (purché non tolgano dati) non impattano sugli schemi esterni e quindi sulle applicazioni i i (va eventualmente ridefinita solo l espressione di derivazione degli schemi esterni dallo schema logico viste )

Progettazione di una base di dati 30 Ciclo di vita del processo di automazione di un sistema informativo Studio di fattibilità Definisce i costi e le alternative possibili Raccolta e analisi dei requisiti Individua proprietà e funzionalità del sistema (dati e applicazioni) producendo una descrizione completa ma informale Progettazione

Progettazione o e di una base di dati 31 Ciclo di vita del processo di automazione di un sistema informativo Progettazione del sistema Progettazione dei dati Descrizione formale dei dati (SCHEMA) Progettazione delle applicazioni Descrizione formale delle applicazioni (SPECIFICA)

Progettazione di una base di dati 32 Ciclo di vita del processo di automazione di un sistema informativo Progettazione dei dati Implementazione su un DBMS Validazione e collaudo

Metodologia di progettazione dei dati 33 Una metodologia di progettazione è costituita da: Una decomposizione in passi dell attività di progetto Un insieme di strategie da seguire e di criteri di scelta Un insieme i di modelli di riferimento i

Metodologia di progettazione dei dati 34 Una buona metodologia deve Generale Facile da usare In grado di produrre un risultato di qualità (progetto completo e corretto).

Metodologia di progettazione dei dati 35 Requisiti della base di dati prodotti dalla fase di analisi Progettazione Concettuale Schema concettuale Progettazione Logica Schema logico o Progettazione Fisica Schema fisico

Metodologia di progettazione dei dati 36 Progettazione concettuale OBIETTIVO Rappresentare il contenuto informativo della base di dati in modo formale ma indipendente dall implementazione (DBMS) e dalle operazioni. i

Metodologia di progettazione dei dati 37 Progettazione logica OBIETTIVO Tradurre lo schema concettuale nello schema logico aderente al modello dei dati del DBMS scelto per l implementazione. Nella traduzione si tiene conto delle operazioni i più frequenti che le applicazione eseguiranno sulla base di dati.

Metodologia di progettazione dei dati 38 Progettazione fisica OBIETTIVO Completare lo schema logico con i parametri relativi alla memorizzazione fisica dei dati e con gli opportuni metodi d accesso (INDICI).