Introduzione ai calcolatori Elettronici

Documenti analoghi
Elena Baralis 2007 Politecnico di Torino 1

Laboratorio Progettazione Web

Informatica per le Scienze Umane. Introduzione al corso: programma

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

Introduzione alle Basi di Dati

Basi di Dati. Concetti e Principi Generali. Maria Mirto

Basi di dati. Basi di dati = database

Basi di Dati Concetti Introduttivi

SISTEMI INFORMATIVI TERRITORIALI DATABASES -LEZIONE 3

Sistemi di Elaborazione delle Informazioni (C.I. 15) Basi di dati Introduzione teorica

Che cos è l informatica?

Basi di dati Basi di dati per bioinformatica

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

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

DOCENTE PROF. ALBERTO BELUSSI. Anno accademico 2010/11

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

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

SISTEMI INFORMATIVI E DATABASE

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

Cap. 1-I 1 I sistemi informatici

Informatica per l Ambiente e il Territorio

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno

Fondamenti di Teoria delle Basi di Dati

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

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

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

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

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

Tecnologie di Sviluppo per il Web

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

DBMS. Alice Pavarani

I DATI E LA LORO INTEGRAZIONE 63 4/001.0

Basi di dati. Maurizio Lenzerini. Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza

Elementi di Informatica LB Basi di Dati. Anno accademico 2007/2008 Prof. Stefano Contadini

Basi di Dati. Corso di Informatica. Memorizzazione dei Dati. Accesso ai Dati. Corso di Laurea in Conservazione e Restauro dei Beni Culturali

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

Anno Accademico 2007/2008. Sistemi Informativi. Corso di Laurea in Ingegneria della Gestione Industriale

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

Bibliografia. INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. Definizione di DB e di DBMS

Programmazione Orientata agli Oggetti in Linguaggio Java

INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione

ARCHITETTURA DI UN DBMS

Le basi di dati. Base di dati = dati + DBMS.

BASI DI DATI E UTENTI DI BASI DI DATI

SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1

RELAZIONI E BASI DI DATI

Sistemi Informativi e Basi di Dati

SISTEMA INFORMATIVO E SISTEMA INFORMATICO. Sistema informativo e sistema informatico

Programmazione Orientata agli Oggetti in Linguaggio Java

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

DataBase Management System - DBMS

Introduzione ai Calcolatori Elettronici

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

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

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

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

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

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

Progettazione di basi di dati

Cap. 1-I 1 I sistemi informatici

Gestione e Analisi dei Dati. Lezione 2 Vincoli su attributo Selezioni semplici su una tabella

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

Pag Politecnico di Torino 1

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

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

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

Informatica e Bioinformatica: Basi di Dati

LE BASI DI DATI. Prima parte Premesse introduttive I MODELLI DEI DATI

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

BASI DATI INFORMATICA

Bibliografia e strumenti. Obiettivi del corso. Comunicazione docente

Basi di da' Il modello relazionale. Anna Monreale Università di Pisa

Foglio elettronico e Banche dati e per la Pubblica Amministrazione

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

Basi di Dati Concetti Introduttivi

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Procedurale in Linguaggio C++

Corso di Informatica (Basi di Dati)

Programmazione Procedurale in Linguaggio C++

IL PATRIMONIO DI DATI E LE BASI DI DATI

Le funzionalità di un DBMS

Le funzionalità di un DBMS

I database. Introduzione alla teoria delle basi di dati

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

Sommario. Introduzione... 13

Basi di dati Introduzione

Corso di Sistemi di Elaborazione delle informazioni

Tecnologie di Sviluppo per il Web

Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati

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

Le Basi di Dati. Sommario. Sistema Informatico. Sistema Informativo. Fondamenti di Informatica Anno Accademico 2010/2011

Basi di dati. Basi di dati. Basi di dati. Basi di dati (Database, DB) Basi di dati (Database, DB) Basi di dati (Database, DB)

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

Le funzionalità di un DBMS

Interrogazioni nidificate

Interrogazioni nidificate

Informatica (Basi di Dati)

Corso di Laurea in Informatica Basi di Dati a.a

Introduzione alla rete Internet

Ciclo di vita di un sistema informativo

Transcript:

Introduzione ai calcolatori Elettronici Cenni su Basi di Dati A.A. 2015/2016 Domenica Sileo Università degli Studi della Basilicata

Cenni su Basi di Dati >> Basi di Dati: Sommario Sommario n Introduzione n Sistema Informativo n Database Management System (DBMS) n Modello dei Dati n Progettare una base di dati n Tipologie di DBMS n Panoramica sui DBMS Relazionali n Database vs foglio Elettronico

Cenni su Basi di Dati >> Basi di Dati : Introduzione Introduzione n Oggetto della lezione n Sistemi di Gestione di Basi di Dati o Database Management Systems (DBMS) n Sono tipicamente utilizzati nelle organizzazioni complesse n molti dati da gestire n processi complessi n i dati sono cruciali per lo svolgimento delle attività

Cenni su Basi di Dati >> Basi di Dati : Introduzione Introduzione n In particolare n i DBMS sono una componente fondamentale del sistema informatico di una grande organizzazione n Un sistema informatico è una componente fondamentale del sistema informativo n ed una componente fondamentale del sistema organizzativo

Cenni su Basi di Dati >> Basi di Dati : Introduzione Introduzione n Organizzazione complessa (es: azienda, banca, ente pubblico, ma anche fantacalcio ) è dotata di un sistema organizzativo e informativo n Sistema Organizzativo n complesso delle strutture, delle regole e delle procedure che regolano lo svolgimento delle attività n Es: banca regolamento apertura c/c n Es: anagrafe procedure per la reg. nascite

Cenni su Basi di Dati >> Basi di Dati : Sistema Informativo Sistema Informativo n Sistema informativo n la parte del sistema organizzativo che presiede ai processi di raccolta, conservazione e utilizzo delle informazioni n L esistenza del sistema informativo è in parte indipendente dalla sua automatizzazione n esistono ancor prima dei calcolatori elettronici (es. archivi delle banche) n Esempi n banca registrazione prelievi su c/c, emissione estratto conto; anagrafe registrazione nascita emissione certificato di nascita

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema Informatico n Sistema informatico n la porzione informatizzata e automatizzata del sistema informativo n Collezione di applicazioni che gestiscono i dati e i flussi informativi n In pratica, in molti casi: n sistema informativo = sistema informatico n ma non è sempre così

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema Informatico n Informazione n notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere n Dato n ciò che è immediatamente presente alla conoscenza, prima di ogni elaborazione; (in informatica) elementi di informazione costituiti da simboli che devono essere elaborati

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema Informatico n I dati devono essere interpretati per diventare informazioni (conoscenza) n Esempio: 1 3 10 12 17 20 21 30 n Risultati del Totogol concorso 28 del 3 marzo 2002 n 1 3 10 12 17 20 21 30 Quote 8pt: 215.594,00

Cenni su Basi di Dati >> Basi di Dati : Definizione Basi di Dati n È una collezione di dati utilizzati per rappresentare le informazioni di interesse per un sistema informatico n Osservazione n i dati hanno caratteristiche più stabili rispetto a quelle delle procedure che operano su di essi, e quindi costituiscono una risorsa per l organizzazione che li gestisce

Cenni su Basi di Dati >> Basi di Dati : Definizione Basi di Dati Struttura a livelli n obiettivo dei DBMS: il trattamento dei dati per ottenere informazione Organizzazione complessa (es: azienda) Sistema organizzativo Sistema informativo Sistema informatico DBMS

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema informatico n I sistemi informatici n sono presto stati considerati fondamentali nelle grandi organizzazioni n Esistono da prima che esistessero i DBMS n Erano basati su un architettura diversa rispetto a quella attuale

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema informatico n Architettura tradizionale: applicazioni e file per memorizzare i dati in modo persistente sulla memoria di massa Applicazione n.1 Es: dati nascite Disco Applicazione n.2 Es: certif. elettorali File A File C File B Applicazione n.3 Es: erogazione contr.

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema informatico n Un file consente di memorizzare e ricercare dati, ma fornisce solo semplici meccanismi di accesso e condivisione n Nelle applicazioni le procedure scritte in un linguaggio di programmazione sono completamente autonome n Ciascuna di esse definisce e utilizza uno o più file privati n Eventuali dati di interesse per più programmi vengono replicati tante volte per quanti programmi li utilizzano

Cenni su Basi di Dati >> Basi di Dati : Sistema Informatico Sistema informatico n Problemi principali di questa architettura n dimensioni dei dati n efficienza n condivisione dell accesso (ridondanza) n affidabilità n sicurezza

Cenni su Basi di Dati >> Basi di Dati : Sistema Informativo Esempio: Informazioni dei docenti n Ufficio del personale n Gestione carriera n Presidenze di facoltà n Incarichi di insegnamento n Web ateneo n Informazioni dei corsi e dei docenti n Ufficio Stipendi n Informazioni sulla carriera e sugli incarichi didattici per le retribuzioni

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Architettura basata su DBMS: gestisce in modo integrato e flessibile le informazioni di interesse per diversi soggetti limitando i rischi di ridondanza e incoerenza Appl. n.1 Appl. n.2 DBMS (servizi) Base di Dati (dati)

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Sistema per gestire grandi collezioni di dati persistenti n in modo n Efficiente n Efficace n garantendo servizi di: n Condivisione n Affidabilità n Sicurezza e privatezza

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Grandi n possono avere dimensioni enormi e comunque molto maggiori della memoria centrale disponibile n Devono prevedere la gestione in memoria secondaria n Condivise n Diverse applicazioni e utenti devono poter accedere a dati comuni n Si riduce la ridondanza dei dati (evitando ripetizioni) e si riduce la possibilità di inconsistenza n Si dispone di meccanismi per la gestione della concorrenza

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Persistenti n Hanno un tempo di vita che non è limitato a quello delle singole esecuzioni dei programmi che le utilizzano n Affidabilità n Capacità del sistema di conservare il contenuto delle basi di dati anche in caso di guasti n Garantiscono funzionalità di salvataggio e ripristino (recupero dei dati in caso di guasti)

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Sicurezza e Privatezza n Ciascun utente viene abilitato a svolgere soltanto alcune azioni sui dati attraverso dei meccanismi di autorizzazione n Esempio: n l accesso ai dati dei cittadini è protetto agli utenti non autorizzati n gli utenti autorizzati (impiegati) hanno diversi livelli di autorizzazione

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Caratteristiche del DBMS n efficienza, efficacia n Efficienza n utilizzo di risorse di calcolo (tempo e spazio) accettabile per gli utenti n relativa alla complessità dei servizi n Efficacia n Rendono produttive le attività dei loro utenti n centralizzazione dei servizi n semplicità della scrittura di applicazioni

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) utenti finali utenti casuali applicazioni programmatori applicativi DBMS amministratori Base di Dati

Cenni su Basi di Dati >> Basi di Dati : DBMS Database Management System (DBMS) n Alcuni esempi di DBMS n varie categorie di licenza n Commerciali, Fascia alta n IBM DB2, Oracle, Microsoft SQL Server, Sybase n Commerciali, Fascia bassa n Microsoft Access, FileMaker n Open Source n MySQL (www.mysql.com) n PostgreSQL (www.postgresql.org)

Modello dei Dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Modello dei dati n Come fanno le applicazioni e gli utenti a interagire con il DBMS? n devono conoscere l organizzazione dei dati n devono sapere come comunicare con il DBMS n Devono conoscere: n Il modello dei dati del DBMS n Il linguaggio del DBMS

Modello dei Dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Modello dei dati n Il modello dei dati rappresenta l insieme di strutture e di regole per la rappresentazione delle informazioni e per renderle comprensibili ad un elaboratore n Modello logico dei dati n astrazione per il programmatore ma riflettono una particolare organizzazione (per es. tabelle, a grafi, ad alberi, etc..) n Modello fisico dei dati n al livello della macchina

Modello dei Dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Modello dei dati n Ogni modello fornisce dei meccanismi di strutturazione n Esempi di modello logico n In linguaggio C: tipi base, array, strutture, puntatori n In linguaggio Java: tipi base, array, classi, oggetti, ereditarietà n Esempi di modello fisico n strutture per la rappresentazione dei bit (registri della memoria, file su disco)

Modello dei Dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Modello dei dati n Ogni DBMS è basato su precisi modelli n Modello logico n descrizione dei dati visibili alle applicazioni n Modello fisico n strutture per la gestione della persistenza su disco

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Problema affrontato: voglio organizzare le informazioni relative una certa realtà in un DB n voglio mantenere informazioni su quali studenti hanno sostenuto quali esami e con quale risultato n quindi mettere in relazione le informazioni relative agli studenti e quelle relative ai corsi

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Problema affrontato: voglio organizzare le informazioni relative una certa realtà

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Data una realtà da modellare (es. studenti e corsi) occorre capire quali informazioni sono utili (es. matricola è utile per rappresentare gli studenti) n Capire come le informazioni utili sono correlate (es. chi ha sostenuto quale esame) n Sapere chi può accedere a quali informazioni per eseguire quali azioni n Avere strumenti per operare interrogazioni sui dati (es. quanti esami ha sostenuto Rossi nel 2002? Con quale media?)

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Data una realtà da modellare (es. studenti e corsi) occorre capire quali informazioni sono utili (es. matricola è utile per rappresentare gli studenti) n Capire come le informazioni utili sono correlate (es. chi ha sostenuto quale esame) n Sapere chi può accedere a quali informazioni per eseguire quali azioni n Avere strumenti per operare interrogazioni sui dati (es. quanti esami ha sostenuto Rossi nel 2002? Con quale media?)

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Analisi dei Requisiti n Raccolta e studio delle funzionalità che il sistema dovrà avere n Comporta l interazione con gli utenti del sistema e si conclude in una descrizione informale dei suoi requisiti Analisi dei requisiti Descrizione informale

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Analisi Concettuale n Ha lo scopo di rappresentare la realtà di interesse in termini di una descrizione precisa e completa ma indipendente dai criteri di rappresentazione usati dal sistema informatico scelto per gestire la base di dati (rappresentazione astratta ) modello entity-relation

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Progettazione logica n Ha lo scopo di rappresentare la realtà di interesse in termini di una descrizione ancora indipendente dai dettagli fisici ma concreta, in quanto presente nei sistemi di gestioni delle basi di dati n Lo schema concettuale definito nella fase precedente viene tradotto nello schema logico modello relazionale Progettazione Logica Schema Logico

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Progettazione fisica n Lo schema logico viene completato con le specifica dei parametri fisici di memorizzazione dei dati (organizzazione dei file e degli indici) n Si definisce lo schema fisico dei dati che dipende dal sistema di gestione di basi di dati scelto Progettazione fisica Schema Fisico

Progettare una base di dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Progettazione n Progettazione fisica n Lo schema logico viene completato con le specifica dei parametri fisici di memorizzazione dei dati (organizzazione dei file e degli indici) n Si definisce lo schema fisico dei dati che dipende dal sistema di gestione di basi di dati scelto

Modello dei Dati Cenni su Basi di Dati >> Basi di Dati : DBMS >> Modello dei dati Appl. n.1 strategia di memorizz. (struttura dei file) Appl. n.2 Schema logico DBMS Schema fisico es: struttura delle tabelle o delle classi Disco (file)

Tipologie di DBMS Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS n I DBMS n si differenziano rispetto al modello che utilizzano per la descrizione delle basi di dati n Le principali categorie n DBMS relazionali la categoria tradizionale n DBMS a oggetti n DBMS basati su XML

Tipologie di DBMS Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS n DBMS relazionali n i dati sono organizzati in tabelle (relazioni) n la tabella è un insieme di record (ennuple) n con un insieme di attributi n di tipi opportuni (numeri, stringhe, date ) n i dati in tabelle diverse sono correlati sulla base dei valori n Modello Fisico n file, pagine e record (proprietario)

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS studenti Matricola Cognome Nome Data di nascita 6554 Pinco Pallino 05/12/1978 8765 Neri Paolo 03/11/1976 9283 Verdi Luisa 12/11/1979 3456 Rossi Maria 01/02/1978 esami Studente Voto Corso 3456 30 04 3456 24 02 9283 28 01 6554 26 01 corsi Codice Titolo Docente 01 Analisi Sempronio 02 Chimica Bruni 04 Chimica Verdi

Tipologie di DBMS Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS n DBMS relazionali a oggetti n sono un compromesso tra DBMS relazionali e DBMS a oggetti n I dati sono organizzati in tabelle ma n Limitate funzionalità per la definizione di tipi (classi) n Limitate funzionalità per la definizione di oggetti (identificatori) n Limitate funzionalità per la creazione di gerarchie

Tipologie di DBMS Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS n DBMS basati su XML n i dati sono organizzati in strutture gerarchiche (alberi) n ogni albero ha un insieme di nodi (elementi) n oggetti diversi sono correlati sulla base di relazioni di contenimento n Modello Fisico n vari possibili modelli n standard: file di testo basato su marcatori

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS studenti studente studente studente matricola cognome nome datanascita esamisost 6554 Pinco Pallino 5/12/1978 esame esame corso voto codice titolo docente 26 01 Analisi Sempronio

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Tipologie dei DBMS <xml version= 1.0?> dire%va standard <studenti> <studente> <matricola>6554</matricola> <cognome>pinco</cognome> <nome>pallino</nome> <datadinascita>15/12/1978</datadinascita> <esamisostenuti> <esame> <corso> <codice>01</codice> <titolo>analisi</titolo> <docente>giacomo</docente> <voto>26</voto> </corso> </esame>... </studenti> elemen.

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Che cosa deve conoscere del modello lo sviluppatore dell applicazione? n Schema e istanza n il modello logico (e non il modello fisico) n la struttura dei dati e non necessariamente i dati veri e propri n In altri termini n lo schema n e non necessariamente l istanza

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Lo schema (componente intensionale) n descrizione della struttura - stabile nel tempo n L istanza (componente estensionale) n i valori (cioè i dati) - variabile nel tempo Schema Studenti Matricola studenti Matricola Cognome Nome Data di nascita Cognome Record 6554 Pinco Pallino 05/12/1978 8765 Neri Paolo 03/11/1976 Nome 9283 Verdi Campo Luisa 12/11/1979 Data di nascita 3456 Rossi Maria 01/02/1978

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n I dati vengono strutturati in tabelle, in particolare un dbms relazionale può essere pensato come un insieme di tabelle n Ogni tabella mantiene informazioni di tipo omogeneo n Diverse tabelle sono collegate (in relazione) fra loro grazie alla presenza di un campo comune, che permette di mettere in relazione i dati delle due tabelle

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n I dati vengono inseriti in tabelle seguendo una certa struttura logica n Come modificare la struttura?: Inserire nuovi record, inserire nuovi campi in un record n Come aggiornare i contenuti?: modificare i valori di una cella etc n Di solito esistono dei vincoli che devono essere rispettati nella base di dati n Un aggiornamento sia di struttura che di contenuto deve rispettare questi vincoli n Quando i vincoli sono rispettati si dice che la base di dati è consistente

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Quali vincoli? n sul dominio di valori che può assumere una certa informazione (campo) n es.: banca dati dell Università i voti devono essere compresi tra 0 e 30 n Sull unicità dei valori n ogni studente deve avere un numero di matricola diverso dall altro n vincoli che fra informazioni correlate n es. anagrafe: i dati relativi al coniuge sono presenti solo se la persona è sposata

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Schema logico n descrizione dell intera base di dati per mezzo del modello logico adottato (strutture secondo cui i dati sono organizzati nel modello logico, es. tabelle) n Schema fisico (o interno) n rappresentazione dello schema logico per mezzo di strutture fisiche di memorizzazione (es. relazione realizzata fisicamente per mezzo di un file sequenziale) n Schema esterno n Costituisce la descrizione di una porzione della base di dati di interesse, per mezzo del modello logico n relativo alla gestione della sicurezza

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Non tutti gli utenti hanno gli stessi privilegi n Schema esterno per un utente: porzione della base di dati che l utente è autorizzato a vedere n Viste: strumento attraverso cui si definisce lo schema esterno n Es: base di dati comunale dei cittadini n tabella cittadino, attributo imponibile a fini fiscali n vista cittadinosenzadatifiscali

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Architettura Standard a Tre Livelli applicazione applicazione utente applicazione utente Schema esterno Schema esterno Schema esterno Schema logico Schema fisico BD L architettura a livelli garantisce l indipendenza dei dati

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Il concetto di indipendenza dei dati è la caratteristica fondamentale dei DBMS n Permette a utenti e applicativi di interagire ad un elevato livello di astrazione n Può essere caratterizzata ulteriormente: n indipendenza dei dati rispetto alle applicazioni n indipendenza dello schema logico rispetto allo schema fisico n indipendenza degli schemi esterni rispetto allo schema logico

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Su un DBMS è possibile specificare operazioni di vario tipo, in particolare quelle relative a schemi e istanze n È possibile distinguere due categorie: n DDL (Data Definition Language) utilizzati per definire gli schemi logici, esterni e fisici e le autorizzazioni per l accesso n DML (Data Manipulation Language) utilizzati per l interrogazione e l aggiornamento delle istanze n Ogni modello ha i suoi linguaggi n Per esempio nei db relazioni: SQL-92

SQL: Un esempio Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Lista degli Attributi SELECT Matricola, Cognome, AVG(Voto) FROM Studenti, Esami WHERE Matricola = Studente GROUP BY Matricola, Cognome Lista delle Tabelle Condizione Clausula Matricola Cognome AVG(voto) 6554 Pinco 26 8765 Neri 28 3456 Rossi 27

Cenni su Basi di Dati >> Basi di Dati : DBMS >> Relazionali Panoramica sui DBMS Relazionali n Vantaggi n Permettono di considerare i dati come una risorsa comune di una organizzazione a disposizione di tutte le sue componenti n È possibile la centralizzazione dei servizi n La condivisione permette di ridurre ridondanze e inconsistenze n L indipendenza dei dati favorisce lo sviluppo di applicazioni più flessibili e facilmente modificabili n Svantaggi n complessità dell architettura n costi

Database vs Fogli elettronici Cenni su Basi di Dati >> Basi di Dati >> Database vs Fogli Elettronici n Considerazione: n un programma di foglio elettronico come Excel ha diverse funzioni uguali a quelle di un DBMS n permette di organizzare dati in tabelle MA gli obiettivi sono diversi e di conseguenza emergono delle differenze n Quali?

Database vs Fogli elettronici Cenni su Basi di Dati >> Basi di Dati >> Database vs Fogli Elettronici n Un DBMS è pensato per trattare in modo facile GRANDI quantità di dati, organizzati in tabelle dalla STRUTTURA rigida e mi interessa fare solo operazioni di archiviazione e consultazione n Un foglio elettronico è pensato per trattare quantità di dati più piccole, con struttura più flessibile (creo le tabelle come voglio) e il focus è sulle operazioni di elaborazione e analisi dei dati, non tanto sull archiviazione e recupero

Database vs Fogli elettronici Cenni su Basi di Dati >> Basi di Dati >> Database vs Fogli Elettronici n Nel caso dei fogli elettronici ho maggior flessibilità nell organizzazione dei dati es. possiamo organizzare gli elementi per righe ma anche per colonne, destinare liberamente le celle a contenere un certo risultato etc n Nel caso dei database nei record di una tabella i campi si succedono tutti con la stessa struttura n Collaborazione dei due tipi di programmi per elaborare in modo sofisticato grandi quantità di dati: n il DBMS accede all archivio dei dati, n il foglio elettronico elabora i dati reperiti

Sommario Cenni su Basi di Dati >> Basi di Dati: Sommario n Introduzione n Sistema Informativo n Database Management System (DBMS) n Modello dei Dati n Tipologie di DBMS n Panoramica sui DBMS Relazionali n Database vs foglio elettronico n Ringraziamenti n Parte del materiale di questa lezione è stato sviluppato a partire dalle lezioni della Dott.ssa Anna Vicari

Termini della Licenza Cenni su Basi di Dati >> Basi di Dati: Termini della licenza n This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. n Questo lavoro viene concesso in uso secondo i termini della licenza Attribution-ShareAlike di Creative Commons. Per ottenere una copia della licenza, è possibile visitare http://creativecommons.org/licenses/by-sa/1.0/ oppure inviare una lettera all indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.