使用Postgres创建B +树并在B +树的节点中添加其他字段

时间:2013-08-05 02:46:50

标签: postgresql data-structures indexing b-tree

是否可以使用Postgres创建B +树?我的要求是我需要在数据库中的某个列上创建B +树索引。与该节点相关联,存在一个密钥以及每当该特定节点访问B +树我需要检索此键值。是否可以使用Postgres实现这一点?是否可以导出使用Postgres创建的索引并将其存储在另一个索引服务器中?

1 个答案:

答案 0 :(得分:3)

您使用的术语“B +树”与“B树”的区别是什么?如果是这样,Postgres文档中的以下链接可能会有所帮助:http://www.postgresql.org/docs/current/static/xindex.html。我根本没有创建自定义索引的经验,因此我无法确定该链接是否会对您过度帮助。

此外,在文档:http://www.postgresql.org/about/中,还有一个部分包含:

  

GiST(广义搜索树)索引是一种高级系统   汇集了各种不同的排序和搜索   算法包括B树,B +树,R树,部分和树,   排名B + - 树和其他许多人。它还提供了一个界面   允许创建自定义数据类型以及可扩展   用于搜索它们的查询方法。因此,GiST提供   灵活地指定您存储的内容,存储方式以及存储方式   能够定义搜索它的新方法 - 迄今为止的方法   超过标准B树,R树和其他广义的   搜索算法。

     

GiST是许多使用公共项目的基础   PostgreSQL,如OpenFTS和PostGIS。 OpenFTS(开源全文   搜索引擎)提供数据和相关性排名的在线索引   用于数据库搜索。 PostGIS是一个增加支持的项目   PostgreSQL中的地理对象,允许它用作空间   地理信息系统(GIS)数据库,与ESRI非常相似   SDE或Oracle的Spatial扩展。

因此,您可以扩展或创建自己的b +树索引。