ARCHITETTURA DI UN DBMS
|
|
|
- Romolo Fiorini
- 9 anni fa
- Просмотров:
Транскрипт
1 ARCHITETTURA DI UN DBMS Modelli di dati Un approccio con basi di dati fornisce un certo livello di astrazione dei dati Nasconde i dettagli sulla memorizzazione dei dati stessi Un modello dei dati fornisce i mezzi per realizzare questa astrazione Struttura della base di dati: tipi di dati, associazioni, vincoli Operazioni di base sui dati: aggiornamenti e interrogazioni Operazioni definite dall utente
2 Categorie di modelli di dati Due estremi Modelli di dati concettuali (alto livello, semantici) Vicini al modo in cui gli utenti percepiscono i dati Modelli di dati fisici (basso livello, interno) Dettagli sul modo in cui i dati sono memorizzati dal computer Fra i due estremi Modelli di dati rappresentabili Concetti che possono essere compresi dagli utenti finali, ma non lontani dal modo in cui i dati sono memorizzati nel computer Modelli di dati autodescrittivi Descrizione dei dati associata ai dati (XML, e alcuni modelli NoSQL) Modelli di dati concettuali Entità Un oggetto (o concetto) del mondo reale Attributo Proprietà di interesse delle entità Associazione fra due o più entità Rappresenta una interazione fra le entità
3 Modelli di dati implementabili Rappresentano i dati usando strutture di record Modello relazionale Oggi il più diffuso Modello reticolare e modello gerarchico Molto usati nel passato Modello a oggetti Più vicino ai modelli concettuali Schemi e istanze Lo schema descrive la struttura della base di dati (aspetto intensionale), sostanzialmente invariante nel tempo Diagramma di schema rappresenta la struttura di ciascun tipo di record Lo stato della base di dati è l insieme dei dati in una base di dati in un determinato istante (aspetto estensionale) Il primo inserimento di dati viene chiamato popolamento Il DBMS deve garantire che ogni stato della base di dati sia valido spesso chiamato anche istanza o snapshot
4 Schema di una base di dati Architettura a tre livelli
5 Architettura a tre livelli spesso chiamato livello logico Indipendenza logica dei dati È la capacità di poter cambiare lo schema logico senza dover cambiare gli schemi esterni o i programmi applicativi Il progettista deve modificare coerentemente solo la definizione della vista e i mapping fra livelli I programmi applicativi che fanno riferimento agli schemi esterni non devono essere modificati Si possono modificare i vincoli nello schema logico senza influenzare gli schemi esterni o i programmi applicativi che fanno riferimento agli schemi esterni
6 Indipendenza fisica dei dati È la capacità di cambiare lo schema interno senza dover cambiare lo schema logico o gli schemi esterni. Cambiamenti allo schema interno Riorganizzazione file per creare strutture di accesso addizionali Riorganizzazione file per migliorare recupero e aggiornamento La realizzazione dell indipendenza dei dati logica e fisica può causare inefficienze (rallentamenti) Le richieste a ciascun livello devono essere tradotte in richieste al livello inferiore Linguaggi per definire gli schemi DDL (Data Definition Language) Per definire lo schema logico. La maggior parte dei DBMS usa questo linguaggio anche per la definizione dello schema interno SDL (Storage Definition Language) Usato dai DBMS che mantengono una netta distinzione fra livello logico e interno per specificare lo schema interno. Il mapping fra livello logico e interno può essere specificato in DDL o SDL VDL (View Definition Language) Dovrebbe esistere in un DBMS aderente all architettura a tre livelli. Nella pratica le viste sono definite tramite DDL
7 Linguaggi per la manipolazione dei dati DML (Data Manipulation Language) Per recuperare i dati, inserire nuovi dati, modificare o cancellare dati esistenti DML di alto livello (non-procedurale) Le operazioni possono essere specificate direttamente al DBMS tramite un terminale Le operazioni possono essere incapsulate (embedded) all interno di un linguaggio di programmazione (un precompilatore le estrae) DML di basso livello (procedurale) Deve essere incapsulato in un linguaggio di programmazione DML di basso e alto livello DML di basso livello record-at-a-time perché recuperano un record alla volta. Usano i costrutti iterativi tipici dei linguaggi di programmazione DML di alto livello set-oriented perché possono recuperare molti record in una singola istruzione Sono detti linguaggi dichiarativi perché specificano cosa recuperare e non come
8 Linguaggi usati dai DBMS Nei DBMS attuali DDL, SDL, VDL e DML non sono considerati linguaggi distinti (la distinzione è solo logica) Ad esempio, SQL (standard) consente di specificare operazioni di DDL, VDL e DML di alto livello La definizione della memorizzazione fisica è tipicamente mantenuta separata La versione attuale di SQL non prevede operazioni SDL (erano un componente di SQL nelle prime versioni) Linguaggi di programmazione e linguaggi dei DBMS Si parla di incapsulamento se, ad esempio, si inseriscono istruzioni SQL in C Una base di dati orientata agli oggetti fornisce invece un unico linguaggio integrato per la scrittura di applicazioni e per le funzionalità del DBMS Ad esempio C++ con opportune estensioni Alcuni DBMS relazionali offrono linguaggi integrati (ad esempio, PL/SQL di Oracle)
9 Utenti della base di dati e linguaggi Utenti casuali DML di alto livello Programmatori DML incapsulato Utenti non sofisticati Interfacce amichevoli Interfacce dei DBMS Interfacce a menu per la navigazione Guida passo-passo nella formulazione dell interrogazione Interfacce a moduli (form) Per utenti non sofisticati: si riempiono i campi in un modulo pre-definito Interfacce grafiche L utente costruisce l interrogazione manipolando un diagramma dello schema (ad es. usando un mouse)
10 Interfacce dei DBMS (cont.) Interfacce in linguaggio naturale Interfacce vocali Interfacce per utenti non esperti Viene definito un piccolo insieme di comandi abbreviati (ad esempio, i tasti funzione) per le operazioni più frequenti Cassieri di banca Terminali di prenotazione voli Interfacce per il DBA Comandi privilegiati di amministrazione Ambiente di un DBMS
11 Moduli di un DBMS Programmi di utilità di un DBMS Sono di ausilio alle operazioni del DBA Caricamento dati da file esistenti (strumenti di conversione) Backup: copia di sicurezza della base di dati su nastro Riorganizzazione dei file per incrementare le prestazioni Monitoraggio delle prestazioni per programmare eventuali operazioni di manutenzione Altri strumenti per ordinare i file, gestire la compressione dei dati, controllare l accesso da parte degli utenti, ecc.
12 Strumenti, ambienti applicativi e comunicazione Strumenti CASE (Computer Aided Software Engineering) Per la progettazione di basi di dati Dizionario dei dati (Deposito di informazioni) Per immagazzinare schemi, vincoli, decisioni di progettazione, standard d uso, ecc. Ambienti di sviluppo applicazioni Software di comunicazione Architettura fisica centralizzata
13 Architettura logica client/server Architettura fisica client/server Comunicazioni fra applicazioni client e DataBase Server ODBC (Open DataBase Connectivity)
14 Architettura logica a tre livelli Classificazione dei DBMS Rispetto al modello logico dei dati Relazionale Uso di tabelle A oggetti Uso di classi, gerarchie, metodi Relazionale e a oggetti Modello relazionale esteso agli oggetti Modelli NoSQL key-value, document based, column nased, graph, XML... Modelli di vecchia generazione Reticolare, Gerarchico
15 Classificazione dei DBMS (cont.) Rispetto al numero di utenti Singolo utente (DBMS per uso personale) Multiutente Rispetto al numero di siti in cui è distribuita la base di dati Centralizzato Distribuito DDBMS omogenei usano lo stesso software in più siti DBMS federati (software middleware per accedere a diverse basi di dati sviluppate autonomamente) Classificazione dei DBMS (cont.) Rispetto al costo Open-source e supporto da terze parti DBMS per uso personale DBMS Enterprise Rispetto alle opzioni per i cammini di accesso ai file Rispetto alla finalità General-purpose Special-purpose (ad es., prenotazioni aeree, elenchi telefonici, ecc.) consentono l ottimizzazione delle prestazioni
16 EVOLUZIONE DEL MERCATO DEI DBMS Gartner 2013 Magic Quadrant Operational DBMS
17 Gartner 2014 Magic Quadrant Operational DBMS Gartner 2015 Magic Quadrant Operational DBMS
18 Gartner 2016 Magic Quadrant Operational DBMS
CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI
CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI Introduzione alle basi di dati (2) 2 Modelli dei dati, schemi e istanze (1) Nell approccio con basi di dati è fondamentale avere un certo livello di
Elena Baralis 2007 Politecnico di Torino 1
Introduzione Sistemi informativi 2 Introduzione Base di dati Modello dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS 4 6 2007 Politecnico di Torino 1 7 8 9 10 Sistema informatico Nei sistemi informatici,
Basi di Dati. Concetti e Principi Generali. Maria Mirto
Basi di Dati Concetti e Principi Generali Maria Mirto Organizzazione dei Dati Archivi o file Procedure di accesso in qualunque linguaggio di programmazione Duplicazione dati: ridondanza incoerenza formati
Introduzione alle Basi di Dati
Introduzione alle Basi di Dati Angelo Chianese, Vincenzo Moscato, Antonio Picariello, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 1 Appunti dalle lezioni SQL
Prof. Pagani corrado SISTEMI INFORMATIVI E DATABASE
Prof. Pagani corrado SISTEMI INFORMATIVI E DATABASE ARCHIVIAZIONE DEI DATI I vari S.O. e i cosiddetti linguaggi ad alto livello mettono a disposizione varie tipologie di file per l archiviazione e gestione
Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza
Definizione 1 Lezione 2 Le basi di dati Gli archivi di dati Organizzato in modo integrato attraverso tecniche di modellazione di dati Gestiti su memorie di massa Con l obiettivo Efficienza trattamento
DBMS. Alice Pavarani
DBMS Alice Pavarani DBMS Insieme di programmi che offrono gli strumenti per gestire una base di dati Permette di: definire la struttura delle tabelle recuperare le informazioni manipolare i dati memorizzati
Basi di dati. Elena Baralis Politecnico di Torino
Libri di testo Atzeni, Ceri, Paraboschi, Torlone, Basi di dati, 2 a ed., McGraw Hill, 1999. Baralis, Belussi, Psaila, Basi di dati: temi d esame svolti, Esculapio, 2000. Introduzione - 2 Introduzione Sistema
BASI DI DATI. basi di dati - introduzione ai sistemi informativi 1
BASI DI DATI basi di dati - introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
DBMS. Affidabilità. Privatezza dei dati. Efficienza. Efficacia. Un DBMS deve garantire:
DBMS Un DBMS deve garantire: Affidabilità Privatezza dei dati Efficienza Efficacia DBMS Affidabilità Un DBMS deve garantire di poter mantenere intatto il suo contenuto, anche in caso di malfunzionamento.
SISTEMI INFORMATIVI AZIENDALI. introduzione ai sistemi informativi 1
SISTEMI INFORMATIVI AZIENDALI introduzione ai sistemi informativi 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione delle informazioni aziendali e' essenziale
INFORMATICA. Prof. MARCO CASTIGLIONE ITS Tito Acerbo - PESCARA
INFORMATICA Prof. MARCO CASTIGLIONE ITS Tito Acerbo - PESCARA Database 1. ARCHIVI ITS Tito Acerbo - PE INFORMATICA Prof. MARCO CASTIGLIONE 2 1. Archivi ARCHIVIO Permanenza Razionalità Sistematicità Insieme
DOCENTE PROF. ALBERTO BELUSSI. Anno accademico 2010/11
Basi di dati DOCENTE PROF. ALBERTO BELUSSI Anno accademico 2010/11 Informazioni generali sull organizzazione Insegnamento annuale su due semestri Orario I Semestre Lunedì 11.30 13.30 (aula B) Martedì 11.30
Fondamenti di Teoria delle Basi di Dati
Fondamenti di Teoria delle Basi di Dati Riccardo Torlone Parte 1: Introduzione Obiettivi La conoscenza della teoria delle basi di dati? No (o non solo) Piuttosto: Come si può affrontare un problema in
Basi di dati Basi di dati per bioinformatica
Basi di dati Basi di dati per bioinformatica DOCENTI PROF. ALBERTO BELUSSI PROF CARLO COMBI Anno accademico 2013/14 Organizzazione degli insegnamenti 3 Basi di dati Basi di dati per Bioinformatica Teoria
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : Modelli dei Dati Prof. Alberto Postiglione Università degli
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
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 Informazioni generali sull organizzazione Insegnamento annuale su due semestri Orario I Semestre Lunedì 11.30 13.30
INTRODUZIONE. Prof. Fabio A. Schreiber. Dipartimento di Elettronica e Informazione Politecnico di Milano PROGRAMMA DEL CORSO
BASI DI INTRODUZIONE Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano PROGRAMMA DEL CORSO INTRODUZIONE GENERALITA SULLE BASE DI E I LORO SISTEMI DI GESTIONE MODELLI
SISTEMI INFORMATIVI E DATABASE
SISTEMI INFORMATIVI E DATABASE SISTEMA INFORMATIVO AZIENDALE (S.I.) In una realtà aziendale si distingue: DATO elemento di conoscenza privo di qualsiasi elaborazione; insieme di simboli e caratteri. (274,
V. Moriggia Modelli di Base Dati. Modelli di Base Dati. a.a. 2001/2002 4.1
Modelli di Base Dati 4 Un DBMS: Access a.a. 2001/2002 4.1 DBMS 4.2 DBMS = Data Base Management System Software per la costruzione e la gestione di una base dati Esempi di DBMS: Oracle, MySQL, SQLServer,
SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:
SQL e linguaggi di programmazione L interazione con l ambiente SQL può avvenire in 3 modi: in modo interattivo col server attraverso interfacce o linguaggi ad hoc legati a particolari DBMS attraverso i
Cap. 1-I 1 I sistemi informatici
Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill Hill,, 2007 Ricevimento studenti Lunedì ore 11-13 Didattica su web Si interagisce
ITI M. FARADAY. Programmazione a. s
ITI M. FARADAY Programmazione a. s. 2018-2019 Disciplina: INFORMATICA Indirizzo: INFORMATICA E TELECOMUNICAZIONI Classi: Quinta A Quinta B Ore settimanali previste: 6 (3 ora Teoria - 3 ore Laboratorio)
Introduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1
ECDL - Database Introduzione European Computer Driving Licence - Modulo 5 - Database LEZIONE 1 Informazioni sul corso orario: Giovedì - 14.30-16.30 materiale: http://www.fotoboni.com/carlo/ docente: [email protected]
Cap. 1-I 1 I sistemi informatici
Libro di testo A. Chianese,V. Moscato, A. Picariello, L. Sansone Basi di dati per la gestione dell informazione McGraw-Hill, 2007 Informazioni sul corso http://www.docenti.unina.it/lucio.sansone Ricevimento
Gestione dati e archivi
Gestione dati e archivi Barbara Carminati [email protected] Aspetti Introduttivi 1 Introduzione al corso Barbara Carminati, email: [email protected] Ricevimento: in coda alle
SISTEMA INFORMATIVO E SISTEMA INFORMATICO. Sistema informativo e sistema informatico
BASE DI DATI Una base di dati, detta anche database, può essere considerata come una raccolta di dati logicamente correlati tra di loro e utilizzati per modellare una determinata realtà. In questo caso,
Informatica di Base - 6 c.f.u.
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Basi di Dati Sistema informativo Componente
Basi di dati Modelli e linguaggi di interrogazione
Paolo Atzeni Stefano Ceri Stefano Paraboschi Riccardo Torlone Basi di dati Modelli e linguaggi di interrogazione web site McGraw-Hill IUAV - VENEZIA H 9882 BIBLIOTECA CENTRALE Paolo Atzeni Stefano Ceri
Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor
Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è
Basi di dati. Maurizio Lenzerini. Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza
Basi di dati Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2003/2004 Canale A-L http://www.dis.uniroma1.it/ lenzerini/didattica/basididati/
