Database Management Intro

456 views

Published on

Introduzione all'uso dei database

Published in: Education
  • Be the first to comment

  • Be the first to like this

Database Management Intro

  1. 1. + Intro Database Relazionali Dott. Giuseppe Lo Brutto
  2. 2. + Sistemi basati su file n  La gestione dei dati basata su file è oggi obsoleta però: n  Capire i problemi insiti ai sistemi basati su file può prevenire dal ripeterli sui sistemi a database. Abbiamo imparato da questi sistemi che ci sono modi migliori per gestire i dati. Una collezione di programmi Filebased •  eseguono servizi per l’utente applicativi che finale. Ogni system programma definisce e gestisce i suoi dati I file sono stati il primo tentativo per informatizzare la gestione manuale dei dati .
  3. 3. + Limiti n  Isolamento e separazione dei dati, quando i dati sono isolati in file separati è più difficile accedervi. n  Duplicazione dei dati, incoraggia la duplicazione incontrollata dei dati. n  n  n  La duplicazione è spreco; costa tempo e soldi; Occupa spazio addizionale di memoria con associati costi; La duplicazione ci porta alla perdita dell’integrità dei dati; i dati non sono più consistenti
  4. 4. + Dipendenza dai dati n  La struttura fisica e lo spazio dei file per i dati e record sono definiti nel codice del programma applicativo generando programmi dipendenti dai dati.
  5. 5. + Formato dei file incompatibile n  Essendo la struttura dei file all’interno del programma applicativo le strutture sono dipendenti dal linguaggio del programma applicativo. n  La struttura del file generata da un programma scritto in COBOL può essere diversa dalla struttura di un file generato da un programma scritto in C.
  6. 6. + Numero fisso di interrogazioni / proliferazione di programmi applicativi n  I sistemi basati su file dipendono molto dallo sviluppatore dell’applicazione che deve scrivere qualsiasi interrogazione o report gli venga richiesto. n  n  Risultato n  Il tipo di interrogazioni e report che possono essere prodotti è fisso n  Proliferazione di file e programmi applicativi n  Spesso alcuni tipi di funzionalità venivano omesse n  Nessuna forma di sicurezza e integrità dei dati n  Recovery, nel caso di HW/SW failure, è limitato o inesistente n  L’accesso ai file è ristretto ad un utente per volta Ad ogni modo il risultato non era accettabile.
  7. 7. + Limiti dei sistemi basati su file Isolamento e separazione dei file Duplicazione dei dati Dipendenza dai dati Formato dei file incompatibile Numero fisso di interrogazioni / proliferazione di programmi applicativi
  8. 8. + Database n  Tutte le limitazioni dell’approccio basato su file può essere attribuito a due fattori. n  n  n  La definizione dei dati è conficcata all’interno del programma applicativo, piuttosto che essere separata e indipendente Non c’è alcun controllo sull’accesso e la manipolazione dei dati al di là di quanto imposto dal programma applicativo Cosa è emerso successivamente sono: n  Database n  Database Management System, DBMS
  9. 9. + Database Database •  Una collezione condivisa di dati correlati e una descrizione di questi dati, disegnati per soddisfare il bisogno di informazioni di una organizzazione 1.  È un singolo e possibilmente ampio magazzino di dati che possono essere usati simultaneamente da più utenti 2.  È una risorsa condivisa 3.  Contiene sia dati che la descrizione degli stessi; “selfdescribing collection of integrated records”
  10. 10. + DBMS DBMS •  Un sistema software che abilita gli utenti a creare, mantenere e controllare l’accesso al database n  Consente la definizione di un database attraverso il Data Definition Language (DDL) n  Consente l’inserimento, l’aggiornamento, la cancellazione e il recupero dei dati dal database attraverso il Data Manipulation Language (DML)
  11. 11. + Programmi applicativi Programma applicativo n  •  Un programma per computer che interagisce con il database inviando appropriate richieste al DBMS. Gli utenti interagiscono con il database attraverso un certo numero di programmi applicativi per creare manutenere e generare informazioni
  12. 12. + Dove sono i Database? n  Esempi: n  n  Ricerca di un libro nel catalogo di una biblioteca Richiesta di un certificato n  Spesa al supermercato Operazioni allo sportello bancario n  Pagamenti autostradali con Telepass e Viacard n  Prenotazioni on-line n 
  13. 13. + Dimensioni n  Un database può avere qualsiasi dimensione e complessità n  Esempio: n  n  Una rubrica telefonica personale poche centinaia di elementi Il database dei contribuenti Americani e delle relative dichiarazioni dei redditi ha delle dimensioni notevoli: n  100 milioni di contribuenti n  Mediamente 5 moduli per dichiarazione n  200 byte per ogni modulo n  100 milioni x 5 x 200 = 100.000.000.000 = 100 Gb n  Se vogliamo tenere traccia delle ultime 4 dichiarazioni avremo 4 x 100 Gb = 400 Gb n  Tutta questa quantità di dati deve essere organizzato e gestito in modo adeguato per fare in modo che gli utenti li possano interrogare, recuperare ed aggiornare.
  14. 14. + DBMS n  È il sistema di gestione dei database, composto da un insieme di programmi che consentono di creare di creare e manutenerle n  Un DBMS permette di: n  n  n  Definire un Database, costruire lo “schema” del DB specificando per i dati da memorizzare n  Le strutture n  I tipi di dati n  I vincoli Popolare il Database, inserire e memorizzare i dati su dispositivi di memoria di massa Manipolare il Database, n  Interrogare il database n  Aggiornare i dati (modifica e cancellazione) n  Generare report per i dati
  15. 15. + DBMS n  Un DBMS non è un Database n  n  n  Un DBMS è un dispositivo per gestire DB Un DB è un insieme di dati E’ la stessa differenza che esiste tra Word (applicativo) e il file con estensione .doc (dati)
  16. 16. + Database, vantaggi n  Controllo della ridondanza dei dati, prova a eliminare la ridondanza integrando i file in modo tale che più copie dello stesso dato non venga memorizzato. Non la elimina del tutto ma controlla la quantità di ridondanza interna n  Consistenza dei dati, eliminando o controllando la ridondanza riduciamo il rischio di inconsistenza n  Condivisione dei dati, il database appartiene all’intera organizzazione. Una nuova applicazione si può basare sulle funzionalità di un DBMS esistente n  Integrità dei dati, si riferisce alla validità e consistenza dei dati memorizzati. Espressa in relazione ai vincoli (vedi dopo) n  Sicurezza, è la protezione del database per gli accessi non autorizzati n  Privacy, ciascun utente, identificato con un codice di accesso, viene abilitato a svolgere le sue operazioni n  Servizi di backup e recovery
  17. 17. + Database, svantaggi n  Complessità nella gestione della risorsa DBMS n  Dimensione, la complessità e l’insieme delle funzionalità del DBMS lo rende un software estremamente grande, occupando molti megabyte di spazio disco n  Costo, il costo del DBMS varia in modo significativo in base all’ambiente e alle funzionalità fornite. n  Performace, essendo un software generale che serve più applicazioni si può avere l’effetto di rallentare l’applicazione stessa, tuning.
  18. 18. + Figura coinvolte n  Database Designer, è colui che progetta il DB in base ai requisiti che gli vengono forniti. È responsabile dell’individuazione dei dati da memorizzare nel DB ed è responsabile delle scelte strutturali n  Database Administrator, è il responsabile per le autorizzazioni degli accessi, coordina e controlla il suo uso.
  19. 19. + Il modello dei dati n  I modelli dei dati per l’implementazione di un Database si distinguono in n  n  Modello Gerarchico, utilizza strutture dati ad albero Modello Reticolare, utilizza strutture dati reticolari (grafo) n  Modello Relazionale, utilizza strutture dati di tipo tabella, più tabelle sono messe in relazione tra loro n  Modello a Oggetti, estende ai DB il paradigma di programmazione ad oggetti.

×