zoukankan      html  css  js  c++  java
  • mysql索引设计

    mysql索引设计

    1.B树与B+树的区别?
    B-Tree:一个节点可以拥有大于2个子节点的平衡多叉树,所有关键字在整颗树中出现,包括在非叶子节点也能命中,
    叶子节点之间没有链表
    B+Tree:每个叶子节点包含指向一个叶子节点的指针,方便范围遍历,所有记录在同一层的叶子节点中。

    2.MySQL中HASH索引和B+树索引的区别?
    hash索引,基于哈希表实现,不是顺序存储,只正对于精确匹配的查询有效,对每一行数据,存储引擎都会
    对所有的索引列计算一个哈希码,哈希索引将哈希码存储在索引中,同时在哈希表中存储指向每个数据行的指针。
    B+Tree:按照索引键顺序存储,适合范围查找。

    3.聚簇索引与辅助索引的区别?
    聚餐索引:主键的B+Tree,叶子节点包含记录行的所有数据,按照主键顺序存放,
    辅助索引:叶子节点除了包含键值以外,每个叶子节点的索引行还包含一个书签(bookmark),告诉innodb存储引擎
    在哪里可以找到与索引行对应的数据,辅助索引的存在并不影响数据在聚集索引中的组织。
    当通过辅助索引来寻找数据时,innodb会遍历辅助索引并通过叶级别的指针获得指向主键索引的键值,然后在通过
    主键索引来找到一个完整的记录行。

  • 相关阅读:
    代码对齐[UVA1593]
    数数字
    子序列
    细菌培养
    内联函数那些事情
    一个简单的问题
    头文件重复包含问题的一点笔记
    mapreduce 对文件分词读取
    hadoop hive-2.3.5安装
    hadoop sqoop 实例
  • 原文地址:https://www.cnblogs.com/yhq1314/p/10266596.html
Copyright © 2011-2022 走看看