Informatica Introduzione alle basi di dati Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:

Slides:



Advertisements
Presentazioni simili
Introduzione ai DBMS I Sistemi di Gestione di Basi di Dati sono strumenti software evoluti per la gestione di grandi masse di dati residenti su memoria.
Advertisements

DBMS (DataBase Management System)
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Una Introduzione alle Basi di Dati
Introduzione ai sistemi di basi di dati
Basi di Dati prof. A. Longheu
4 – Progettazione – Introduzione e Modello E-R
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Gestione Dati & Archivi
ESEMPI DI ARCHIVI DI DATI
L’uso dei database in azienda
Tipo Documento: unità didattica 1 Modulo 14 Compilatore: Antonella Bolzoni Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
IL PATRIMONIO DI DATI - LE BASI DI DATI. Il patrimonio dei dati Il valore del patrimonio di dati: –Capacità di rispondere alle esigenze informative di.
Struttura dei sistemi operativi (panoramica)
Basi di dati Università Degli Studi Parthenope di Napoli
Appunti informatica- prof. Orlando De Pietro
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
Programma del Corso Dati e DBMS DBMS relazionali SQL
DBMS ( Database Management System)
Gestione dell’Informazione: Aspetti Introduttivi
Corso di Informatica - Basi di Dati Introduzione alle basi di dati Gabriella Pasi
Introduzione alle Basi di Dati. Overview Informazione = contenuto + struttura Informazione non strutturata Molto contenuto, poca struttura Un romanzo.
Basi di Dati Barbara Catania Aspetti Introduttivi.
Implementare un modello di dati
INFORMATICA Corso Base Modulo G: I DataBase  Access.
DAGLI ARCHIVI AI DATABASE
ACCESS Introduzione Una delle necessità più importanti in informatica è la gestione di grandi quantità di dati. I dati possono essere memorizzati.
Introduzione a Oracle 9i
Istituto Tecnico Commerciale Statale “G. Dell’Olio
LE BASI DI DATI E IL LINGUAGGIO SQL.
Presentazione Data Base Ovvero: il paradigma LAPM (Linux - Apache - PHP - mySQL) come supporto Open Source ad un piccolo progetto di Data Base relazionale,
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
DATABASE Introduzione
Laboratorio informatico I
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
DB- Sistemi Informativi
Corso di Laurea in Ingegneria per l’Ambiente e il Territorio Informatica per l’Ambiente e il Territorio Docente: Giandomenico Spezzano Tutor: Alfredo Cuzzocrea.
ITCG “V. De Franchis” - PON FSE Modulo G/1 l’informatica”
IV D Mercurio DB Lezione 1
I DATABASE.
Introduzione alle basi di dati
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
SCHEDA INFORMATIVA DI UNITÀ. comuni file system Data Base Management System criticità superamento criticità Potenziale immagine per file system Per DBMS.
Informatica Lezione 1 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico:
Database Concetti di base
Dati e DBMS DBMS relazionali SQL Progettazione di un DBMS Normalizzazione Programma del Corso di Basi di Dati.
Basi Dati e Laboratorio (6 + 6) crediti – curriculum Sistemi e Reti Basi dati 1 e Basi dati 2 prec.ordin. docenti: Barbara Demo Giuseppe Berio mail :
Introduzione alle basi di dati
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione Programma del Corso.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione Programma del Corso.
Capitolo 1: Introduzione. Introduzione2 Base di dati  Insieme organizzato di dati utilizzati per il supporto allo svolgimento di attività (di un ente,
Basi di dati: introduzione parte prima Ernesto Damiani.
© 2015 Giorgio Porcu - Aggiornamennto 28/03/2015 UdA 1A Database Progettazione Fisica G IORGIO P ORCU
Lezione 5 - SQL. Linguaggi per DB Per interagire con le basi di dati occorre un linguaggio Linguaggio SQL (Structured Query Language), linguaggio standardizzato.
Microsoft Access (parte 3) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Eprogram informatica V anno.
Tipo Documento: unità didattica 1 Modulo 14 Compilatore: Antonella Bolzoni Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Le basi di dati.
Linguaggi per basi di dati Linguaggi di definizione dei dati Utilizzati per definire gli schemi e le autorizzazioni per l’accesso Linguaggi di manipolazione.
Modulo 5 – Database ACCESS LICEO SCIENTIFICO “ B. RESCIGNO COMPUTER SCUOLA PIANO INTEGRATO 2008/09 ESPERTO prof.ssa Rita Montella.
Linguaggio SQL. Linguaggi per database La diffusione del modello relazionale ha favorito l’uso prevalente di linguaggi non procedurali: in questo modo.
Lezione 4 – Linguaggi ed Interazione. Linguaggi La comunicazione è essenziale tra gli esseri umani Se vogliamo chiedere informazioni stradali ad un passante.
Introduzione alle basi di dati e ai sistemi di gestione di basi di dati.
Transcript della presentazione:

Informatica Introduzione alle basi di dati Lezione 1 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:

2 Orario e aula Prima parte: 6 marzo – 3 aprile Lunedì 16: :00 Seconda parte: 10 aprile – fine del corso Lunedì 9: :00 Aula 9, corso San Maurizio 31/a

3 Libro P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone Basi di dati – Modelli e linguaggi di interrogazione McGraw-Hill, 2002 Capitoli: 1, 2, 3 (fino a 3.1.9), 4 (introduzione, sezione 4.2), 6 (introduzione, sezione 6.1, sezione 6.2), Appendice A (su Access)

4 Docente Jeremy Sproston Ufficio: Ufficio 33, Dipartimento di Informatica, corso Svizzera 185 (entrata: via Pessinetto 12) Indirizzo sproston[at]di.unito.it Telefono: Pagina web:

5 Docente Ore di ricevimento (Dip. di Informatica): Mercoledì 10:00 – 12:00 Per informazione aggiornata: didattica.html

1 - Introduzione 1a – Introduzione ai basi di dati 1b – Insiemi

7 Sistemi informativi e basi di dati Ogni organizzazione ha bisogno di memorizzare e mantenere informazioni specifiche. Per esempio: Utenze telefoniche Conti correnti bancari Studenti iscritti a un corso di laurea Quotazioni di azioni nei mercati telematici

8 Esempio:Rappresentazione astratta di utenze telefoniche Utente Codice Cognome Nome Comune ListaTelefonate Telefonata NumeroTelefonico OrarioInizio OrarioFine NumeroScatti

9 Sistemi informativi e basi di dati I sistemi informativi organizzano e gestiscono le informazioni necessarie alle attività di un’organizzazione: Inizialmente non erano automatizzati (per esempio, gli archivi bancari) Informatica  gestione automatica dei dati  basi di dati Informazione memorizzata in modo rigoroso

10 Informazione e dati Distinzione tra informazione i dati: Dati = elementi di informazione, che di per sé non hanno interpretazione  Mario Rossi  nome e cognome   numero matricola? Numero di abitanti di una città? CAP? Numero di telefono?

11 Informazione e dati Distinzione tra informazione i dati: Dati + interpretazione = informazione  Domanda: “Chi è il responsabile del ufficio tecnico e qual è il suo numero di telefono?”  interpretazione della risposta  Risposta: Mario Rossi,  dati  Domanda + risposta: informazione Nei sistemi informatici, le informazioni vengono rappresentate per mezzo di dati

12 Dati e applicazioni I dati possono variare nel tempo (per esempio, importo conto corrente) Le modalità con cui i dati sono rappresentati in un sistema sono di solito stabili Le operazioni sui dati variano spesso (per esempio, ricerche) separare i dati dalle applicazioni che operano su essi

13 Basi di Dati (DB) e DBMS Basi di dati = collezione di dati per rappresentare informazioni di interesse: grandi, condivise, persistenti

14 Caratteristiche dei basi di dati Grandi = miliardi di byte (gestione in memoria secondaria) Condivisibili = diverse applicazioni e utenti possono accedere a dati comuni Evitare le ridondanze Aggiornamenti agevoli Evitare le inconsistenze dovute agli accessi concorrenti Persistenti = dati sempre disponibili, non “vivono” dentro una sola applicazione

15 Basi di Dati (DB) e DBMS DBMS = Data Base Management System = software in grado di gestire collezioni di dati Un DBMS deve essere: affidabile, sicuro, efficiente, efficace

16 Caratteristiche dei DBMS Affidabilità = protezione dei dati, in caso di guasto HW o SW capacità di ripristinare i dati (almeno parzialmente) Sicurezza/privatezza = abilitazioni diverse a seconda dell’utente Efficienza = tempi di risposta e occupazione spazio accettabili (dipende molto dalla tecnica di memorizzazione dei dati) Efficacia = facilitare l’attività di organizzazione

17 Basi di dati vs. file system Tecnicamente, i basi di dati sono collezioni di file: Si potrebbero usare direttamente i file per memorizzare i dati… …ma si perdono le buone proprietà garantite dai DBMS  Normalmente, file pensati per una specifica applicazione e non per servire più di una applicazione, magari in parallelo

18 Come organizzare i dati in un base di dati Insieme di concetti per organizzare le informazioni di interesse e descriverne la struttura Meccanismi per strutturare tipi di dati complessi a partire da tipi semplici Per esempio: data =

19 Modello logico dei dati Sottointende una specifica rappresentazione dei dati (tabelle, alberi, grafi, oggetti…) Descrive i dati a un livello intermedio, tra ciò che vede l’utente e il livello dell’implementazione Molte proposte in DBMS commerciali Implemen- tazione Modello logico Utente

20 Modello concettuale Per la progettazione di un base di dati: analisi della realtà di interesse Modello astratto Indipendente dal modello logico Modello concettuale = rappresentazione dei concetti Modello logico = rappresentazione dei dati

21 Modello logico dei dati Modello gerarchico (anni ‘60) = struttura gerarchica (albero) Modello reticolare (inizio ‘70) = struttura a grafo Modello relazionale (fine ‘70) = struttura a tabelle Modello orientato agli oggetti (anni ‘80) = struttura a classi/oggetti

22 Modello logico dei dati Modello gerarchico (anni ‘60) = struttura gerarchica (albero) Modello reticolare (inizio ‘70) = struttura a grafo Modello relazionale (fine ‘70) = struttura a tabelle Modello orientato agli oggetti (anni ‘80) = struttura a classi/oggetti Per esempio: Microsoft Access

23 Modello relazionale Basato sul concetto di relazione Relazione = rappresentazione di un’entità complessa tramite attributi Graficamente, una relazione può essere rappresentata da una tabella: Colonna = attributo (oppure campo) Riga = valore degli attributi di un individuo appartenente all’entità

Esempio (modello relazionale) Dati relativi a docenti corsodocente InformaticaBianchi EconomiaRossi ArchitetturaVerdi Docenza nomi relazioni attributi individui

Esempio (modello relazionale) Dati relativi a corsi cdlmateriaanno InformaticaBasi di dati2 MatematicaAnalisi I1 LettereLatino1 InformaticaProgramma zione 1 OrganizzCorsidiLaurea nomi relazioni attributi individui

Esempio (modello relazionale) Dati relativi a corsi e docenti (Dbcorsi) corsodocente InformaticaBianchi EconomiaRossi ArchitetturaVerdi cdlmateriaanno InformaticaBasi di dati2 MatematicaAnalisi I1 LettereLatino1 InformaticaProgramma zione 1 Docenza OrganizzCorsidiLaurea

27 Schema di una relazione Schema di una relazione = definizione della struttura della relazione È formata dall’intestazione della relazione: NomeRelazione(Attr 1,…,Attr n ) Non varia nel tempo (modulo ristrutturazione del DB) Per esempio: in Dbcorsi Docenza(corso,docente)

28 Istanza di una relazione Istanza di una relazione = dati che descrivono gli individui appartenenti alla relazione (sono le righe della tabella) Varia nel tempo (aggiunta, modifica, eliminazione dei dati riguardanti gli individui)

29 Schema e istanza di un base di dati Schema di un base di dati = insieme degli schemi delle relazioni (struttura) Istanza (o stato) di un base di dati = valori dei dati nelle tabelle (righe)

30 Livelli di astrazione nel DBMS Architettura standard su 3 livelli: Livello esterno: descrizione di una porzione del base di dati (per vedere i dati da punti di vista diversi a seconda dell’utente) Livello logico: descrizione del base di dati tramite le strutture-dati del modello logico del DBMS (per esempio, le tabelle del modello relazionale) Livello interno: “mapping” tra schema logico e strutture fisiche di memorizzazione (file)

31 Livelli di astrazione del DBMS Livello esterno (viste) Livello interno (file) Livello logico (tabelle) Utente Organizzazione fisica di memorizzazione corsodocente InformaticaBianchi EconomiaRossi ArchitetturaVerdi cdlmateriaanno InformaticaBasi di dati2 MatematicaAnalisi I1 LettereLatino1 InformaticaProgrammazio ne 1 Docenza OrganizzCorsidiLaurea

32 Livelli di astrazione del DBMS Livello esterno (viste) Livello interno (file) Livello logico (tabelle) Utente Organizzazione fisica di memorizzazione Il DBMS lavora per “mettere d’accordo” i livelli

33 Indipendenza dei dati Garantita dai livelli di astrazione: Indipendenza fisica: permette di interagire con DB in modo indipendente da struttura fisica in cui sono memorizzati i dati  Se i dati vengono riorganizzati fisicamente, le applicazioni funzionano lo stesso Indipendenza logica: permette di accedere al DB in modo indipendente da struttura logica dei dati (per esempio, tabelle)  Modificare livello logico senza modificare le viste (livello esterno)  Estendere le viste senza alterare livello logico

34 Linguaggi per basi di dati Data Definition Language (DDL) = definisce livelli fisici, logici, esterni del DB (tratta anche le autorizzazioni di accesso) Data Manipulation Language (DML) = per formulare interrogazioni e aggiornamenti delle istanze del base di dati

35 DDL e DML relazionali Due paradigmi: Dichiarativo  SQL (Structured Query Language) Procedurale  algebra relazionale Varie proposte commerciali (non esiste un vero “standard SQL”, sintassi un po’ diverse)

36 Accesso ai dati Mediante linguaggi testuali (per esempio, SQL) Tramite comandi speciali integrati nei linguaggi di programmazione Tramite interfacce “amichevoli” (per esempio, Wizards, in Access, ecc.)

37 Accesso ai dati Esempio: Mediante linguaggi testuali (per esempio, SQL) … Tramite interfacce “amichevoli” (per esempio, Wizards, in Access, ecc.) Un esempio di codice SQL: SELECT Disco,GruppoMusicale FROM Gruppi WHERE GruppoMusicale=“Radiohead” OR GruppoMusicale=“Franz Ferdinand”

38 Utenti di un base di dati Amministratori del base di dati: progetta, controlla e amministra il base di dati Progettisti e programmatori di applicazioni: sviluppano i programmi che interagiscono con DBMS Utenti: usano il base di dati per trovare le informazioni di interesse (possono essere più o meno esperti)

39 Vantaggi dei DBMS Permettono di considerare i dati come risorsa di un’organizzazione Una risorsa comune: a disposizione di molteplici utenti e applicazioni Offrono un modello formale della realtà di interesse Preciso, riutilizzabile

40 Vantaggi dei DBMS Controllo centralizzato dei dati Riduzione di ridondanze e inconsistenze Indipendenza dei dati Sviluppo di applicazioni flessibili e modificabili

41 Svantaggi dei DBMS Complessi, costosi, hanno specifici requisiti in termini di software e hardware Difficile separare servizi utili da quelli inutili Inadatti alla gestione di poche informazioni condivise da un numero basso di utenti

42 Differenze rispetto ad un foglio elettronico (Excel) Un foglio elettronico è come una sola tabella Non abbiamo la possibilità di collegare più tabelle come in un base di dati Possibilità di informazione ripetuta Inserire in diverse parti (ridondanza) Modifiche devono essere propagate (per esempio, cambio di affiliazione) per mantenere la consistenza