Guía y consulta del usuario

Cómo se genera un índice espacial

Un índice espacial se genera utilizando envolturas. La envoltura es una geometría y representa la extensión X e Y mínima y máxima de una geometría. Para la mayoría de las geometrías, la envoltura es un recuadro, pero para series lineales horizontales y verticales, la envoltura es una serie lineal de dos puntos. Para puntos, la envoltura es un punto. Para obtener más información sobre envolturas, consulte el tema Envoltura.

El índice espacial se construye en una columna espacial creando una o más entradas correspondientes a las intersecciones de cada envoltura de geometría con la cuadrícula. Una intersección se registra como el ID interno de la geometría y las coordenadas X e Y mínimas de la celda de la cuadrícula que forma la intersección. Por ejemplo, el polígono de la Figura 7 forma intersección con la cuadrícula en las coordenadas (20,30), (30,30), (40,30), (20,40), (30,40), (40,40), (20,50), (30,50) y (40,50). Consulte la Tabla 38 para ver las coordenadas X e Y mínimas para todas las geometrías de la Figura 7.

Si hay varios niveles de cuadrícula, DB2 Spatial Extender intenta utilizar el nivel de cuadrícula más bajo posible. Cuando una geometría forma intersección con cuatro o más celdas de cuadrícula a un determinado nivel, se promociona al nivel superior siguiente. Por lo tanto, para un índice espacial que tiene los tres niveles de cuadrícula de 10.0e0, 100.0e0 y 1000.0e0, DB2 Spatial Extender formará primero intersección entre cada geometría con la cuadrícula de nivel 10.0e0. Si una geometría forma intersección con cuatro o más celdas de cuadrícula 10.0e0, se promociona y formará intersección con la cuadrícula de nivel 100.0e0. Si hay cuatro o más intersecciones al nivel 100.0e0, la geometría se promociona al nivel 1000.0e0. En el nivel 1000.0e0, las intersecciones se deben entrar en el índice espacial porque es el nivel más alto posible.

La Figura 7 ilustra cómo cuatro tipos diferentes de geometrías forman intersección con una cuadrícula 10.0e. Las 23 intersecciones correspondientes a las cuatro geometrías se registran en el índice espacial.

Figura 7. Aplicación a un nivel de cuadrícula 10.0e0


[figura]

La Tabla 38 contiene las geometrías y sus correspondientes intersecciones de cuadrícula. Las envolturas de cuatro tipos de geometrías diferentes forman intersección con la cuadrícula 10.0e. La coordenada X e Y mínima de cada celda de cuadrícula que forma intersección se entra en el índice espacial.

Tabla 38. Las entradas de celda de cuadrícula 10.0e0 correspondientes a las geometrías de ejemplo
Geometría Cuadrícula X Cuadrícula Y

Polígono

20,0

30,0

Polígono

30,0

30,0

Polígono

40,0

30,0

Polígono

20,0

40,0

Polígono

30,0

40,0

Polígono

40,0

40,0

Polígono

20,0

50,0

Polígono

30,0

50,0

Polígono

40,0

50,0

Serie lineal vertical

50,0

30,0

Serie lineal vertical

50,0

40,0

Serie lineal vertical

50,0

50,0

Punto

20,0

20,0

Serie lineal horizontal

20,0

20,0

Serie lineal horizontal

30,0

20,0

Serie lineal horizontal

40,0

20,0

Serie lineal horizontal

50,0

20,0

Serie lineal horizontal

60,0

20,0

Serie lineal horizontal

20,0

30,0

Serie lineal horizontal

30,0

30,0

Serie lineal horizontal

40,0

30,0

Serie lineal horizontal

50,0

30,0

Serie lineal horizontal

60,0

30,0

La Figura 8 muestra cómo el número de intersecciones se reduce significativamente a ocho al añadir los niveles de cuadrícula 30.0e0 y 60.0e0. En este caso, el polígono identificado como geometría 1 se promociona al nivel de cuadrícula 30.0e0 y la serie lineal identificada como geometría 4 se promociona al nivel de cuadrícula 60.0e0. En lugar de las nueve y diez intersecciones que tenían las geometrías en el nivel 10.0e0, sólo tienen dos tras la promoción.

Figura 8. Efecto de añadir los niveles de cuadrícula 30.0e0 y 60.0e0. La envoltura del polígono identificado como geometría 1 forma intersección con nueve celdas de cuadrícula. La envoltura de la serie lineal vertical identificada como geometría 2 forma intersección con tres celdas de cuadrícula. La envoltura del punto identificado como geometría 3 forma intersección con una sola celda de cuadrícula. La envoltura de la serie lineal identificada como geometría 4 forma intersección con diez celdas de cuadrícula.


[Figura]

DB2 Spatial Extender toma los parámetros de nivel de cuadrícula especificados en la sentencia CREATE INDEX y comprueba cada objeto espacial para determinar las coordenadas y el número de bloques de cuadrícula en los que se encuentra cada objeto. En la Figura 8, los niveles de cuadrícula 10.0e0, 30.0e0 y 60.0e0 se muestran con pesos lineales crecientes y diferentes tonos de gris. Las intersecciones de las celdas de las envolturas de la serie lineal vertical y del punto se entran en el índice al nivel de cuadrícula 10.0e0, porque ambas generan menos de cuatro intersecciones. El polígono forma intersección con nueve celdas de la cuadrícula 10.0e0, por lo que se promociona al nivel de cuadrícula 30.0e0. A este nivel, el polígono forma intersección con dos celdas de cuadrícula, que se entran en el índice. La serie lineal identificada como geometría 4 forma intersección con diez celdas de la cuadrícula 10.0e0, por lo que se promociona al nivel de cuadrícula 30.0e0. Ya a este nivel, forma intersección con seis celdas de cuadrícula, por lo que se vuelve a promocionar al nivel de cuadrícula 60.0e0, donde genera dos intersecciones. Las intersecciones de la cuadrícula 60.0e0 de la serie lineal se entran en el índice. Si la serie lineal hubiera generado cuatro o más intersecciones a este nivel, se entraría igualmente en el índice porque es el nivel superior al que se puede promocionar una geometría.

Tabla 39. Las intersecciones de las geometrías en el índice de tres niveles

Geometría

Cuadrícula X

Cuadrícula Y

Las intersecciones entre la serie lineal vertical y el punto en el nivel 1 (tamaño de cuadrícula 10.0e0)

2

50,0

30,0

2

50,0

40,0

2

50,0

50,0

3

20,0

20,0

Las intersecciones del polígono en el nivel 2 (tamaño de cuadrícula 30.0e0)
1 0,0 30,0
1 30,0 30,0
Las intersecciones de la serie lineal en el nivel 3 (tamaño de cuadrícula 60.0e0)
4 0,0 0,0
4 60,0 0,0

DB2 Spatial Extender realmente no crea ninguna estructura de cuadrículas de polígono de ningún tipo. DB2 Spatial Extender manifiesta cada nivel de cuadrícula de forma paramétrica definiendo el origen en el desplazamiento X,Y del sistema de referencias espaciales de las columnas. Luego amplía la cuadrícula a un espacio de coordenadas positivas. Utilizando una cuadrícula paramétrica, DB2 Spatial Extender genera las intersecciones de forma matemática.


[ Principio de página | Página anterior | Página siguiente | Contenido | Índice ]