Was sind die Vor- und Nachteile des Datentyps hstore in Postgis?


8

PostgreSQL verfügt über ein Modul namens hstore , das die Verwendung von Schlüssel / Wert-Paaren implementiert (ähnlich dem OpenStreetMap-Modell, jedoch in einer einzigen Tabelle).

Was sind die Vor- und Nachteile von hstore in Bezug auf GIS-Kompatibilität, Hinzufügen und Abrufen von Daten?


1
Nach einigen Tests: Nachteile: Qgis zeigt keine Hstore-Spalten an. Eine Lösung, speichern Sie Schlüssel / Wert in einer varchardurch Kommas getrennten Liste: 'name=foo,type=bar,' Und rufen Sie Werte ab mit:SELECT * WHERE tags LIKE '%type=bar,%'
Pablo

Antworten:


2

Wir demonstrieren dies tatsächlich in unserem Buch (das angeblich in der nächsten Woche oder so gedruckt wird). In Kapitel 3. Sie können den Code hier herunterladen: http://www.postgis.us/chapter_03

(und natürlich, wenn Sie unser Buch kaufen, erhalten Sie unsere ausführlichen Erklärungen der Vor- und Nachteile)

Es verwendet den hstore-Schalter osm2pgsql, um osm-Tags als hstore-Spalte zu importieren.

Um die Tatsache zu kompensieren, dass Quantum und andere Dinge hstore nicht direkt unterstützen, erstellen wir eine Ansicht der benötigten Schlüssel-Tags. Für Anwendungen, bei denen Sie die vollständige Kontrolle über eine Abfrage haben, die den Schlüssel-> Wert als Spalte aliasisiert, funktioniert dies auch dann, wenn Ihr Datenbanktreiber den Hstore-Typ nicht versteht.


Ich habe dieses Buch. Ich habe die MEAP-Edition gekauft. Ich werde es mir ansehen, aber ich denke, es ist veraltet und ich muss auf die endgültige Version warten. Übrigens ist es ein schönes Buch. Vielen Dank.
Pablo

4

Vorteile:

Es ist ein leistungsstarker und flexibler Schlüssel / Wert, der indiziert und abgefragt werden kann.

Ich habe ein komplexes schemenloses Web-GIS, das eine HStore-Spalte zum Speichern der Features-Eigenschaften verwendet.

Nachteile:

Die meisten WMS / WFS-Tools wie Mapserver, Geoserver und Ähnliches können HStore-Spalten nicht verstehen und arbeiten nicht mit ihnen, sodass Sie am Ende fest codierte SQL-Ansichten erstellen (zumindest in Geoserver). Sie können es weiterhin für die Arbeit mit WMS / WFS verwenden, aber da Sie die Schlüssel fest codieren müssen, verlieren Sie die schemenlosen Funktionen.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.