Anteprima
Vedrai una selezione di 5 pagine su 16
Basi di dati - Parte 1 Pag. 1 Basi di dati - Parte 1 Pag. 2
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Basi di dati - Parte 1 Pag. 6
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Basi di dati - Parte 1 Pag. 11
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Basi di dati - Parte 1 Pag. 16
1 su 16
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

DB• Base di Dati: Raccolta di informazioni strutturate relative ad un determinato dominio di interesse• Oggetti nella Base di Dati: Memorizzano proprietà di “Oggetti” e Relazioni tra Oggetti nel dominio di interesse 9Informatica Generale Maria De Marsico 3

DBMS• Sistemi software in grado di gestire collezioni di dati che sono• Molto grandi• Condivise da più utenti e più applicazioni• Persistenti: il ciclo di vita dei dati non è limitato alle singole esecuzioni dei dati che li usano 10Informatica Generale Maria De Marsico

Condivisione• In una organizzazione ogni componente è interessata ad una porzione del Sistema Informativo• Esempio: listino prezzi (usato dai commessi) e giacenze di magazzino (usato dai magazzinieri) di una società che distribuisce hardware• Queste porzioni possono sovrapporsi• Esempio: un commesso ha bisogno di sapere se un certo pezzo è disponibile• Una base di

dati è una risorsa integrata condivisa da diverse componenti. L'integrazione e la condivisione permettono di ridurre ridondanze (dati parzialmente o totalmente replicati) e conseguenti inconsistenze.

Condivisione:

  • La condivisione non è mai completa: occorrono controllo della privacy e regolamentazione degli accessi.
  • La condivisione comporta la necessità di gestire accessi contemporanei agli stessi dati: controllo della concorrenza.

Memorizzazione:

I sistemi di basi di dati utilizzano file informati proprietari per memorizzare i dati, ma offrono agli utenti una vista astratta dei dati, in modo da rendere trasparenti i dettagli di memorizzazione e manipolazione.

Ricordiamo ... I record:

  • I record sono aggregati di variabili di tipo diverso e permettono di definire nuovi tipi.
  • A cosa possono servire ...
  • A rappresentare le schede
di una biblioteca
Nome Autore Cognome Autore Titolo Scaffale
Maria De Marsico Informatica Generale 14

Struttura del record di tipo Scheda_Biblioteca:

Nome Autore Cognome Autore Posizione Costo Scaffale Titolo
Luciano Costa 5012 25 Liberi con l'informatica
Richard Bach 1520 10 Il gabbiano Jonathan Livingstone
Emmanuel Kant 115 30 Critica della ragion pura
Piergiorgio Odifreddi 15015 15 Il matematico impertinente

Array (Vettore) di record di tipo Scheda_Biblioteca:

Informatica Generale Maria De Marsico 5

Oggetti e record:

  • Un certo tipo di record può servire a memorizzare informazioni di tipo diverso su un certo oggetto appartenente ad una certa classe (studente, automobile, libro, ...)
  • I record relativi a oggetti della stessa classe vengono raggruppati in tabelle (la tabella con le informazioni sugli studenti, sulle automobili, sui libri)

La differenza tra un foglio elettronico e una base di dati può essere che una base di dati può essere "interrogata" in diversi modi. Ci torniamo tra poco...

16Informatica Generale Maria De Marsico

I 3 livelli di astrazione di un DB

  • Utente
  • Schema esterno
  • Schema logico
  • Schema interno
  • Data base

17Informatica Generale Maria De Marsico

I 3 livelli di astrazione di un DB

  • Schema fisico: quello che non vediamo proprio mai! Rappresentazione dello schema logico per mezzo di strutture fisiche di memorizzazione, cioè i file
  • Schema logico: descrizione dell'intera base di dati nel modello logico "principale" del DBMS, ad esempio la struttura delle tabelle
  • Schema esterno: descrizione di una porzione della base di dati in un modello logico attraverso "viste" parziali, o derivate, che possono prevedere organizzazioni dei dati diverse rispetto a quelle utilizzate nello schema logico, e che riflettono esigenze

privilegi di accesso di particolari tipologie di utenti;ad uno schema logico si possono associare più schemi esterni

Informatica Generale Maria De Marsico

Una vista (schema esterno)

Corsi Aule

Corso Docente Aula Nome Edificio Piano

Basi di dati Rossi DS3 DS1 OMI Terra

Neri N3

Sistemi N3 OMI Terra

Bruni N3

Reti G Pincherle Primo

Bruni G

Controlli SCHEMA LOGICO

Corsi Sedi Corso Aula Edificio Piano

Sistemi N3 OMI Terra VISTA

Reti N3 OMI Terra

Controlli G Pincherle Primo

Informatica Generale Maria De Marsico

Accesso alla Base di Dati

• Gli accessi alla base di dati avvengono solamente attraverso lo schema esterno, che può coincidere completamente con lo schema logico.

Informatica Generale Maria De Marsico

Indipendenza dei dati

• Indipendenza fisica: il livello logico e quello esterno sono indipendenti da quello fisico

• una relazione è utilizzata nello stesso modo qualunque sia la sua realizzazione fisica (organizzazione dei file e loro allocazione fisica)

realizzazione fisica può cambiare senza che debbano essere modificati i programmi

Informatica Generale Maria De Marsico

Indipendenza dei dati

  • Indipendenza logica: il livello esterno è indipendente da quello logico
  • Aggiunte o modifiche alle viste non richiedono modifiche al livello logico
  • Modifiche allo schema logico che lascino inalterato lo schema esterno sono trasparenti

Informatica Generale Maria De Marsico

Schemi e istanze

  • In ogni base di dati esistono:
  • Lo schema, sostanzialmente invariante nel tempo, che ne descrive la struttura (aspetto intensionale): nel modello relazionale, le intestazioni delle tabelle = lista di nomi di attributi e loro tipi
  • L'istanza, i valori attuali, che possono cambiare anche molto rapidamente (aspetto estensionale): nel modello relazionale, il "corpo" di ciascuna tabella

Informatica Generale Maria De Marsico

Schemi e istanze nel modello relazionale

ANAGRAFICA

NOME COGNOME DATA N LUOGO

SCHEMA

Piero

Napoli 22-10-63 Bari

Marco Bianchi 01-05-54 Roma

Maria Rossi 09-02-68 Milano

Maria Bianchi 07-12-70 Bari

Paolo Sossi 15-03-75 Palermo

ISTANZA 24

Informatica Generale Maria De Marsico 8

Linguaggi per le basi di dati

  • data definition language (DDL)
  • per la definizione di schemi (logici, esterni, fisici) e altre operazioni generali
  • data manipulation language (DML)
  • per l'interrogazione e l'aggiornamento di (istanze di) basi di dati
  • In SQL i due tipi di funzionalità sono integrate in un unico linguaggio di comandi

Informatica Generale Maria De Marsico

Modello di dati

  • strutture da utilizzare per organizzare i dati di interesse e le loro relazioni
  • componente fondamentale: costruttori di tipo
  • esempio: il modello relazionale prevede il costruttore di relazione: organizza i dati come insieme di record (tipi) omogenei

Informatica Generale Maria De Marsico

Due tipi (principali) di modelli

  • modelli logici: indipendenti dalle strutture
  • fisiche madisponibili nei DBMS: es. reticolare (network), gerarchico(hierarchical), relazionale (relational), ad oggetti (object)•

    modelli concettuali: indipendenti dalle modalità direalizzazione, hanno lo scopo di rappresentare le entità delmondo reale e le loro relazioni nelle prime fasi dellaprogettazione: es. entità-relazioni (entity-relationship)•

    i diagrammi di flusso sono una rappresentazione concettualedi un algoritmo, perché non dipendono dal linguaggio cheuseremo per implementarlo 27Informatica Generale Maria De Marsico 9Modello reticolare•

    I dati sono rappresentati come una collezione di recorddi tipo omogeneo•

    Le relazioni tra i dati sono rappresentate come link(implementati come puntatori, cioè veri e propriindirizzi di memoria = dipendenza dalla struttura fisicadella base di dati)•

    Il modello è rappresentato come una struttura a grafodove :

    • Nodi = record
    • Archi = link
    • Il più
    tipo "Membro dello Staff"• Ogni record rappresenta un membro dello staff con le seguenti informazioni: codice, cognome, nome, ruolo e anno di assunzione.• Esempio di tabella STAFF: CODICE COGNOME NOME RUOLO ASSUNZIONE COD1 Rossi Mario Analista 1995 Il modello reticolare è un tipo ristretto di modello reticolare composto da una gerarchia, che è un reticolo composto da una collezione di alberi (foresta). Ogni nodo ha un solo genitore. Il modello relazionale rappresenta dati e relazioni come valori. Non ci sono riferimenti espliciti, come puntatori, come nei modelli reticolare e gerarchico. Questo modello offre una rappresentazione di livello più alto. Nel modello relazionale, un oggetto è rappresentato come un record, con campi che contengono le informazioni di interesse. Ad esempio, un oggetto "Membro dello Staff" può avere campi come codice, cognome, nome, ruolo e anno di assunzione. Un esempio di tabella STAFF potrebbe essere:
    CODICE COGNOME NOME RUOLO ASSUNZIONE
    COD1 Rossi Mario Analista 1995

    tipo“Membro dello Staff”

    CODICE COGNOME NOME RUOLO ASSUNZIONE
    COD1 Rossi Mario Analista 1995
    COD2 Bianchi Pietro Analista 1990
    COD3 Neri Paolo Amministratore 1985

    Informatica Generale Maria De Marsico

    Esempio di un DB relazionale

    STUDENTI Matric Cognome Nome DataNasci
    276545 Smith Mary 25/11/1980
    485745 Black Anna 23/04/1981
    200768 Verdi Paolo 12/02/1981
    587614 Smith Lucy 10/10/1980
    937653 Brown Mavis 01/12/1980

    ESAMI

    CORSI Stud Voto CorsoCodice Titolo Tutor
    276545 C 0101 Physics Grant
    276545 B 0403 Chemistry Beale
    937653 B 0104 Chemistry Clark
    200768 B 0433 Informatica Generale Maria De Marsico

    Esempio di DB relazionale

    STUDENTI Matric Cognome Nome DataNasci
    276545 Smith Mary 25/11/1980
    485745 Black Anna 23/04/1981
    200768 Verdi Paolo 12/02/1981
    587614 Smith Lucy 10/10/1980
    937653 Brown Mavis 01/12/1980

    CORSI ESAMI = relazione tra studenti e corsi

    Codice Titolo Tutor Stud Voto Corso
    01 Physics Grant 276545 C 0103
    276545 B 0404 Chemistry Clark 937653
Dettagli
Publisher
A.A. 2012-2013
16 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher valeria0186 di informazioni apprese con la frequenza delle lezioni di Informatica Generale e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Costa Luciano.