Ich bin gespannt, wie die internen Datenstrukturen und Speichermechanismen des räumlichen GiST-Index in Postgis aussehen. In Oracle habe ich gerne gezeigt, wie die SDO-Indizes "nur eine andere Tabelle" sind und wie die Ebenen Attribute der Indizes sind und die B-Boxen der indizierten Geometrien als Blobs gespeichert wurden (die extrahiert werden konnten). Wie speichert postgis die Indizes und wo?
Die Systemtabellen http://www.postgresql.org/docs/8.3/static/catalogs.html können verwendet werden, um Indizes zu identifizieren, aber ich weiß nicht, wie ich auf den tatsächlichen Speicher zugreifen soll (wenn es sich tatsächlich um Tabellen handelt).
postgis
postgresql
spatial-index
MartinT
quelle
quelle
Antworten:
Wie Craig erwähnt, sind die räumlichen Indizes nicht nur eine weitere Tabelle. Stattdessen verwendet PostGis GiST als strukturelle Grundlage für die Speicherung von Bbox-Details. Ja, dies ist (bei Verwendung von Standardeinstellungen) anders und effizienter und ungenauer als B-Trees oder R-Trees. Sie können jedoch Parameter angeben, mit denen GiST-Indizes räumlichen Indizes aus anderem Speicher ähneln.
Hier finden Sie die Dokumentation zum Arbeiten mit ihnen (einschließlich ihrer Erweiterung).
Hau rein.
quelle