Guida di riferimento per l'utente

Istruzioni sull'utilizzo di un indice spaziale

DB2 Spatial Extender utilizza l'indice spaziale per migliorare le prestazioni delle interrogazioni spaziali. L'interrogazione base più diffusa è l'interrogazione casella. Essa richiede a DB2 Spatial Extender tutte le geometrie comprese parzialmente o totalmente in una casella definita dall'utente. Se l'indice non esiste, DB2 Spatial Extender dovrà confrontare tutte le geometrie con la casella. Tuttavia DB2 Spatial Extender potrà utilizzare l'indice per individuare tutte le voci di indice la cui coordinata inferiore sinistra è maggiore o uguale alla casella e la cui coordinata superiore destra è minore o uguale alla casella. Poiché l'indice viene ordinato da questo sistema di coordinate, DB2 Spatial Extender potrà richiamare rapidamente un elenco di geometrie candidate. Il processo appena illustrato viene denominato primo passo.

Un secondo passo determina se ciascuna busta di candidato interseca la casella. Una geometria adatta al primo passo poiché la relativa busta delle celle di griglia intersecano la casella, può presentare una busta che non viene intersecata.

Un terzo passo confronta le coordinate attuali del candidato con la casella per stabilire se una parte della geometria è attualmente contenuta nella casella. Quest'ultimo processo più complesso di confronto utilizza un elenco di candidati composto da una serie secondaria di elementi totali, che viene ridotto sensibilmente dai primi due passi.

Tutte le interrogazioni spaziali eseguono i tre passi ad eccezione della funzione EnvelopesIntersect. Questa funzione esegue solo i primi due passi. La funzione EnvelopesIntersect è stata progettata per la visualizzazione di operazioni che spesso prevedono l'impiego di routine clipping incorporate e non richiede la granularità del terzo passo.

Selezione della dimensione delle celle di griglia

La forma irregolare delle buste di geometria complica la selezione della dimensione delle celle di griglia. A causa di questa irregolarità, alcune buste di geometria intersecano più griglie, invece altre utilizzano una sola cella di griglia. Altre celle di griglia, al contrario, a seconda della distribuzione spaziale dei dati, intersecano molte buste di geometria.

Per una corretto funzionamento dell'indice spaziale, è necessario selezionare un numero e una dimensione appropriata di griglie. Si consideri una colonna spaziale contenente geometrie con dimensioni uniformi. In tal caso sarà sufficiente un singolo livello di griglia. Iniziare utilizzando una dimensione di cella di griglia che può comprendere una busta di geometria media. Durante la verifica dell'applicazione, si noterà che aumentando la cella di griglia le prestazione delle interrogazioni risulteranno notevolmente migliorate. Ciò avviene poiché ciascuna cella di griglia contiene più geometrie e pertanto il primo passo è in grado di scaricare geometrie non specificate in modo più rapido. Si noterà tuttavia che continuando ad aumentare la dimensione di cella le prestazioni diminuiranno. Ciò avviene poiché il secondo passo verrà ostacolato da più candidati.

Selezione del numero di livelli

Se gli oggetti che si desidera indicizzare sono della stessa dimensione relativa, è possibile utilizzare un singolo livello di griglia. Anche in questo caso non tutte le colonne conterranno geometrie della stessa dimensione relativa. Di solito le geometrie delle colonne spaziali possono essere raggruppate in diversi intervalli di dimensioni. Si consideri ad esempio una rete di strade in cui le geometrie sono divise in strade, strade principali e autostrade. Le strade sono circa della stessa lunghezza e possono essere raggruppate in un intervallo di dimensione. Lo stesso dicasi per le strade principali e le autostrade. E' possibile pertanto raggruppare le strade che rappresentano un intervallo di dimensione in un primo livello di griglia, le reti di strade in un secondo livello e le autostrade in un terzo livello. Un altro esempio include una colonna relativa al paese che contiene raggruppamenti di piccoli centri urbani circondati da aree rurali più vaste. In questo esempio si utilizzano due intervalli di dimensioni e due livelli di griglia uno per i piccoli centri urbani e l'altro per le aree rurali più vaste. Queste situazioni sono molto frequenti e richiedono l'utilizzo di una griglia multilivello.

Per selezionare la dimensione di cella per ciascun livello di griglia, selezionare dimensioni di cella di griglia più elevate rispetto a ciascun intervallo di dimensione. Verificare l'indice eseguendo interrogazioni delle colonne spaziali.

Ciascun livello aggiuntivo richiede la scansione di indici aggiuntivi. Provare ad aumentare o diminuire le dimensioni di griglia per determinare se le prestazioni vengono migliorate.


[ Inizio pagina | Pagina precedente | Pagina successiva | Indice | Indice analitico ]