如何在数据库索引中使用二进制搜索

时间:2012-02-24 18:56:08

标签: database algorithm relational-database binary-search database-indexes

我知道二进制搜索是如何工作的,但我想知道二进制搜索的实际用途...... 我通过互联网搜索,发现主要用途是数据库索引,但我无法理解二进制搜索如何帮助数据库索引。

4 个答案:

答案 0 :(得分:5)

假设键已经排序,

Binary search允许您通过键快速查找记录。如果键的数量很大,则尤其如此。 32个密钥读取足以在20亿个排序密钥的集合中找到任何单个唯一密钥。

二进制搜索以这种方式工作,因为每次搜索尝试都会将要搜索的记录数量减少一半。

也就是说,数据库通常使用其他binary tree类似的数据结构,例如b-treesred-black trees来执行索引。使用二叉树删除了在搜索之前对键列表进行排序的要求。

答案 1 :(得分:0)

只要您有排序列表,就可以使用二进制搜索来有效搜索列表。数据库索引是排序数据的数据结构。

答案 2 :(得分:0)

在我寻找解决方案时,找到了一个非常有用的链接,也是你问题的答案。

Using Binary trees in Table Database indexes

答案 3 :(得分:0)

二进制搜索计算每一步的下一个位置(中间点)。

数据库的二进制树 预计算 每个步骤的中间点,直到达到单个项目。将所有中间点填充到树中。什么时候查询,DBMS查找树。