La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Bases de datos espaciales Michael Gould Universitat Jaume I.

Presentaciones similares


Presentación del tema: "Bases de datos espaciales Michael Gould Universitat Jaume I."— Transcripción de la presentación:

1 Bases de datos espaciales Michael Gould Universitat Jaume I

2 Índice  Bases de datos relacionales  Datos no espaciales  Indices (indexación) de bases de datos  Ordenación (sorting) de datos  Modelado de datos espaciales  Dos tipos de consulta  Indices espaciales

3 BB DD relacionales  ¿Por qué usar una base de datos?  Organización, recuperación eficaz  Una BD no tiene por que ser relacional !!!  BDR optima para interrelacionar tablas de texto  Trabaja en el “espacio de nombres”, unidimensional  BBDD espaciales son MUY grandes:  Muchos elementos (puntos, líneas..) y muchas relacionales necesarias para guardar todo que es interesante en interacciones espaciales

4 BB DD relacionales (2)  El uso de campos largos no es la mejor solución  Es simple, pero no nos ayuda en mejorar rendimiento de recuperación  Una BDR mejora su recuperación mediante índices (indexación) de atributos (items)  Pero hay que ordenar (sort) los datos, alfabéticamente, según la coord X o Y (pero no las 2)  Cada vez ordenando sobre una sola dimensión...

5 Indices  Ordenando según la dist de cada elemento a un punto origen, sirve para desordenarlos para todos demás puntos  No sabes a priori todas las posibles consultas del usuario  Indices implícitos mejor que explícitos  No hace falta reordenar los datos, solo despúes de cambios

6 Indexación  ¿Cómo ordenamos los datos?  Mediante índices primarios y secundarios  Para datos no espaciales, uno puede indexar cada atributo  Pero no sirve cuando consulta utiliza combinaciones de valores de atributos:  “El registro más cercano a Pepe Pérez en términos de peso y edad” (no existe el concepto peso-edad)

7 Indexación (2)  Para consultas booleanas, sí, tiene sentido:  “todos entre 25 y 30 años y entre 50 y 70 Kilos”  ¿Cómo construir índices?  otra relación nueva  clave extranjera  siguen siendo ejemplos relacionales, unidimensionales...

8 Modelado de datos  Para imágenes, usaremos un tuplo para cada pixel?  Un BLOB solo dice que la imagen existe, nada de su contenido  Un tuplo para cada parte de cada elemento vectorial (ej, punto, línea) ??  Un tuplo para cada elemento entero ?

9 Modelado de datos (2)  ¿Cómo enlazar al elemento entero con un tuplo?  la caja mínima requiere atributos en 2 dimensiones  puedes usar un punto representivo (centroide)  Lo que falta en el modelo relacional es la manera de utilizar la ubicación como índice a una estructura espacial  Por eso hemos creado índices espaciales

10 Interacción con la BD  Muchos lenguajes de consulta  SQL domina, solo porque el modelo relacional también domina  SQL inicialmente separado al modelo relacional  Poco a poco se integran  Tiene muchas limitaciones para datos no normales (ej. CAD, sistemas MM, SIG)

11 Interacción con la BD (2)  SQL no permite la interacción con gestos:  “Cuál es el edificio más cercano a este punto, que vale menos de 50 MM”  No incluye operadores espaciales, ej. Cerca de, tocando con, etc.  Existen propuestas para SQL-extendidos  SQL-3, SQL-MM, Geo-SQL

12 Consultas mixtas  Consultas dobles, utilizando datos espaciales y no espaciales (atributos)  “ Localiza todas las ciudades dentro de 100 Km del río Ebro, y de más de 100.000 habitantes”  Optimizar la recuperación:  Si la región es reducida, ejecutar la búsqueda espacial antes  Si hay muchas ciudades grandes en la BD, haz la selección relacional (pob > 100000) antes

13 Consultas mixtas (2)  Hay que tratar dos tipos de datos distintos  Datos espaciales  puntos discretos en el espacio  espacio ocupado por fenómenos continuos que tienen extensión en 2-d  Datos no espaciales  nombres de regiones  limite de velocidad en una carretera...

14 Consultas espaciales  El gestor de BBDD relacionales sirve para los datos no espaciales  No es nada óptimo para consultas espaciales  Tres tipos de consultas espaciales  Rango (una ventana completa)  Rango parcial (solo algunos atributos)  Puntual (solo un objeto)

15 Consultas de rango  Rango = ámbito espacial  Basadas en el límite de cada elemento  No hace falta que todas las posibles relacionales espaciales estén explícitamente en la BD  Consultas por atributo: “todos los sitios que tienen cítricos”  Consultas por ubicación: “ciudad más cercana a este punto?”

16 Indices espaciales  Objetivo: Como siempre con la indexación... tratar de no visitar y tocar cada vez a todos los n elementos en la base de datos !!  Los índices espaciales nos permiten ir al grano, optimizando la recuperación  Ejemplo simple: rectángulo mínimo (MBR)  guardamos los MBR, y si una consulta toca a un MBR, sus elementos pueden ser relevantes: los de fuera seguramente NO!

17 Indices espaciales (2)  Los MBR no forman una descomposición completa del plano (rectángulos pueden solaparse)  Quadtree (árbol cuadernario): libro Samet  índice espacial jerárquico  descomposición regular, multiresolución  se pueden aplicar a todos tipos de datos espaciales

18 Quadtree  Mal nombrado: es una descomposición en bloques regulares: no tiene por que usar arboles  Algoritmo: Dividir región en cuatro subregiones  cada subregión heterogenea, se divide en otras 4  división recursiva  guardamos los niveles y los elementos/atributos en cada nivel (en un árbol, lista, etc.)

19 Quadtree (2)  Divisiones (cuadrantes) numeradas 0,1,2,3  Orden de Morton, de Peano, etc.  Cada región a cualquier nivel tiene una coordinada en el quadtree  1,1,1 : tercer nivel, esquina derecha superior  También sabemos sus coordinadas geográficas, basadas en las coords del primer nivel (root)

20 Quadtree (3)  Quadtree es una estructura (índice) simple y potente  Forma parte de casi todos los SIG de gama alta, para mejorar el rendimiento de la BD  Quadtree óptimo para consultas por ubicación: “Qué hay aquí en esta región X?”  La estructura Pirámide es una variación

21 Pirámide  Como el quadtree, donde cada nodo en el árbol guarda un sumario de la información de sus hijos  Así, el pirámide es mejor para recuperación por atributo dentro de una región:  “Hay cítricos en esta región?” Si el nivel 1 no tiene cítricos, entonces imposible que este más abajo entre sus hijos, nietos, etc.

22 Página de demos de Samet http://www.cs.umd.edu/~brabec/ quadtree/index.html

23 Otros temas: Transacciones largas  ¿Qué pasa cuando alguien tiene “abierta” la base de datos de carreteras, durante 2 días, para hacer modificaciónes?  Control de sesiones  Control de acceso: bloqueo a nivel de fichero, elemento ??  Procesos de Commit y Rollback

24 Otros temas: BDR extendidas  Productos SDO (Spatial Data Option) de Oracle, y Spatial Data Engine (SDE) de ESRI  solución TODA relacional: espacial, no espacial  manejo de geometrías múltiples  conforman con OpenGIS  Datablades espaciales para Informix, DB2...

25 Otros temas: Procesos  SIG basado en BDR normalmente supone una geometría  Supone una foto de la situación  Complica la actualización de elementos, atributos, esp en situación dinámicas !!  BD y sistemas Orientadas a Objetos...en el futuro.


Descargar ppt "Bases de datos espaciales Michael Gould Universitat Jaume I."

Presentaciones similares


Anuncios Google