访问存储Postgis空间索引的内部数据结构(PostGres GiST)


13

我很好奇Postgis中空间GiST索引的内部数据结构和存储机制。在Oracle中,我曾经喜欢展示SDO索引是如何“仅仅是另一张表”,以及级别是索引的属性,以及索引几何的bbox如何存储为blob(可以提取)。Postgis如何存储索引,在哪里?

系统表http://www.postgresql.org/docs/8.3/static/catalogs.html可用于标识索引,但是我不知道如何访问实际存储(如果它们确实是表)


我发现了这一点:< sai.msu.su/~megera/postgres/gist/gevel/README.gevel >。Gevel应该能够可视化它,但是我无法使其与PostGIS 2.0中的postgis.app(mac osx)一起运行。
MartinT

1
在PostgreSQL中,它们不只是“另一个表”。它们是完全不同格式的索引关系。
Craig Ringer

我认为gevel是存在的。因此,也许您应该用安装gevel的问题来改写您的问题。当然,有趣的问题。
约翰·鲍威尔,

感谢您的评论。克雷格(Craig),如果您没有评论,但提供了更多详细信息或相关材料的链接,我将不赞成。我对如何存储此文件感兴趣。约翰,我将再提一个问题。不过,我所追求的只是关于如何实现存储的文档的指针。
MartinT

:我在这里加了约gevel问题gis.stackexchange.com/questions/180887/...
MartinT

Answers:


2

正如克雷格(Craig)提到的那样,空间索引不仅仅是另一个表。相反,PostGis使用GiST作为存储bbox详细信息的结构基础。是的,这(使用默认值时)与B树或R树不同,效率更高,精度也更低。但是您可以指定使GiST索引与其他存储中的空间索引相似的参数。

这是有关如何使用它们(包括扩展它们)的文档

挖。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.