5° Anno TEORIA 5. Architettura di un DBMS | Page 2

17. Architettura di un DBMS Vers.2.0 – Maggio 2020 Ora analizzeremo in dettaglio i componenti individuati del DBMS dettagliati nel precedente schema: Gestore dell’interfaccia: E’ il componente di più alto livello poichè interagisce direttamente con l’utente della base dati, fornendo un’opportuna interfaccia grafica con la quale formulare richieste di operazioni sui dati o sui metadati. Interagisce con il gestore delle interrogazioni. Un DBMS può ricevere richieste di operazioni in una delle seguenti modalità: - interattiva: direttamente attraverso opportuna interfacce utente o di tipo grafico (Graphic User Interface o GUI) oppure a linea di comando (Command Line Interface o CLI). Queste interfacce permettono di eseguire le principali operazioni di inserimento, modifica, cancellazione e ricerca sia dei dati sia dei metadati. Esempio: molto utilizzata dai DBMS è l’applicazione web phpMyAdmin che consente in modalità GUI, attraverso un qualsiasi browser (Google Chrome, Internet Explorer, Safari, Mozilla Firefox etc. etc.), di gestire un database MySQL creando un database da zero, creando nuove tabelle ed effettuare operazioni che permettano di ottimizzarle, inserendo nuovi utenti, creando e modificando password e gestendo gli eventuali permessi che l’utente ha sul singolo database, etc. etc. E’ possibile gestire un database MySQL utilizzare anche una consolle dei comandi che, in modalità CLI, permette di eseguire tutte le operazioni sopra elencate svolte in modalità grafica da phpMyAdmin. Molte delle interfacce permettono di eseguire il cosiddetto QBE ossia Query By Example (anche lo stesso phpMyAdmin) grazie al quale l’utente può specificare i campi che intende visualizzare, nonché i criteri di interrogazione visualizzando l’output a video senza dover impostare nulla in SQL. Esempio: In Microsoft Access c’è la composizione guidata dell’oggetto “query” - batch: attraverso l’esecuzione di file di comandi scritti in SQL (istruzioni DDL ed istruzioni DML) o nei propri linguaggi (simil SQL). Esempio: con Microsoft Access possibile scrivere macro e moduli. Le macro sono sequenze di comandi mentre i moduli sono procedure scritte in un linguaggio DDL e DML interno proprietario (VBA o Visual Basic for Application) - embedded: attraverso un apposito supporto per il linguaggio SQL (client SQL o server SQL) cui ci si può interfacciare, attraverso apposite librerie, utilizzando diversi linguaggi di programmazione sia lato server (PHP, JAVA con le Servlet, ASP, Python, etc.), sia lato client (JAVA con le Applet, JAVASCRIPT, etc.). Il client SQL è un modulo software che permette di mandare in esecuzione operazioni sui dati scritte in SQL. Il server SQL è invece un modulo software che viene utilizzato per il dialogo tra DBMS e Web Server. - tramite programma applicativo: attraverso un vero e proprio ambiente di supporto per costruire programmi applicativi con interfaccia utente con i quali è possibile effettuare le operazioni sui dati Esempio: Microsoft Access è ben integrato con l’ambiente di sviluppo VB ossia Visual Basic con il quale è possibile scrivere i programmi applicativi. Autore: Rio Chierego (email: [email protected] - sito web: www.riochierego.it) Pag. 2