Guida di riferimento per l'utente

Modalità di generazione di un indice spaziale

Un indice spaziale viene generato utilizzando le buste. La busta è una geometria che rappresenta la lunghezza minima e massima X e Y di una geometria. Per la maggior parte delle geometrie, la busta corrisponde a una casella, ma per le stringhe di righe orizzontali e verticali la busta corrisponde a una stringa di riga a due punti. Per i punti, la busta corrisponde al punto. Per ulteriori informazioni relative alle buste, vedere la sezione Inviluppo.

L'indice spaziale viene costruito su una colonna spaziale, creando una o più voci per le intersezioni di ciascuna busta di geometria con la griglia. Le intersezioni vengono registrate come ID interno della geometria e coordinate minime X e Y di intersezione della cella di griglia. Ad esempio il poligono riportato nella Figura 7 presenta un'intersezione con la griglia sulle coordinate (20,30), (30,30), (40,30), (20,40), (30,40), (40,40), (20,50), (30,50) e (40,50). Vedere la Tabella 38 per le coordinate minime X e Y per tutte le geometrie riportate nella Figura 7.

Se esistono più livelli di griglia, DB2 Spatial Extender tenterà di utilizzare il livello di griglia inferiore possibile. Le geometrie che intersecano quattro o più celle di griglia a un determinato livello, verranno promosse al successivo livello superiore. Pertanto se un indice spaziale presenta i tre livelli di griglia 10.0e0, 100.0e0 e 1000.0e0, DB2 Spatial Extender intersecherà ciascuna geometria con il livello di griglia 10.0e0. Le geometrie che intersecano quattro o più celle di griglia 10.0e0, verranno promosse e intersecate con la griglia di livello 100.0e0. Se quattro o più intersezioni risultano al livello 100.0e0, la geometria viene promossa al livello 1000.0e0. Al livello 1000.0e0, le intersezioni dovranno essere immesse nell'indice spaziale che è il massimo livello possibile.

La Figura 7 illustra le modalità di intersezione tra i quattro diversi tipi di geometrie e la griglia 10.0e. Tutte le 23 intersezioni per le quattro geometrie vengono registrate nell'indice spaziale.

Figura 7. Applicazione di un livello di griglia 10.0e0


[figure]

La Tabella 38 elenca le geometrie e le intersezioni di griglia corrispondenti. Le buste di quattro diversi tipi di geometrie intersecano la griglia 10.0e. Le coordinate minime X e Y di ciascuna cella di griglia da esse intersecata, vengono immesse nell'indice spaziale.

Tabella 38. Le voci della cella di griglia 10.0e0 per le geometrie di esempio
Geometria Griglia X Griglia Y

Poligono

20.0

30.0

Poligono

30.0

30.0

Poligono

40.0

30.0

Poligono

20.0

40.0

Poligono

30.0

40.0

Poligono

40.0

40.0

Poligono

20.0

50.0

Poligono

30.0

50.0

Poligono

40.0

50.0

Stringa di riga verticale

50.0

30.0

Stringa di riga verticale

50.0

40.0

Stringa di riga verticale

50.0

50.0

Punto

20.0

20.0

Stringa di riga orizzontale

20.0

20.0

Stringa di riga orizzontale

30.0

20.0

Stringa di riga orizzontale

40.0

20.0

Stringa di riga orizzontale

50.0

20.0

Stringa di riga orizzontale

60.0

20.0

Stringa di riga orizzontale

20.0

30.0

Stringa di riga orizzontale

30.0

30.0

Stringa di riga orizzontale

40.0

30.0

Stringa di riga orizzontale

50.0

30.0

Stringa di riga orizzontale

60.0

30.0

La Figura 8 mostra come il numero di intersezioni viene ridotto a otto aggiungendo i livelli di griglia 30.0e0 e 60.0e0. In questo caso, il poligono identificato come geometria 1 viene promosso al livello di griglia 30.0e0 e la stringa di riga identificata come geometria 4 viene promossa al livello di griglia 60.0e0. Dopo la promozione le intersezioni delle geometrie al livello 10.0e0 verranno ridotte da nove e dieci a due.

Figura 8. Effetti dell'aggiunta di livelli di griglia 30.0e0 e 60.0e0. La busta del poligono identificata come geometria 1 interseca nove celle di griglia. La busta della riga di stringa verticale identificata come geometria 2 interseca tre celle di griglia. La busta del punto identificata come geometria 3 interseca solo una cella di griglia. La busta della riga di stringa identificata come geometria 4 interseca dieci celle di griglia.


[Figure]

DB2 Spatial Extender utilizza i parametri di livello di griglia specificati nell'istruzione CREATE INDEX e verifica ciascun oggetto spaziale per determinare le coordinate e il numero di blocchi di griglia contenenti l'oggetto. Nella Figura 8, i livelli di griglia 10.0e0, 30.0e0 e 60.0e0 vengono illustrate righe crescenti di diverso spessore e differenti gradazioni di grigio. Le intersezioni tra la stringa di riga verticale e la cella di busta del punto vengono inserite nell'indice a livello di griglia 10.0e0, poiché entrambe generano meno di quattro intersezioni. Il poligono interseca nove celle di griglia 10.0e0 e viene pertanto promosso al livello di griglia 30.0e0. A questo livello, il poligono interseca due celle di griglia, che vengono immesse nell'indice. La stringa di riga identificata come geometria 4 interseca dieci celle di griglia 10.0e0 e viene pertanto promossa al livello di griglia 30.0e0. A questo livello interseca quindi sei celle di griglia e verrà quindi promossa al livello di griglia 60.0e0, in cui genera due intersezioni. Le intersezioni di griglia 60.0e0 della stringa di riga vengono inserite in due indici. Se la stringa di riga ha generato quattro o più intersezioni a questo livello, queste verranno sempre inserite nell'indice che rappresenta il livello superiore a cui una geometria può essere promossa.

Tabella 39. Intersezioni delle geometrie nell'indice a tre livelli

Geometria

Griglia X

Griglia Y

Le intersezioni tra la stringa di riga verticale e il punto del livello 1 (dimensione griglia 10.0e0)

2

50.0

30.0

2

50.0

40.0

2

50.0

50.0

3

20.0

20.0

Le intersezioni del poligono nel livello 2 (dimensione di griglia 30.0e0)
1 0.0 30.0
1 30.0 30.0
Le intersezioni della stringa di riga nel livello 3 (dimensione di griglia 60.0e0)
4 0.0 0.0
4 60.0 0.0

DB2 Spatial Extender attualmente non crea alcuna struttura di griglia del poligono. DB2 Spatial Extender indica ciascun livello di griglia in parametri, definendo l'origine all'offset X,Y del sistema di riferimento spaziale della colonna. Estende quindi la griglia in spazio di coordinata positivo. Utilizzando una griglia parametrica, DB2 Spatial Extender generate matematicamente le intersezioni.


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