Passaggi del programma di esempio
| Azione
| Descrizione
|
Abilitare/disabilitare il database spaziale
|
- Abilitare il database spaziale (gseEnableDB)
- Disabilitare il database spaziale (gseDisableDB)
- Abilitare il database spaziale (gseEnableDB)
|
- Questo è il primo passaggio richiesto per utilizzare DB2 Spatial
Extender. Un database abilitato per le operazioni spaziali include un
insieme di tipi spaziali, un insieme di funzioni spaziali, un insieme di
predicati spaziali, un nuovo tipo di indice e un insieme di tabelle e viste
amministrative.
- Questo passaggio viene eseguito in genere quando vengono attivate le
funzioni spaziali per il database non corretto. Quando si disattiva un
database spaziale, si rimuove un insieme di tipi spaziali, un insieme di
funzioni spaziali, un insieme di predicati spaziali, un nuovo tipo di indice e
un insieme di tabelle e viste amministrative.
Nota: | Non sarà possibile disattivare il database se sono stati creati oggetti che
dipendono dagli oggetti creati dalla procedura di attivazione del
database. Ad esempio, la creazione di una tabella con una colonna
spaziale del tipo ST_Point renderà impossibile eseguire la procedura di
disattivazione del database. Questo accade perché la tabella dipende
dal tipo ST_Point, che deve essere rilasciato dalla procedura di
disattivazione del database.
|
- Come per 1.
|
Registrare i sistemi di riferimento spaziale
|
- Registrare il sistema di riferimento spaziale per la colonna LOCATION
della tabella CUSTOMERS (gseEnableSref)
- Registrare il sistema di riferimento spaziale per la colonna LOCATION
della tabella OFFICES (gseEnableSref)
- Annullare la registrazione del sistema di riferimento spaziale per la
colonna LOCATION della tabella OFFICES (gseDisableSref)
- Registrare nuovamente il sistema di riferimento spaziale per le colonne
ZONE della tabella OFFICES (gseEnableSref)
|
- Questo passaggio definisce un nuovo sistema di riferimento spaziale
(SRS), da utilizzare per interpretare i dati spaziali della
tabella CUSTOMERS. Un sistema di riferimento spaziale include i dati di
geometri in una forma che può essere memorizzata in una colonna di un database
abilitato alle operazioni spaziali. Dopo aver registrato SRS in una
struttura specifica, le coordinate applicabili alla struttura possono essere
memorizzate nella colonna associata della tabella CUSTOMERS.
- Questo passaggio definisce un nuovo sistema di riferimento spaziale
(SRS), da utilizzare per interpretare i dati spaziali della
struttura OFFICES. Ogni struttura di tabella deve prevedere la
definizione di un SRS. Le strutture della tabella OFFICES potrebbero
richiedere un SRS diverso da quello della struttura della tabella
CUSTOMERS.
- Questo passaggio viene eseguito se si specificano i parametri SRS non
corretti per la struttura o la colonna spaziale. Quando si annulla la
registrazione di un SRS per la struttura della tabella OFFICES, si rimuove la
definizione e i parametri ad essa associati.
- Questo passaggio definisce un nuovo sistema di riferimento spaziale
(SRS), da utilizzare per interpretare i dati spaziali della
struttura OFFICES.
|
Creare tabelle spaziali
|
- Modificare la tabella CUSTOMERS, aggiungendo la colonna LOCATION
(gseSetupTables)
- Creare la tabella OFFICES (gseSetupTables)
|
- La tabella CUSTOMERS rappresenta i dati aziendali memorizzati nel database
per diversi anni. L'istruzione ALTER TABLE aggiunge una nuova
colonna (LOCATION) di tipo ST_Point. Questa colonna verrà
riempita eseguendo il geocoding delle colonne indirizzo in un passaggio
successivo.
- La tabella OFFICES rappresenta, tra gli altri dati, le aree di vendita per
ogni ufficio di una società assicurativa. L'intera tabella verrà
riempita con i dati attributo da un database non-DB2 in un passaggio
successivo. Questo passaggio implica l'importazione dei dati
attributo nella tabella OFFICES da un file SHAPE.
|
Registrare le struttura spaziali
|
- Registrare la colonna LOCATION nella tabella CUSTOMERS come una struttura
(gseRegisterLayer)
- Registrare la colonna ZONE della tabella OFFICES come una struttura
(gseRegisterLayer)
| Questi passaggi registrano le colonne LOCATION e ZONE come strutture per
DB2 Spatial Extender. Prima di poter riempire o accedere a una colonna
spaziale mediante le utilità DB2 Spatial Extender (ad esempio,
geocoder), è necessario registrarla come una struttura.
|
Riempire le strutture spaziali
|
- Sottoporre a geocoding i dati indirizzo per la colonna LOCATION della
tabella CUSTOMERS (gseRunGC)
- Caricare la tabella OFFICES utilizzando la modalità di inserimento
(gseImportShape)
- Caricare la tabella HAZARD_ZONE, utilizzando la modalità di creazione
(gseImportShape)
|
- Questo passaggio esegue geocoding in modalità batch, richiamando
l'utilità geocoder. Il geocoding in modalità batch viene eseguito
in genere quando è necessario sottoporre a geocoding o risottoporre a
geocoding.
- Questo passaggio carica la tabella OFFICES con i dati spaziali esistenti
nella forma di un file SHAPE. Dal momento che la tabella OFFICES esiste
e la struttura OFFICES/ZONE è registrata, l'utilità di carico inserirà i
nuovi record in una tabella esistente.
- Questo passaggio carica la struttura HAZARD_ZONE con i dati spaziali
esistenti nella forma di un file SHAPE. Dal momento che la tabella e la
struttura non esistono, l'utilità di caricamento creerà la tabella e
registrerà la struttura prima del caricamento dei dati.
|
Abilitare gli indici spaziali
|
- Abilitare l'indice spaziale per la colonna LOCATION della tabella
CUSTOMERS (gseEnableIdx)
- Abilitare l'indice spaziale per la colonna ZONE della tabella OFFICES
(gseEnableIdx)
- Abilitare l'indice spaziale per la colonna LOCATION della tabella
OFFICES (gseEnableIdx)
- Abilitare l'indice spaziale per la colonna BOUNDRY della tabella
HAZARD_ZONE (gseEnableIdx)
| Questi passaggi abilitano l'indice spaziale per le tabelle
CUSTOMERS, OFFICES e HAZARD_ZONE.
|
Abilitare il geocoding automatico
|
- Abilitare il geocoding automatico per le colonne LOCATION e ADDRESS della
tabella CUSTOMERS (gseEnableAutoGC)
| Questo passaggio attiva il richiamo automatico del geocoder.
L'utilizzo del geocoding automatico fa sì che le colonne LOCATION e
ADDRESS della tabella CUSTOMERS vengano sincronizzate l'una con
l'altra, per le successive operazioni di inserimento e di
aggiornamento.
|
Inserimento/aggiornamento della tabella CUSTOMERS
|
- Inserire alcuni record con una strada diversa (gseInsDelUpd)
- Aggiornare alcuni record con un nuovo indirizzo
(gseInsDelUpd)
| Questi passaggi mostrano un'operazione di inserimento e
aggiornamento sulla colonna LOCATION della tabella CUSTOMERS. Una volta
abilitato il geocoding automatico, le informazioni della colonna ADDRESS
vengono automaticamente sottoposte a geocoding, quando vengono inserite o
aggiornate nella colonna LOCATION. Questo processo è stato attivato nel
passaggio precedente.
|
Disabilitare il geocoding automatico
|
- Disabilitare il geocoding automatico per la struttura CUSTOMERS
(gseDisableAutoGC)
- Disabilitare l'indice spaziale per la struttura CUSTOMERS
(gseDisableIdxCustomersLayer)
| Questi passaggi disabilitano il richiamo automatico del geocoder e
l'indice spaziale, per preparare il passaggio successivo (il
passaggio successivo implica la riesecuzione del geocoding dell'intera
tabella CUSTOMERS). Se si sta caricando una grande quantità di
geodati, è consigliabile disattivare l'indice spaziale prima di caricare
i dati e di riattivarlo al termine del caricamento.
|
Rieseguire il geocoding della tabella CUSTOMERS
|
- Eseguire nuovamente il geocoding della struttura CUSTOMERS con un livello
di precisione inferiore - 90% invece del 100%
(gseRunGC)
- Riattivare l'indice spaziale per la struttura CUSTOMERS
(gseEnableIdx)
- Riattivare il geocoding automatico con un livello di precisione -
90% invece del 100% (gseEnableAutoGC)
| Questi passaggi eseguono il geocoder in modalità batch, riattivano il
geocoding automatico con un nuovo livello di precisione e riabilitano
l'indice spaziale e il geocoding automatico. E' consigliabile
eseguire quest'operazione quando l'amministratore spaziale rileva
un'alta percentuale di errore nel processo di geocoding. Se il
livello di precisione è impostato su 100%, è possibile che non venga
eseguito il geocoding di un indirizzo, perché non si riesce a trovare un
indirizzo corrispondente nei dati di riferimento. Riducendo il livello
di precisione, il geocoder ha maggiori probabilità di individuare dei dati
corrispondenti. Dopo aver nuovamente sottoposto la tabella a geocoding
in modalità batch, vengono riattivati il geocoding automatico e l'indice
spaziale, per semplificare la gestione incrementale dell'indice spaziale
e della colonna spaziale per le successive operazioni di inserimento e
aggiornamento.
|
Creare una vista e registrarne le colonne come strutture della vista
|
- Creare una vista, HIGHRISK_CUSTOMERS, in base al vincolo della tabella
CUSTOMERS e HAZARD_ZONE (gseCreateView)
- Registrare le colonne spaziali della vista come strutture della vista
(gseRegisterLayer)
| Questi passaggi creano una vista e ne registrano le colonne spaziali come
strutture della vista.
|
Eseguire l'analisi spaziale
|
- Individuare la distanza media dei clienti da ogni ufficio
(ST_Within, ST_Distance)
- Individuare le entrate e i premi medi clienti per ogni ufficio
(ST_Within)
- Individuare i clienti che non sono ascritti agli uffici esistenti
(ST_Within)
- Individuare il numero di aree di rischio che ogni area di ufficio copre
(ST_Overlaps)
- Individuare l'ufficio più vicino alla posizione di un cliente
specifico, dando per assunto che l'ufficio si trovi nel punto centrale
dell'area degli uffici (ST_Distance, ST_Centroid)
- Individuare i clienti, la cui posizione è vicina al limite di una
particolare zona di rischio (ST_Buffer, ST_Overlaps)
- Individuare quei clienti ad alto rischio ascritti a un particolare ufficio
(Tutti i passaggi si servono di gseRunSpatialQueries)
| Questi passaggi eseguono l'analisi spaziale, utilizzando i predicati
e le funzioni spaziali in linguaggio DB2 SQL. L'optimizer delle
query DB2 ripartisce l'indice spaziale sulle colonne spaziali, per
migliorare le prestazioni delle query, se possibile.
|
Esportare le strutture spaziali nei file
| Esportare la struttura highRiskCustomers (gseExportShape)
| Il passaggio riporta un esempio di esportazione dei risultati della query
in un file SHAPE. L'esportazione dei risultati delle query in un
altro formato file consente di utilizzare le informazioni mediante uno
strumento di terze parti (ad esempio, ESRI ArcInfo).
|