| | | corso | | | | |
Laboratorio di basi di dati
Codice: | ZZ636 | Crediti: | 9 | Semestre: | 1 | Sigla: | LBD | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Giovanna Guerrini
Tel. 0502212700Prerequisiti
Conoscenze di modelli dei dati (concettuali e logici), modello
relazionale, linguaggio SQL [corso di Basi di dati e sistemi informativi
1]
Obiettivi di apprendimento
* Completare le nozioni possedute sulla progettazione e realizzazione di
applicazioni su basi di dati.
* Acquisire un'esperienza di progettazione e realizzazione di una
piccola applicazione su basi di dati.
* Acquisire la capacità di utilizzare gli strumenti presentati nel corso
(formalismi di progettazione, strumenti commerciali per la gestione di
basi di dati e la realizzazione delle relative applicazioni, quali
ORACLE DBMS, ORACLE Web Server).
* Acquisire le principali nozioni delle tecniche e metodologie per
l'analisi dei dati: data warehousing e data mining.
* Acquisire un'esperienza di progettazione e realizzazione di una
piccola applicazione di data warehousing.
Descrizione
Nel corso si approfondiscono le nozioni relative ad analisi e
progettazione di dati, procedure ed interfacce di applicazioni per basi
di dati, ed alla loro realizzazione, introdotte nel corso di Basi di
Dati e Sistemi Informativi 1. Vengono inoltre introdotte le principali
nozioni relative a tecniche e metodologie per l'analisi dei dati: data
warehousing e data mining. Tutte le nozioni introdotte vengono
immediatamente sperimentate dagli studenti, utilizzando un sistema
commerciale, quale ad esempio ORACLE, sviluppando un'applicazione
relativa ad un caso di studio.
English Description
The course covers in depth the notions related to data analysis and
design, and to the design and development of procedures and interfaces
for database applications, introduced in the course "Basi di Dati e
Sistemi Informativi 1". The main notions related to techniques and
methodologies for data analysis -data warehousing and data mining- are
also introduced. All the introduced notions are immediately experimented
in practice by the students in a commercial system, e.g., Oracle, and an
application related to a case study is developed.
Programma
PROGETTAZIONE
- Aspetti introduttivi. Problematiche nella progettazione di applicazioni
di basi di dati. Utilità di una metodologia. Fasi della
progettazione. Progettazione della struttura dei dati e delle
operazioni.
- Analisi dei requisiti. Problematiche. Struttura e contenuto del
documento di specifica dei requisiti.
- Progettazione concettuale. Strategie. Qualità di uno schema concettuale.
Documentazione di uno schema concettuale. Integrazione di
schemi concettuali.
- Progettazione logica. Obiettivi. Valutazione delle prestazioni su uno
schema concettuale. Ristrutturazione dello schema concettuale.
Traduzione nel modello logico.
- Progettazione delle operazioni. Uso di DFD e diagrammi degli stati.
Cenni di progettazione fisica. Cenni a strutture di memorizzazione e di
indicizzazione. Problematiche nella progettazione fisica.
- Esame di casi di studio.
REALIZZAZIONE
- Realizzazione di applicazioni. Problematiche e componenti nella
realizzazione di applicazioni di basi di dati. Linguaggi - alternative:
approccio integrato (estensioni di SQL), approccio immerso (SQL
Embedded), interfacce per basi di dati (ODBC, JDBC).
- PL/SQL: un esempio di linguaggio integrato. Aspetti introduttivi.
- Componenti di base. Struttura di un blocco. Eccezioni. Modularità
(procedure, funzioni, package). Cursori. Collezioni.
- Trigger. Aspetti di base. Utilizzo di trigger per la realizzazione di
business rules. Trigger in Oracle. Progettazione di trigger.
- SQL*Plus. Introduzione. Comandi SQL, PL/SQL, SQL*Plus in SQL*Plus.
Script.
- Realizzazione di interfacce. Approcci alternativi. Utilizzo di HTML per
la realizzazione di interfacce. Form in HTML. Oracle Web
Server. Javascript.
- Esercitazioni in laboratorio con Oracle 8i.
ANALISI DEI DATI
- Analisi dei dati: aspetti introduttivi. Sistemi di supporto alle
decisioni. Differenze tra sistemi OLAP e sistemi OLTP. Analisi dei dati.
Sistemi di data warehousing. Introduzione al data warehousing. La
progettazione di un data warehouse: progettazione concettuale,
logica, fisica. Schemi di fatto, schemi a stella, schemi a fiocco di
neve. Viste materializzate e aggregate navigator. Interrogazione di un
data warehouse: query OLAP e SQL. Architetture di riferimento di un data
warehouse. Data warehousing in Oracle.
- Data Mining. Introduzione al data mining. Classificazione delle tecniche
di data mining e dei sistemi esistenti. Estrazione di regole di
associazione, algoritmi Apriori e FP-growth. Classificazione e
previsione, algoritmi per la costruzione di alberi di decisione.
- Clustering.
- Relazioni tra data mining e data warehousing.
Bibliografia
- A. Albano, G. Ghelli, R. Orsini. Basi di dati relazionali e a oggetti.
Zanichelli, 1997. (capp. 3, 5).
- C. Batini, S. Ceri ed S.B. Navathe. Conceptual database design.
Benjamin/Cummings, 1992.
- P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone. Modelli e linguaggi
per basi di dati. McGraw-Hill Italia, 2002.
Manuali Oracle 8i.
- R. Kimball. The data warehouse toolkit - Practical techniques for
building dimensional data warehouses. John Wiley & Sons,
Inc. 1996.
- M. Golfarelli, S. Rizzi. Data warehouse - teoria e pratica della
progettazione. McGraw-Hill, 2002.
- J. Han, M. Kamber. Data mining: concepts and techniques.
Morgan-Kaufmann, 2001.
Modalità di esame
L'esame consiste nella progettazione e realizzazione in Oracle 8i diun'applicazione di basi di dati e di una semplice applicazione di datawarehousing su un dominio applicativo assegnato e nello svolgimento dialcuni esercizi individualmente assegnati su data mining. Gli studentidovranno sviluppare il progetto in gruppi di due/tre persone.Il voto verrà attribuito (ai singoli studenti, non ai gruppi) sulla basedella documentazione consegnata e della relativa discussione. È prevista l'assegnazione di un progetto di recupero per gli studentiche non riusciranno a sviluppare il progetto entro le scadenzefissate.