美文网首页
关系型数据库索引

关系型数据库索引

作者: 余明豪 | 来源:发表于2018-04-01 17:44 被阅读0次

索引是对数据库表中一个或多个列的值进行排序的数据结构,用于协助快速查询、更新数据库表中数据。索引的实现通常使用B_TREE及其变种。

1). 索引的底层实现原理和优化

在数据结构中,我们最为常见的搜索结构就是二叉搜索树和AVL树(高度平衡的二叉搜索树,为了提高二叉搜索树的效率,减少树的平均搜索长度)了。然而,无论二叉搜索树还是AVL树,当数据量比较大时,都会由于树的深度过大而造成I/O读写过于频繁,进而导致查询效率低下,因此对于索引而言,多叉树结构成为不二选择。特别地,B-Tree的各种操作能使B树保持较低的高度,从而保证高效的查找效率。

口语化描述: 无论时二叉树还是AVL树, 当数据两比较大的时候都会因为树的高度过大而造成io读写过于频繁,导致查询效率低下,解决方法就是多叉树。 B-Tree的各种操作能使树保持较低的高度,从而保证高效查询。

一棵m阶的B-tree应满足的性质:

B-tree中,每个结点包含:
1、本结点所含关键字的个数;
2、指向父结点的[指针];
3、关键字;
4、指向子结点的指针;

相关文章

  • ElasticSearch之倒排索引查询

    关系型数据库: 数据库====>表====>行====>列 ElasticSearch: 索引====>类型===...

  • elasticsearch基本操作

    名词解释 索引:类似RDMS的数据库类型:类似于关系型数据库中的表文档:类似于关系型数据库中的一行字段:类似于关系...

  • ES中一些名词

    索引(名词): 如前所述,一个索引类似于传统关系数据库中的一个数据库,是一个存储关系型文档的地方。索引(index...

  • 数据库索引

    无论是传统的关系型数据库,还是比较新型的Nosql数据库MongoDB 都需要合理使用索引加快搜索速度 索引和数据...

  • 无标题文章

    无论是关系型数据库还是非关系型数据库,乃至elasticsearch这种事实上承担着一定储存作用的搜索引擎,数据类...

  • HIVE表索引,分区和分桶的区别

    1.索引    Hive支持索引,但是Hive的索引与关系型数据库中的索引并不相同,比如,Hive不支持主键或者外...

  • 关系型数据库索引

    索引是对数据库表中一个或多个列的值进行排序的数据结构,用于协助快速查询、更新数据库表中数据。索引的实现通常使用B_...

  • 索引

    0.聚集索引与非聚集索引 索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构,SQL的主流索引结构有B...

  • 数据库的分类和常见的数据库

    分类:关系型数据库和非关系型数据库常见的关系型数据库有:mysqlOracleSQLserver 非关系型数据库:...

  • 数据库概念、原理、理论

    索引 事务(transaction) 关系型数据库遵循 ACID 规则事务在英文中是transaction,和现实...

网友评论

      本文标题:关系型数据库索引

      本文链接:https://www.haomeiwen.com/subject/umhacftx.html