为什么在postgres中默认索引位于b树而不是B +树

时间:2019-07-09 07:36:22

标签: postgresql indexing b-tree

到目前为止,我在Postgres的文档中看到的是,当我们要为某个列建立索引时,默认情况下它将使用B树作为索引的数据结构,但是B +树比B树快得多,所以为什么默认索引是在B树上而不在B +树上。

供参考(B +树如何更好):https://www.tutorialcup.com/dbms/b-tree.htm

所以我的问题是:为什么他们默认不使用B +树进行索引。

1 个答案:

答案 0 :(得分:0)

我不是该领域的专家,但是使用B +树而不是常规B树来在PostgreSQL中建立索引似乎无济于事。

来自Wikipedia

  

Postgres中的普通(“ btree”类型)索引不是B +树。首先,对于数据库索引,B +树和B树之间的区别是胡说八道-索引本身中的所有列 是查找键,并且它们在叶上都是相同的级别与其他任何级别一样。 record 本身通常存储在单独的结构中-对于Postgres,它是表堆。