Sistemi di Elaborazione delle Informazioni Mod.I

38
Sistemi di Elaborazione delle Informazioni Mod.I

description

Sistemi di Elaborazione delle Informazioni Mod.I. Data Base. Cos’è un DB DBMS, cosa sono e quali i vantaggi Modelli dei dati Progettazione concettuale Progettazione logica Progettazione fisica. Cos’è un DB. - PowerPoint PPT Presentation

Transcript of Sistemi di Elaborazione delle Informazioni Mod.I

Page 1: Sistemi di Elaborazione delle Informazioni Mod.I

Sistemi di Elaborazione delle Informazioni Mod.I

Page 2: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Data Base

• Cos’è un DB

• DBMS, cosa sono e quali i vantaggi

• Modelli dei dati

• Progettazione concettuale

• Progettazione logica

• Progettazione fisica

Page 3: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Cos’è un DB

L’insieme dei dati usati in uno specifico sistema informativo, di tipo..aziendale, scientifico etc.

Un DB è formato da 2 tipi di informazioni:• I dati (entità del sistema da modellare)• Le strutture (metadati, che descrivono le

cartteristiche comuni delle varie categorie di dati, nomi e tipi dei valori)

Page 4: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Cos’è un DB

Es. di dati e Struttura (Studenti)

Page 5: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Cos’è un DB

Un DB deve rappresentare i diversi aspetti della realtà, oltre i dati anche le relazioni

Il DB deve inoltre avere i seguenti requisiti:• I dati devono essere organizzati con ridondanza

minima (non duplicati inutilmente)• Devono essere utilizzabili contemporaneamente

da più utenti (unica versione dei dati)• Devono essere permanenti (memorie di massa e

tecniche di storage)

Page 6: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS

Sistema di gestione di una base di dati

Prima: mainframe e uso diretto delle strutture del file system(le applicazioni accedono direttamente agli archivi, conoscono la struttura dei dati, definiscono le relazioni, permettono l’uso contemporaneo dei dati, gestisc la permanenza)

Dopo: componente dedicato alla gestione

Page 7: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS

Le applicazioni si rivolgono al DBMS per accedere ai dati:

• Raggruppamento delle funzioni di gestione del DB -> sviluppo applicazioni più semplice

• Controllo delle operazioni fatte dalle applicazioni sul DB

Page 8: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS

Vantaggi del DBMS:

• Indipendenza dei dati dall’applicazione• Riservatezza nell’accesso ai dati• Gestione dell’integrità fisica dei dati• Sicurezza e ottimizzazione nell’uso dei dati

Page 9: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS - Indipendenza dei dati dall’applicazione

Prima (approccio file system):dati strettamente correlati all’applicazione; le applicazioni devono conoscere il formato fisico dei dati, localizzazione sui dispositivi di memorizzazione, tecniche usate per ottimizzare i tempi di ricerca.

Dopo (DBMS):indipendenza dalle applicazioni -> migliore manutenzione software S.I.;poiché modifiche alla struttura fisica dei dati non comporta necessariamente modifiche al software del S.I.

Page 10: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS-Riservatezza nell’accesso ai dati

Prima (approccio file system):non consente visioni logiche diverse dello stesso insieme di dati -> impossibile discriminare l’utenza nell’accesso ai dati

Dopo (DBMS):consente visioni logiche multiple e contemporanee della stessa struttura fisica dei dati.

Page 11: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS-Gestione dell’integrità fisica dei dati

Il DBMS garantisce la persistenza dei dati:garantendo la registrazione delle informazioni nel tempo e assicurandone l’integrità, evitando l’incosistenza attraverso il controllo degli accessi contemporaneo

Page 12: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS-Gestione dell’integrità logica dei dati

Stabilire dei vincoli in fase di definizione dei dati in modo che non sia possibile aggiungere dati o apportare modifiche (es.range, tipi enumerativi..) che non abbiano un senso nel contesto in esame.

Vincoli su:• Singole categorie di dati• Relazioni tra categorie

Un caso particolare di integrità logica su una relazione è l’integrità referenziale; impone che in una categoria di dati vi siano elementi non associati mediante la relazione in esame.

Page 13: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

DBMS-Sicurezza e ottimizzazione nell’uso dei dati

Il DBMS permette la centralizzazione della gestione di utenti e risorse.-> è possibile stabilire per ciascun utente i diritti di accesso alle unità di informazione del DB.

Page 14: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Modelli dei dati

Dal sistema reale al DB:(fasi di progettazione)

- progetto concettuale- progetto logico- progetto fisico

Ad ogni fase esistono esistono tecniche per la rappresentazione degli aspetti rilevanti della realtà da modellare.

Page 15: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Modelli dei dati

Ad ogni fase di progettazione esistono specifici modelli per la rappresentazione dei dati, attraverso i quali è possibile generare lo schema.

Def:• Un modello stabilisce le convenzioni per

esprimere i diversi aspetti della realtà• La rappresentazione generata seguendo le

regole del modello è detta schema

Page 16: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Modelli dei dati

Page 17: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione concettuale

Obiettivo: rappresentazione completa ed efficace della realtà interessante ai fini informativi in modo indipendente dal DBMS.

I modelli usati sono definiti modelli semantici, il più diffuso il modello E/R

Page 18: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione concettuale

Il modello concettuale prevede:• L’individuazione di oggetti concreti o astratti rilevanti per il sistema

informativo e la classificazione in entità• La definizione degli attributi, per la descrizione delle proprietà

caratteristiche di ogni entità• La definizione delle Associazioni tra entità

Il modello concettuale rappresenta i dati e le relazioni tra essi attraverso uno schema. Lo schema finale deve essere indipendente:

• dal valore dei dati, • dall’uso dei dati e quindi dalle procedure, funzioni e programmi che

elaborano questi dati, • da ciò che deve essere mostrato all’utente di questi dati (viste

parziali per gli utenti).

Page 19: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Entità-Esempi

• Nella gestione di un magazzino, le entità possono essere cliente, fornitore, articolo etc....

• Per la gestione di un albergo le entità potrebbero essere: cliente, camera

• Per un’agenzia turistica le entità potrebbero essere: cliente, viaggio

• Per individuare le entità nel contratto con il committente i soggetti (o in qualche caso i sostantivi) sono buoni candidati per le entità.

Page 20: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Associazione-CardinalitàUna relazione tra due insiemi di entità viene classificata in base alla sua cardinalità

Page 21: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Le cardinalità massime consentono di classificare le associazioni binarie in base al tipo di corrispondenza:

Associazione 1 : 1 o biunivoca (uno a uno). In questo caso la cardinalità massima per entrambe le entità coinvolte è pari ad uno

Associazione 1 : N (uno a N o uno a molti). In questo caso un’entità dell’associazione ha cardinalità massima pari ad uno, l’altra pari ad N

Associazioni N : M (N ad M o molti a molti). In questo caso entrambe le entità coinvolte nell’associazione hanno cardinalità massima pari a N

Associazione-Cardinalità

Page 22: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Associazione -Esempi

• Un cliente compra un articolo (i) (un articolo è comprato da più clienti)

• Un cliente prenota una stanza d’albergo (una stanza è prenotata da più clienti)

• Un turista acquista un pacchetto turistico (un pacchetto turistico è acquistato da più turista).

Page 23: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione concettuale

Individuate le entità e le associazioni, queste vengono rappresentate in maniera grafica per fornire una rappresentazione complessiva del sistema informativo

Page 24: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

• Realizzare un’agenda elettronica. Si vuole memorizzare:

– un elenco di amici con un’indicazione del cognome, del nome e del telefono

– tutti gli appuntamenti del proprietario. Per ogni appuntamento si vuole memorizzare la data, l’ora ed il luogo dell’appuntamento nonchè la persona con cui si ha l’appuntamento.

• Realizzare l’agenda nelle seguenti ipotesi: – ogni appuntamento è con un solo amico

Page 25: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Amico

CognomeNome

TelefonoCodice

Appuntamento

DataOraLuogo

N

1

Esempio Schema concettuale

Page 26: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Esempio Schema concettuale

Page 27: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Page 28: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Page 29: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Astrazione

Come si identificano gli oggetti nella realtà d’interesse? Per questo si riflette sui meccanismi di astrazione che permettono di ottenere uno schema della realtà.

Astrazione: Processo logico per cui, prescindendo dai particolari degli oggetti, se ne considerano solo i caratteri generali. (Es autovettura)

Page 30: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Astrazioni

Tre tipi di astrazione:

• Classificazione• Aggregazione• Generalizzazione

Page 31: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

classificazione

Viene definita una classe a partire da un insieme di oggetti che possiedono proprietà comuni.(es. autovettura)

Ci porta alla definizione di una classe, con cui si denota un insieme di oggetti della rappresentazione.. detti istanze della classe (es.opel corsa)

Page 32: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

aggregazione

Altro meccanismo di astrazione è l’aggregazione che definisce un concetto a partire da altri concetti.(veicolo+proprietario+data acquisto-> Proprietà)

Page 33: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

generalizzazione

Definisce un concetto a partire da altri definiti mediante l’astrazione di classificazione.(studente+docente+borsista -> persona)

Page 34: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Astrazione

Alla individuazione di una classe si può giungere attraverso differenti processi di astrazione

• (classificazione,possiedono ruote->veicoli)• (aggregazione)• (generalizzazione,autovettura motociclo

furgone -> veicoli)

Il modello E/R consente la rappresentazione delle tre astrazioni (entità==astraz. di classificazione)(relazioni==astraz. di aggregazione)

Page 35: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione logicaHa lo scopo di tradurre lo schema concettuale, espresso

mediante un modello semantico, in una rappresentazione espressa mediante un modello logico.

Modello logico: descrive la struttura dei dati negli archivi elettronici. Oltre ai dati vengono descritte le strutture di supporto per facilitare le operazioni che si devono effettuare con i dati

Risultato di questa fase è una definizione delle strutture dati e della loro organizzazione.

In questa fase si determina l’organizzazione del data base (flat file, data base gerarchico, reticolare, relazionale ad oggetti od altro), ed in funzione dell’organizzazione scelta si determina la struttura logica di ogni elemento.

Page 36: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione logica

Dipende strettamente dal DBMS usato

Ulteriore compito del progetto logico è l’individuazione all’interno dello schema logico delle parti che sono rilevanti per le singole applicazioni..definite viste o sottoschemi

Page 37: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Progettazione fisica

Viene definito come le strutture definite a livello logico devono organizzate negli archivi e nelle strutture del file system.

Page 38: Sistemi di Elaborazione delle Informazioni Mod.I

Corso di Sistemi di Elaborazione delle Informazioni '05 Mod.I Ing. L.Testa

Uso dei DBMS

Nell’uso di un DBMS vengono distinti tre tipi di linguaggi in base alle funzioni eseguite sui dati:

• DDL (per la def dello schema logico del DB)• DML (per le operazioni di interrogazione e

manipolazione dei dati)• DCL (per operazioni di controllo dei dati;

gestione utenti, diritti di accesso..)