![]() |
Nel vasto panorama dei database oggi presenti sul mercato, esiste di certo una discreta carenza di tali applicativi in ambiente OS/2. E certo l'IBM non poteva tardare a presentare alla grande utenza un proprio database relazionale studiato non solo per la piattaforma PC, ma anche per il collegamento ad host. Continuiamo quindi la nostra analisi sui servizi aggiuntivi di OS/2 3.0 parlando questa volta del nuovissimo nato in casa IBM: si tratta del DB2/2. In nome esatto è DATABASE 2 OS/2 e segue il famoso DataBase Manager dei servizi estesi di OS/2 le cui funzionalità sono ben note agli sviluppatori e agli amministratori di rete. Ma la vera novità sta nel fatto che il DATABASE 2 è disponibile ora in due versioni: la versione Utente Singolo e la versione Utenza/Servente. Entrambe le versioni hanno ovviamente le stesse caratteristiche di database relazionale, per cui coprono entrambe tutte le possibili esigenze, anche quelle dell'utente più esperto! La versione Utenza/Servente dà peraltro una serie di funzioni aggiuntive tra cui vogliamo ricordare:
1) Un modulo ridistribuibile che offre la funzione di abilitazione come Client di Query
Manager in ambiente OS/2 3.0.
2) Un modulo ridistribuibile che offre la funzione di abilitazione come Client del Database in
ambiente DOS/WINDOWS ed ovviamente OS/2.
3) La funzione fondamentale di Database Server.
4) Il supporto per il DBCS (Double Byte Character Set) per i paesi esteri che usano tale
sistema come Giappone, Corea ecc.
Il DB2/2 soddisfa quindi le esigenze sia dell'utente finale che quelle dei programmatori più esperti dato che il prodotto include, come vedremo in seguito, i precompilatori e le interfacce API di programmi applicativi che consentono al programmatore di scrivere ed installare tramite DB2/2 le proprie applicazioni.
1) Le utilità per la gestione dei Database (DBA Services).
2) I Servizi di Database veri e propri.
3) I Servizi per l'accesso ai Database remoti.
4) Il Query Manager.
Analizziamo un po' più approfonditamente alcuni dettagli che meglio ci faranno comprendere
la funzione di questi componenti.
Partiamo dai Database Services in quanto sono proprio questi che forniscono le funzioni
fondamentali del DB2/2: il controllo dell'accesso ai dati stessi, la gestione di tali dati, la
creazione di pacchetti (ovvero la gestione di percorsi determinati per l'accesso e la
consultazione dei dati), la gestione delle transazioni ed i controlli necessari quando in rete si
verifica un accesso simultaneo ai dati in modo da garantirne la integrità.
Altri elementi fondamentali dei Servizi di Database sono i file di configurazione, i cataloghi di
sistema, e gli "oggetti" veri e propri del database sui quali l'utente è abituato a lavorare come
le tabelle, le viste, gli indici ecc. (vedi Fig.1).
Fig. 1 - Le Icone del DATABASE 2 OS/2 e le utility pricipali per il recupero.
Il database è relazionale in quanto è composto da una o più tabelle le quali possono avere
indici associati ad una o più colonne. Tutte le interrogazioni si possono anche ottenere
ovviamente anche da SQL.
Un Database relazionale quale il DB2/2 quindi organizza i dati in un insieme di distinte
tabelle le quali sono a loro volta composte da un preciso numero di colonne da un infinito
numero di righe (il lettore avrà notato la stretta analogia tra i campi ed i record di altri
database relazionali). Un Database nella sua interezza è definito da un numero preciso di
differenti tabelle appartenenti ai cataloghi del sistema i quali a loro volta descrivono la
struttura fisica e logica di tali dati, da un file di registrazione per il recupero delle transazioni
in corso e da un file di configurazione che contiene tutti i valori dei parametri assegnati al
database.
La tabella invece essendo costituita da dati disposti logicamente in colonne e righe è
accessibile tramite riferimento ai dati stessi piuttosto che la loro locazione di memoria. Una
tabella DB2 può contenere fino a 2GB di dati ed essere divisa fino a 255 colonne.
Mentre l'Indice è, come negli altri Database, usato per rendere maggiormente agevole
l'accesso ai dati, la "Vista" invece ha una grande importanza in quanto consiste in una
rappresentazione dei dati alternativa e può anche essere costituita dalla fusione di più
tabelle, può includere un qualsiasi numero di colonne e quindi si può prestare a innumerevoli
utilizzi.
Il "pacchetto" è un altro oggetto del database relazionale che include tutte le informazioni
necessarie per elaborare le istruzioni SQL che provengono da un singolo file.
I file di configurazione sono molto importanti in DB2/2 in quanto contengono tutti i valori dei
parametri che definiscono sia le risorse di cui il DB2/2 può disporre sia le risorse dei singoli
database. Si possono distinguere due tipi di file configurazione: il "file di configurazione del
database" relativo ad ogni singolo database ed il "file di configurazione del Database
Manager" che è relativo all'intero DB2/2.
Il primo file di configurazione viene creato al momento della creazione del singolo database
ed ogni database ha il suo proprio. I parametri specificati in tale file specificano le risorse
assegnate e possono essere soggetti a modifica per migliorare le prestazioni del database in
ambienti diversi dall'originario dipendentemente dal tipo di attività che l'utente finale desidera
svolgere.
Il secondo file di configurazione, quello del Database Manager, viene creato solo se
vengono installati i Servizi di Database e contiene i parametri necessari al sistema DB2/2 per
una singola installazione (vedi Fig.2).
Fig. 2 - Attraverso le utilità di configurazione è possibile modificare qualsiasi
parametro per la gestione del Database Manager.
La "filosofia" con cui opera DB2/2 non si esaurisce certo qui e molto importanti sono anche le
tabelle dei cataloghi di sistema sulle quali faremo qui solo una rapida analisi. Il Database 2
oltre alle normali tabelle di cui abbiamo parlato sopra crea e gestisce anche gruppi di tabelle
dei cataloghi di sistema per ogni database creato. Il concetto non e' forse dei più semplici.
Cercando di chiarire al meglio possiamo dire genericamente che tali tabelle contengono
informazioni tipo descrizione delle tabelle del database, descrizione dei pacchetti e
descrizione delle singole viste create dall'utente. L'utente non se ne preoccupi troppo
comunque! Tali tabelle vengono create quando una API viene richiamata in seguito ad una
istruzione SQL di tipo CREATE DATABASE e vengono automaticamente aggiornate durante
lo svolgimento di tutte le operazioni che sono effettuate sulle tabelle del database. Tali
tabelle per ovvie ragioni di sicurezza sono protette e l'utente non può modificarle ma può
tuttavia interrogarle e vederne il contenuto ai fini della manutenzione del database stesso.
L'altro componente a cui avevo accennato sopra, il Catalogo, è necessario per accedere ai
database locali o ai database remoti (vedi Fig.3). Infatti una volta definito, l'accesso al
database è trasparente all'utente o al programma applicativo, per cui non è necessario di
seguito conoscere la locazione fisica degli archivi. Per precisione bisogna comunque dire
che DB2/2, essendo un database molto sofisticato, usa ben tre tipi ti cataloghi:
1)il catalogo del database del volume che contiene il nome del database e la sua ubicazione
fisica.
2) il catalogo Servizi Connessioni del database che è in funzione esclusivamente se nel
sistema sono installati gli IBM SAA DDCS/2 (Distributed Database Connection Services/2)
che servono alle singole stazioni di lavoro per accedere ed aggiornare i database DB2 in
ambiente MVS, SQL/DS (Structured Query Language/Data System), OS/400 e tutti gli atri
sistemi di archiviazione conformi alle norme DRDA (Distributed Relational Database
Architecture).
3) il catalogo database di sistema contiene invece informazioni circa il nome, l'alias, la
locazione fisica, il tipo (locale o remoto) proprio di ciascun database inserito nel catalogo del
database del volume.
Le utilità per la gestione del Database (DBA Services) sono costituite principalmente da
un'interfaccia che permette all'utente finale come all'amministratore di accedere a funzioni
quali il recupero di un Database (ripristino da backup), la definizione e creazione di cataloghi
di database di cui sopra e la configurazione del sistema nella sua globalità.
1) tramite il processore a riga di comandi.
2) tramite programmi applicativi.
3) tramite Query Manager.
Soffermiamoci brevemente su tali modalità. Il processore a linea di comando benché possa
sembrare a prima vista il più scomodo ed il più "antiquato" offre in realtà una potenza
davvero strabiliante; è possibile ad esempio emettere direttamente istruzioni SQL dal prompt
di sistema oppure da un file .CMD; gestire tutte le richieste attraverso un file cronologico;
richiedere l'Help in linea; accedere ai database locali o remoti ecc.
I programmi applicativi possono invece contenere istruzioni SQL per accedere ai dati oppure
possono gestire direttamente le API messe a disposizione dal DB2/2 per controllare l'intero
ambiente del database. Le istruzioni possono inserite in programmi scritti in linguaggio C,
COBOL o FORTRAN o anche altri linguaggi ma solo usando il precompilatore di API del
DATABASE 2. Queste istruzioni vengono poi eseguite dai Database Services e convertite in
sequenze di operazioni interne che ottimizzano il richiamo dei dati. Ulteriormente è da
sottolineare che tutte le istruzioni SQL sono immediatamente interpretate anche dal REXX
per cui non essendo necessaria né precompilazione nè compilazione anche l'utente finale
può tramite REXX/SQL effettuare complesse procedure di interrogazione e manutenzione
delle tabelle del suo database.
Le API (Application Programming Interface) messe a disposizione riguardano le più svariate
attività quali utenza/servente, ambiente, configurazione, servizi in fase di esecuzione e per i
servizi DBA.
Il Query Manager fornisce invece all'utente finale una delle migliori utilità (vedi Fig.4 più sotto). Si tratta
di una interfaccia per la definizione dei database, delle interrogazioni e per l'aggiornamento
e l'interrogazione dei prospetti.
Fig. 4 - Il pannello principale di accesso ai dati attraverso Query Manager.
L'interfaccia è totalmente guidata e progettata per rendere il più semplice possibile l'accesso ad database agli utenti finali che non dispongono di esperienza precedente nel campo della grande elaborazione dati. I vari menù prevedono anche operazioni tipo definizione di tabelle, immissione dati, editazione dei dati nonché' una interfaccia SQL per utenti esperti. E' possibile inoltre gestire altre attività quali l'importazione ed esportazione di dati creati con un qualsiasi altro programma come DBase III+, Paradox, Lotus ecc., la creazione di profili da usare quando il programma stesso è in esecuzione ed un'interfaccia guidata per le informazioni sullo stato delle varie operazioni in corso (vedi Fig.5).
Fig. 5 - L'interfaccia amichevole per la gestione delle interrogazioni di Query Manager.
Ci sarebbero ancora molte cose da dire e di certo la trattazione di un simile programma non
può esaurirsi qui. Vi sono ancora decine di possibilità e di interessanti ed innovative
caratteristiche nel campo dei database per PC. Ci proponiamo di esaurirle negli articoli che
seguiranno.
[ Pagina Principale || Redazione || Informazioni || Vai a... ]
BETA - la rivista ipertestuale tecnica, copyright © 1994-95
Luciano Giustini e Fernando Carello. Tutti i diritti riservati.
Numero di accessi a questa pagina dal 29/08/95: (installazione in rete)