ARCHITETTURA DI UN DBMS

Размер: px
Начинать показ со страницы:

Download "ARCHITETTURA DI UN DBMS"

Транскрипт

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 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

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 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 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 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

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 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

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 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. 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 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 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

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 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 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 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 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

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 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

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. 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

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 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

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

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 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

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.

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

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 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 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/

Подробнее