A.D'Atri 11/04/2003 Dati, Basi di Dati DBMS [email protected] base di dati (database) n raccolta ((organizzata, organizzata, persistente, condivisa, di notevoli dimensioni e varietà)) di dati la cui gestione è varietà affidata ad un sistema di elaborazione (in generale tramite un computer “database server” accessibile in un ambiente distribuito in rete a più stazioni di lavoro client client)) “Base” e “Banca” n fondamento del sistema informativo aziendale ad essa associato n a volte anche detta “BANCA “BANCA DATI” DATI ” udeposito di preziosa risorsa aziendale uanche se il termine banca dati viene preferibilmente associato a servizi informativi “di mercato” (o di intermediazione) disponibili via rete DB e DBMS 1 A.D'Atri 11/04/2003 tipi di dato “tradizionali” formattato: strutturato in modo predefinito e composto da: n tipi atomici (non strutturati e non interpretati): unumeri di vario genere F interi, in virgola fissa o mobile, intervalli, semplice/multipla precisione, ... ucarattere e voci alfanumeriche F lunghezza fissa o di limitata variabilità udata/orario n uvalori logici (sì/no, vero/falso) “booleani” tipi standard aggregati ed/od interpretati: uvaluta, colori, ecc. …altri tipi di dato n testo (libero): usequenza di caratteri di lunghezza arbitraria usignificato indipendente dal formato di visualizzazione o dalle singole voci componenti (contestualità) ucon associate operazioni tipiche di ricerca ed aggiornamento (word processing) text database: n grande raccolta di documenti testuali (leggi, riviste, libri,…. biblioteca) n strutture di accesso facilitato (indici) n ricerche basate sul contenuto (parole chiave, contestuali, information retrieval retrieval)) n strumenti di ingegneria linguistica (traduzione automatica, riconoscimento e sintesi del parlato,….) DB e DBMS 2 A.D'Atri 11/04/2003 …altri tipi di dato n immagini di vario tipo: uicona 1000 udiagramma 1 ° Est Ovest Nord udisegno umappa geografica ufoto digitalizzata tipiche F zoom, ritaglio, riempimento, ecc. uoperazioni image e video database: n raccolta immagini (vettoriali o pixel pixel-array,, 2D/3D, fisse ed in movimento) array n image o video server, jukejuke - box, sistemi PACS, schede grafiche (bassi costi e alte prestazioni dispositivi e S/W) n una sola immagine può richiedere una memoria superiore ad un intero documento testuale …altri tipi di dato n audio e video video:: usuoni elementari (frequenza, durata, intensità,...) o compositi usequenze temporali arbitrarie di suoni usuoni sincronizzati ad immagini fisse od in movimento ues es:: videovideo-conferenza n altri dati: utattili ed olfattivi virtuale u...realtà DB e DBMS 3 A.D'Atri 11/04/2003 multimedia database: presenza combinata dati di vari tipi (documenti compositi, interazione multimediale ) n con requisiti di sincronizzazione temporale (multimedialità “forte”) n interazione multimodale : quando può avvenire contemporaneamente e indifferentemente tramite diversi media di comunicazione uomouomo- macchina n ipertext/ipermedia database: un database (in genere testuale o multimediale) con sovrapposta una struttura di adiacenza tra i dati od i documenti multimediali (o “parti” di essi) n punto di ancoraggio, link, punto di destinazione n è possibile “navigare “navigare”” in modo intuitivo (seguendo i link link)) per similarità o per consequenzialità n database and knowledge base quantità informazioni selettività e precisione strutturazione dati integrazione distribuzione prestazioni affidabilità maturità industriale tecnologia basi di dati intelligenza artificiale e basi di conoscenza risoluzione problemi difficili capacità descrittiva e deduttiva trattamento informazioni incomplete o incerte apprendimento, dialogo ed amichevolezza DB e DBMS 4 A.D'Atri 11/04/2003 origine delle basi dati n ridondanza uduplicazione informazione in più archivi (spazio sui dischi) udisallineamento dati, es es:: l’indirizzo di un cliente modificato solo in uno degli archivi clienti; un archivio con 220 dipendenti ed un altro con 199 uprocedure accesso dati (interrogazione o modifica) replicate (o riattivate riattivate)) per tutti gli archivi contenenti la stessa informazione uspreco risorse ... origine delle basi dati l’economia di scala (sviluppo interfaccie d’utente per tutti gli archivi) giustifica linguaggi specializzati ed ambienti di interazione sofisticati (usabilità ( usabilità)) n non tutti possono accedere a tutte le informazioni (privatezza ( privatezza); ); es es:: cliente bancomat non può modificare il saldo n vincoli di validità (consistenza e integrità); integrità ); es:: prima di consentire un’operazione es occorre sapere se si può effettuare in quel modo (una età negativa o che decresce) n ... origine delle basi di dati n concorrenza uaccesso contemporaneo ad una informazione (giacenza magazzino) e modifica credendo di disporne, non sapendo che altri sono collegati (vendita stesso unico articolo) n manutenzione ed affidabilità udifficile individuazione malfunzionamenti e ripristino (in caso di guasto guasto), ), non essendo centralizzati devono ripetersi su tutti gli archivi (con diverse modalità ed affidabilità) DB e DBMS 5 A.D'Atri 11/04/2003 dopo le basi di dati una sola rappresentazione evita ridondanza, disallineamento e inutili ripetizioni di operazioni n si può controllare meglio: concorrenza su dati condivisi e rispetto vincoli di integrità n l’accesso è regolato da un gestore della base dati, dati, che assicura: efficienza, usabilità, privatezza, affidabilità dei dati n DBMS: DataBase Management System u complesso sistema s/w specializzato per sviluppare e gestire una base di dati condivisa da applicazioni ed/od utenti u supera gli svantaggi causati dall’uso non integrato degli archivi u gestisce in modo centralizzato ed unificato (semplice, sicuro, efficiente) i dati e le procedure per accedere alle informazioni contenute nella base dati u coordina e controlla l’utilizzo contemporaneo da parte di più utenti gli utenti coinvolti u amministratori della base dati (dba ( dba)) ugestione globale DB, coordinano attività inter settoriali ed applicative comuni, eventualmente specializzati per settore o classe utenti tramite definizione e gestione di viste settoriali u programmatori sviluppatori di applicazioni urealizzano ((query query language , linguaggi ospite ed ambienti di interazione) in modo ottimale le funzionalità operative di uso frequente u utenti finali ed occasionali uinteragiscono con la base dati: tramite viste e semplici linguaggi di interrogazione (utenti occasionali) F indirettamente, tramite applicazioni ad hoc F direttamente DB e DBMS 6 A.D'Atri 11/04/2003 funzionalità di un DBMS u ambiente per la definizione delle strutture dei dati e delle procedure di accesso u ambiente per la interazione da parte di un utente o di un programma u sistema di gestione centralizzato dei dati u separazione di aspetti logici e fisici u controllo dell’accesso concorrente (simultaneo) ai dati u sicurezza (guasti, autorizzazioni,...) UTENTI SCHEMA ESTERNO SCHEMA LOGICO SCHEMA INTERNO architettura: i livelli di gestione ulivello interno (fisico) ulivello globale (logico) ulivello esterno (viste d’utente) uad ogni livello corrisponde uno schema (o struttura) di rappresentazione dei dati (aspetti intensionali ed estensionali) DB e DBMS 7 A.D'Atri 11/04/2003 il livello interno u “fisico fisico”: ”: dati codificati (campi (campi composti da sequenze bit o caratteri) in registrazioni (record) che compongono archivi (file) u archivi assegnati a memorie di massa (secondarie o terziarie) metodi (cammini) accesso (es. indici) u tipo di supporto usato (volume) e caratteristiche unità di accesso e del modo d’organizzare l'archivio (clusterizzazione (clusterizzazione)) u es. nastro con organizzazione sequenziale (prima di accedere ad un record occorre scorrere tutti i record precedenti) il livello logico u rappresentazione “logica” dell’intera base dati: facile da capire e usare per sviluppare applicazioni (comuni) u indipendente da scelte fisiche (non sempre comprensibili e dettate da compatibilità tecnologica, ottimizzazione prestazioni) u indipendente dalle personalizzazioni u basato su un modello logico dei dati (ed un relativo linguaggio formale) i modelli logici delle basi dati n gerarchico e reticolare (in disuso) n relazionale (il più diffuso) n orientato n basato DB e DBMS agli oggetti (emergente) sulla logica (solo di ricerca) 8 A.D'Atri 11/04/2003 il livello esterno u rappresenta come ciascun utente preferisce (o necessita) vedere ed usare i propri dati u indipendente da come i dati sono internamente, logicamente organizzati (motivi fisici o altrui) u viste (per ogni classe utenti): con le sole informazioni utili ed operazioni ammesse u personalizzazione: uno schema esterno diverso per ogni diversa classe di (o singolo) utente u maschere per visualizzare od immettere nuove informazioni, o generare documenti (rapporti): ambiente interazione i linguaggi u linguaggio definizione dati (DDL (DDL)) uper definire gli schemi interni, logici e fisici (strutture) u primitive di amministrazione uper concedere autorizzazioni, specificare salvataggi e recovery recovery,, .... u linguaggio manipolazione dati (DML (DML)) uper estrarre, inserire, cancellare, modificare i dati (query language ) che a volte include DDL e amministrazione (e.g. SQL) u interazione e visualizzazione uambiente (grafico o multimediale) tramite cui si interagisce con la base dati (anche attivando primitive del dml dml)) DB e DBMS 9