SlideShare ist ein Scribd-Unternehmen logo
1 von 5
Sistema di gestione di basi di dati

                      Data Base Management System — DBMS
Sistema (prodotto software) in grado di gestire collezioni di dati che siano (anche) :

   ‐   Grandi ( di dimensioni molto maggiori della memoria centrale dei sistemi di calcolo
       utilizzati)
   ‐   Persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che
       le utilizzano)
   ‐   Condivise (utilizzate da applicazioni diverse)
       Garantendo :
   ‐   Affidabilità (resistenza a malfunzionamenti hardware e software)
   ‐   Privatezza (con una disciplina e controllo degli accessi)
   ‐   Efficienza (utilizzo al meglio delle risorse di spazio e tempo del sistema)
   ‐   Efficacia (rendere produttive le attività dei suoi utilizzatori)


   Base di dati gestita dal DBMS
   Il DBMS è l’unico responsabile della gestione della base di dati: i dati sono accessibili
   all’esterno solo tramite il DBMS




Condivisione
   ‐   A ciascun settore o attività del sistema organizzativo corrisponde un (sotto-)sistema
       informativo, ed è comune che esistano sovrapposizioni fra i dati di interesse dei vari
       settori.
   ‐   Una base di dati è una risorsa integrata, condivisa fra i vari settori. L’integrazione e la
       condivisione permettono di ridurre la ridondanza(evitando ripetizioni) e, di conseguenza, le
       possibilità di incoerenza (o inconsistenza) fra i dati.
   ‐   Poiché la condivisione non è mai completa (o comunque non opportuna) i DBMS
       prevedono meccanismi di definizione della privatezza dei dati e di limitazioni all’accesso
       (autorizzazioni).
‐   La condivisione richiede un opportuno coordinamento degli accessi: controllo della
       concorrenza.


   Efficienza

      Si misura (come in tutti i sistemi informatici) in termini di tempo di esecuzione(tempo di
       elaborazione) e spazio di memoria(principale e secondaria).
      L’efficienza è il risultato della qualità del DBMS e delle applicazioni che lo utilizzano.
      I DBMS, a causa della varietà di funzioni, non sono necessariamente più efficienti dei file
       system.

Catalogo o Dizionario dei dati

Nei DBMS esiste una porzione della base di dati (il catalogo o dizionario ) che contiene una
descrizione centralizzata dei dati che può essere utilizzata dai vari programmi.
Contiene informazioni che riguardano:
   ‐ data : nomi delle tabelle, nomi degli attributi, lunghezza degli attributi, numero di record in
       ogni tabella
   ‐ relationship: legami tra dati e transazioni per la determinazione di quali transazioni sono
       coinvolte se ad esempio alcune definizioni dei dati vengono modificate
   ‐ contraints (vincoli) sui dati ad esempio il range dei valori permessi
   ‐ informazioni dettagliate del database fisico e della memoria, percorsi per l’accesso , file e
       lunghezza dei record
   ‐ autorizzazione agli accessi : permessi e diritti d’accesso
   ‐ statistiche sull’utilizzo

Importanza del dizionario

è importante per 2 motivi:
    ‐ migliorare il controllo del DBA sulle informazioni
    ‐ aiuto nella documentazione del disegno del database, di ogni fase e decisione
    ‐ aiuto nella produzione di report di dati utilizzati
    ‐ promuove l’indipendenza dei dati ad es in caso di aggiunta o modifica delle strutture nel
       database i programmi non devono essere modificati
Moduli componenti un DBMS
Un DBMS è quindi un sistema software complesso. Vediamo ora i tipi di componenti software che
lo costituiscono e i tipi di software di sistema con cui il DBMS interagisce.



Nella Figura sono illustrati, in forma semplificata, i tipici componenti di un DBMS. La figura è divisa
in due parti. La parte superiore rappresenta le varie tipologie di utenti di un sistema di basi di dati e
le rispettive interfacce. La parte inferiore mostra i componenti interni di un DBMS, responsabili
della memorizzazione dei dati e dell’esecuzione delle transazioni.




La base di dati e il catalogo del sono solitamente memorizzati su disco. L’accesso al disco è
controllato essenzialmente dal sistema operativo, che ne pianifica l’input/output.
Un gestore dei dati memorizzati, modulo del DBMS a più alto livello, controlla l’accesso alle
informazioni del DMBS memorizzate su disco, siano esse parte della base di dati o del catalogo.
 Analizziamo dapprima la parte della figura, che mostra le interfacce per l’amministratore (DBA),
quelle degli utenti occasionali che lavorano con interfacce interattive per formulare interrogazioni,
quelle dei programmatori applicativi che utilizzano linguaggi ospite e quelle degli utenti non esperti
che immettono dati sotto forma di parametri di transazioni predefinite. Lo staff di amministrazione
lavora alla definizione della base di dati e alla sua manutenzione, modificando le definizioni per
mezzo del linguaggio DDL e di altri comandi privilegiati.

Il compilatore DDL elabora definizioni di schema, specificate nel DDL, e memorizza descrizioni
degli schemi (metadati) nel catalogo del DBMS. Il catalogo include informazioni come i nomi e le
dimensioni dei file, i nomi e i tipi di dato delle voci, i dettagli di memorizzazione di ciascun file,
informazioni sul mapping tra i vari schemi e vincoli, oltre a molti altri tipi di informazioni necessari ai
moduli del DBMS. I moduli software del DBMS cercano, dunque, le informazioni di catalogo
quando ne hanno bisogno.
Utenti occasionali e soggetti che necessitano saltuariamente di estrarre informazioni dalla base di
dati utilizzano delle tipologie d’interfaccia che nella figura sono chiamate interfacce per
interrogazioni interattive.
Non sono esplicitamente rappresentate interazioni basate su menu o form che possono generare
l’interrogazione interattiva in modo automatico. Queste interrogazioni vengono trasformate in una
forma interna dal compilatore delle interrogazioni che le scompone e ne verifica la correttezza
delle operazioni rispetto al modello, ai nomi degli elementi e così via. Tale interrogazione interna
viene poi ottimizzata dall’ottimizzatore delle interrogazioni. Tra l’altro, l’ottimizzatore delle
interrogazioni si occupa di riorganizzare ed eventualmente di riordinare le operazioni, eliminare le
ridondanze e utilizzare gli algoritmi e gli indici opportuni durante l’esecuzione. L’ottimizzatore delle
interrogazioni consulta il catalogo per ottenere informazioni statistiche e altre informazioni relative
alla memorizzazione fisica dei dati, e infine genera il codice eseguibile che compie le operazioni
necessarie all’interrogazione e le chiamate al processore runtime della base di dati.
I programmatori applicativi scrivono programmi in linguaggi ospite come ad esempio Java vb, poi
passati a un precompilatore.
Il precompilatore estrae comandi DML da un programma applicativo scritto in un linguaggio
ospite di programmazione. Questi comandi sono inviati al compilatore DML per la compilazione in
codice oggetto per l’accesso alla base di dati. Il resto del programma è inviato al compilatore del
linguaggio ospite. Quindi il codice oggetto per i comandi DML e quello per il resto del programma
sono messi in collegamento (linked), formando una transazione standard il cui codice eseguibile
include chiamate al processore di esecuzione della base di dati. Queste transazioni predefinite
sono di grande utilità per gli utenti non esperti che devono semplicemente fornire i parametri delle
transazioni per fare in modo che queste vengano eseguite ripetutamente come transazioni
separate. Ne è un esempio la transazione di prelievo da conto corrente bancario in cui il numero di
conto e l’importo possono essere forniti come parametri.
Nella parte inferiore della Figura è rappresentato il processore runtime della base di dati che si
occupa di eseguire
1) i comandi privilegiati,
2) i piani di esecuzione delle interrogazioni e
3) le transazioni parametriche predefinite con specifici parametri.

 Il processore interagisce con il dizionario di sistema su cui può intervenire aggiornando le
statistiche. Interagisce con il gestore dei dati memorizzati, il quale a sua volta usa i servizi di base
del sistema operativo per realizzare operazioni di input/output di basso livello fra il disco e la
memoria principale. Si occupa degli altri aspetti relativi al trasferimento dati come la gestione dei
buffer in memoria principale. Alcuni DBMS possiedono il proprio modulo di gestione dei buffer,
mentre altri sfruttano le funzionalità del sistema operativo. In questa figura abbiamo rappresentato
separatamente i sottosistemi di controllo della concorrenza e di backup/recovery. Essi sono
integrati nel processore runtime della base di dati per scopi di gestione delle transazioni.
Oggigiorno è prassi comune che il programma client che accede al DBMS venga eseguito su un
calcolatore diverso da quello su cui si trova la base di dati.
Il primo è chiamato client e il secondo server della base di dati.
 In alcuni casi il client accede a un calcolatore intermedio, detto server delle applicazioni
(application server), che a sua volta accede al server della base di dati.

Il DBMS interagisce con il sistema operativo quando sono necessari accessi al disco (alla base di
dati o al catalogo). Se il sistema di elaborazione è condiviso da molti utenti, il sistema operativo
pianificherà le richieste di accesso al disco e le elaborazioni provenienti dal DBMS insieme con gli
altri processi. D’altra parte, se il sistema di elaborazione è destinato principalmente al server della
base di dati, sarà il DBMS a controllare il trasferimento delle pagine da disco ai buffer della
memoria principale. Il DBMS interagisce anche con i compilatori per i linguaggi di programmazione
ospite, e con server di applicazioni e programmi client che sono eseguiti su macchine diverse
attraverso l’interfaccia di rete del sistema.

Weitere ähnliche Inhalte

Ähnlich wie Dbms

Basi di dati e gis n
Basi di dati e gis nBasi di dati e gis n
Basi di dati e gis n
imartini
 
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
laboratoridalbasso
 
Information Technology Law
Information Technology LawInformation Technology Law
Information Technology Law
Alessandro Abate
 

Ähnlich wie Dbms (20)

3 database dbms
3 database dbms3 database dbms
3 database dbms
 
Corso access 2010
Corso access 2010Corso access 2010
Corso access 2010
 
Database - Appunti teorici
Database - Appunti teoriciDatabase - Appunti teorici
Database - Appunti teorici
 
Database Data Aggregator
Database Data AggregatorDatabase Data Aggregator
Database Data Aggregator
 
Hosting e Database: le funzionalità di MySQL e MsSQL #TipOfTheDay
Hosting e Database: le funzionalità di MySQL e MsSQL  #TipOfTheDayHosting e Database: le funzionalità di MySQL e MsSQL  #TipOfTheDay
Hosting e Database: le funzionalità di MySQL e MsSQL #TipOfTheDay
 
noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]
 
Basi di dati e gis n
Basi di dati e gis nBasi di dati e gis n
Basi di dati e gis n
 
Master Informatica del Testo – Edizione elettronica - Arezzo - 2012
Master Informatica del Testo – Edizione elettronica - Arezzo - 2012Master Informatica del Testo – Edizione elettronica - Arezzo - 2012
Master Informatica del Testo – Edizione elettronica - Arezzo - 2012
 
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
Ldb 25 strumenti gis e webgis_2014-05-26 vaira - architetture dei sistemi inf...
 
Documento seed dms
Documento seed dmsDocumento seed dms
Documento seed dms
 
Information Technology Law
Information Technology LawInformation Technology Law
Information Technology Law
 
Note di Data Warehouse e Business Intelligence - Tecniche di Naming Conventio...
Note di Data Warehouse e Business Intelligence - Tecniche di Naming Conventio...Note di Data Warehouse e Business Intelligence - Tecniche di Naming Conventio...
Note di Data Warehouse e Business Intelligence - Tecniche di Naming Conventio...
 
Business Intelligence & Analytics
Business Intelligence & AnalyticsBusiness Intelligence & Analytics
Business Intelligence & Analytics
 
Utilizzo dei principali comandi di Mysql
Utilizzo dei principali comandi di MysqlUtilizzo dei principali comandi di Mysql
Utilizzo dei principali comandi di Mysql
 
Sist op
Sist opSist op
Sist op
 
Sistemi Operativi
Sistemi OperativiSistemi Operativi
Sistemi Operativi
 
Basi Di Dati 01
Basi Di Dati 01Basi Di Dati 01
Basi Di Dati 01
 
MongoDB
MongoDBMongoDB
MongoDB
 
01 Intro07
01 Intro0701 Intro07
01 Intro07
 
3wCORE... il gestionale Web su misura per il tuo Business
3wCORE... il gestionale Web su misura per il tuo Business3wCORE... il gestionale Web su misura per il tuo Business
3wCORE... il gestionale Web su misura per il tuo Business
 

Kürzlich hochgeladen

case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 

Kürzlich hochgeladen (16)

case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 

Dbms

  • 1. Sistema di gestione di basi di dati Data Base Management System — DBMS Sistema (prodotto software) in grado di gestire collezioni di dati che siano (anche) : ‐ Grandi ( di dimensioni molto maggiori della memoria centrale dei sistemi di calcolo utilizzati) ‐ Persistenti (con un periodo di vita indipendente dalle singole esecuzioni dei programmi che le utilizzano) ‐ Condivise (utilizzate da applicazioni diverse) Garantendo : ‐ Affidabilità (resistenza a malfunzionamenti hardware e software) ‐ Privatezza (con una disciplina e controllo degli accessi) ‐ Efficienza (utilizzo al meglio delle risorse di spazio e tempo del sistema) ‐ Efficacia (rendere produttive le attività dei suoi utilizzatori) Base di dati gestita dal DBMS Il DBMS è l’unico responsabile della gestione della base di dati: i dati sono accessibili all’esterno solo tramite il DBMS Condivisione ‐ A ciascun settore o attività del sistema organizzativo corrisponde un (sotto-)sistema informativo, ed è comune che esistano sovrapposizioni fra i dati di interesse dei vari settori. ‐ Una base di dati è una risorsa integrata, condivisa fra i vari settori. L’integrazione e la condivisione permettono di ridurre la ridondanza(evitando ripetizioni) e, di conseguenza, le possibilità di incoerenza (o inconsistenza) fra i dati. ‐ Poiché la condivisione non è mai completa (o comunque non opportuna) i DBMS prevedono meccanismi di definizione della privatezza dei dati e di limitazioni all’accesso (autorizzazioni).
  • 2. La condivisione richiede un opportuno coordinamento degli accessi: controllo della concorrenza. Efficienza  Si misura (come in tutti i sistemi informatici) in termini di tempo di esecuzione(tempo di elaborazione) e spazio di memoria(principale e secondaria).  L’efficienza è il risultato della qualità del DBMS e delle applicazioni che lo utilizzano.  I DBMS, a causa della varietà di funzioni, non sono necessariamente più efficienti dei file system. Catalogo o Dizionario dei dati Nei DBMS esiste una porzione della base di dati (il catalogo o dizionario ) che contiene una descrizione centralizzata dei dati che può essere utilizzata dai vari programmi. Contiene informazioni che riguardano: ‐ data : nomi delle tabelle, nomi degli attributi, lunghezza degli attributi, numero di record in ogni tabella ‐ relationship: legami tra dati e transazioni per la determinazione di quali transazioni sono coinvolte se ad esempio alcune definizioni dei dati vengono modificate ‐ contraints (vincoli) sui dati ad esempio il range dei valori permessi ‐ informazioni dettagliate del database fisico e della memoria, percorsi per l’accesso , file e lunghezza dei record ‐ autorizzazione agli accessi : permessi e diritti d’accesso ‐ statistiche sull’utilizzo Importanza del dizionario è importante per 2 motivi: ‐ migliorare il controllo del DBA sulle informazioni ‐ aiuto nella documentazione del disegno del database, di ogni fase e decisione ‐ aiuto nella produzione di report di dati utilizzati ‐ promuove l’indipendenza dei dati ad es in caso di aggiunta o modifica delle strutture nel database i programmi non devono essere modificati
  • 3. Moduli componenti un DBMS Un DBMS è quindi un sistema software complesso. Vediamo ora i tipi di componenti software che lo costituiscono e i tipi di software di sistema con cui il DBMS interagisce. Nella Figura sono illustrati, in forma semplificata, i tipici componenti di un DBMS. La figura è divisa in due parti. La parte superiore rappresenta le varie tipologie di utenti di un sistema di basi di dati e le rispettive interfacce. La parte inferiore mostra i componenti interni di un DBMS, responsabili della memorizzazione dei dati e dell’esecuzione delle transazioni. La base di dati e il catalogo del sono solitamente memorizzati su disco. L’accesso al disco è controllato essenzialmente dal sistema operativo, che ne pianifica l’input/output. Un gestore dei dati memorizzati, modulo del DBMS a più alto livello, controlla l’accesso alle informazioni del DMBS memorizzate su disco, siano esse parte della base di dati o del catalogo. Analizziamo dapprima la parte della figura, che mostra le interfacce per l’amministratore (DBA), quelle degli utenti occasionali che lavorano con interfacce interattive per formulare interrogazioni,
  • 4. quelle dei programmatori applicativi che utilizzano linguaggi ospite e quelle degli utenti non esperti che immettono dati sotto forma di parametri di transazioni predefinite. Lo staff di amministrazione lavora alla definizione della base di dati e alla sua manutenzione, modificando le definizioni per mezzo del linguaggio DDL e di altri comandi privilegiati. Il compilatore DDL elabora definizioni di schema, specificate nel DDL, e memorizza descrizioni degli schemi (metadati) nel catalogo del DBMS. Il catalogo include informazioni come i nomi e le dimensioni dei file, i nomi e i tipi di dato delle voci, i dettagli di memorizzazione di ciascun file, informazioni sul mapping tra i vari schemi e vincoli, oltre a molti altri tipi di informazioni necessari ai moduli del DBMS. I moduli software del DBMS cercano, dunque, le informazioni di catalogo quando ne hanno bisogno. Utenti occasionali e soggetti che necessitano saltuariamente di estrarre informazioni dalla base di dati utilizzano delle tipologie d’interfaccia che nella figura sono chiamate interfacce per interrogazioni interattive. Non sono esplicitamente rappresentate interazioni basate su menu o form che possono generare l’interrogazione interattiva in modo automatico. Queste interrogazioni vengono trasformate in una forma interna dal compilatore delle interrogazioni che le scompone e ne verifica la correttezza delle operazioni rispetto al modello, ai nomi degli elementi e così via. Tale interrogazione interna viene poi ottimizzata dall’ottimizzatore delle interrogazioni. Tra l’altro, l’ottimizzatore delle interrogazioni si occupa di riorganizzare ed eventualmente di riordinare le operazioni, eliminare le ridondanze e utilizzare gli algoritmi e gli indici opportuni durante l’esecuzione. L’ottimizzatore delle interrogazioni consulta il catalogo per ottenere informazioni statistiche e altre informazioni relative alla memorizzazione fisica dei dati, e infine genera il codice eseguibile che compie le operazioni necessarie all’interrogazione e le chiamate al processore runtime della base di dati. I programmatori applicativi scrivono programmi in linguaggi ospite come ad esempio Java vb, poi passati a un precompilatore. Il precompilatore estrae comandi DML da un programma applicativo scritto in un linguaggio ospite di programmazione. Questi comandi sono inviati al compilatore DML per la compilazione in codice oggetto per l’accesso alla base di dati. Il resto del programma è inviato al compilatore del linguaggio ospite. Quindi il codice oggetto per i comandi DML e quello per il resto del programma sono messi in collegamento (linked), formando una transazione standard il cui codice eseguibile include chiamate al processore di esecuzione della base di dati. Queste transazioni predefinite sono di grande utilità per gli utenti non esperti che devono semplicemente fornire i parametri delle transazioni per fare in modo che queste vengano eseguite ripetutamente come transazioni separate. Ne è un esempio la transazione di prelievo da conto corrente bancario in cui il numero di conto e l’importo possono essere forniti come parametri. Nella parte inferiore della Figura è rappresentato il processore runtime della base di dati che si occupa di eseguire 1) i comandi privilegiati, 2) i piani di esecuzione delle interrogazioni e 3) le transazioni parametriche predefinite con specifici parametri. Il processore interagisce con il dizionario di sistema su cui può intervenire aggiornando le statistiche. Interagisce con il gestore dei dati memorizzati, il quale a sua volta usa i servizi di base del sistema operativo per realizzare operazioni di input/output di basso livello fra il disco e la memoria principale. Si occupa degli altri aspetti relativi al trasferimento dati come la gestione dei buffer in memoria principale. Alcuni DBMS possiedono il proprio modulo di gestione dei buffer, mentre altri sfruttano le funzionalità del sistema operativo. In questa figura abbiamo rappresentato
  • 5. separatamente i sottosistemi di controllo della concorrenza e di backup/recovery. Essi sono integrati nel processore runtime della base di dati per scopi di gestione delle transazioni. Oggigiorno è prassi comune che il programma client che accede al DBMS venga eseguito su un calcolatore diverso da quello su cui si trova la base di dati. Il primo è chiamato client e il secondo server della base di dati. In alcuni casi il client accede a un calcolatore intermedio, detto server delle applicazioni (application server), che a sua volta accede al server della base di dati. Il DBMS interagisce con il sistema operativo quando sono necessari accessi al disco (alla base di dati o al catalogo). Se il sistema di elaborazione è condiviso da molti utenti, il sistema operativo pianificherà le richieste di accesso al disco e le elaborazioni provenienti dal DBMS insieme con gli altri processi. D’altra parte, se il sistema di elaborazione è destinato principalmente al server della base di dati, sarà il DBMS a controllare il trasferimento delle pagine da disco ai buffer della memoria principale. Il DBMS interagisce anche con i compilatori per i linguaggi di programmazione ospite, e con server di applicazioni e programmi client che sono eseguiti su macchine diverse attraverso l’interfaccia di rete del sistema.