¿Cuáles son los pros y los contras del tipo de datos hstore en postgis?

8

PostgreSQL tiene un módulo llamado hstore que implementa el uso de pares clave / valor (es algo así como el modelo OpenStreetMap, pero en una sola tabla).

¿Cuáles son los pros y los contras de hstore con respecto a las compatibilidades SIG, la adición y recuperación de datos?

Pablo
fuente
1
Después de algunas pruebas: Contras: Qgis no muestra columnas hstore. Una solución, almacenar clave / valor en una varcharlista delimitada por comas: 'name=foo,type=bar,' y recuperar valores con:SELECT * WHERE tags LIKE '%type=bar,%'
Pablo

Respuestas:

2

De hecho, demostramos esto en nuestro libro (que supuestamente se imprimirá en la próxima semana más o menos). En el capítulo 3. Puede descargar el código desde aquí: http://www.postgis.us/chapter_03

(y, por supuesto, si compra nuestro libro, obtendrá nuestras explicaciones detalladas de los pros y los contras)

Utiliza el modificador osm2pgsql hstore para importar etiquetas osm como columna hstore.

Lo que hacemos para compensar el hecho de que Quantum y otras cosas no son compatibles con hstore directamente es crear una vista en torno a las etiquetas clave que necesitamos. Para las aplicaciones en las que tiene control completo utilizando una consulta que alias la clave-> valor como una columna, también funciona bien incluso si el controlador de la base de datos no comprende el tipo hstore.

LR1234567
fuente
Yo tengo este libro Compré la edición MEAP. Lo echaré un vistazo, pero creo que está desactualizado y tendré que esperar al lanzamiento de la versión final. Por cierto, es un buen libro. Gracias.
Pablo
4

Pros:

Es una clave / valor flexible de alto rendimiento que se puede indexar y consultar.

Tengo un complejo SIG web sin esquema que utiliza una columna HStore para almacenar las propiedades de las características.

Contras:

La mayoría de las herramientas WMS / WFS como Mapserver, Geoserver y similares no pueden entender y trabajar con columnas HStore, por lo que terminas creando Vistas SQL codificadas (al menos en Geoserver). Todavía puede usarlo para trabajar WMS / WFS, pero como tiene que codificar las teclas, pierde las capacidades sin esquema.

Pankas
fuente
2

Yo no tengo experiencia con eso, pero si está interesado en almacenar datos espaciales en una base de datos de este tipo, es posible que desee buscar nosql espacial. En la publicación que encontré fue, por ejemplo: /programming/2041622/nosql-and-spatial-data

johanvdw
fuente