zoukankan      html  css  js  c++  java
  • 索引能提高检索速度,降低维护速度

    索引为什么能提高检索速度?

    索引将无序的数据变成有序(相对),如果没用索引我们需要遍历双向链表来定位对应的页。有了索引就通过“目录”很快能定位到对应的页上。底层结构是B+树,B+树作为树的一种实现,能够让我们很快地查找出对应的记录。

    为什么索引会降低插入、删除、修改等维护任务的速度?

    1、B+树是平衡树的一种,是不会退化成链表的,树的高度都是相对比较低的,基本符合矮胖均匀结构,时间复杂度是O(logn)(平衡树是一棵空树或者它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树)

    2、如果一棵普通的树在极端的情况下是能退化成链表的(树的优点就不存在了)

    3、建索引就是建一棵B+树,因为B+树是一棵平衡树,如果我们对这棵树进行增删改的话是会破坏它的原有结构。所以要维持平衡树,就必须做额外的工作。正是因为这些额外的开销,导致索引会降低增删改的速度。

    欢迎批评指正,提出问题,谢谢!
  • 相关阅读:
    Pyton 练习题2
    Python 知识点练习
    pycharm 汉化
    关于sublime编辑Python的安装与配置
    python练习题
    虚短和虚断
    OSI的7层协议
    5V电压的制作
    三角波,方波,正弦波的转换
    单片机不工作,晶振是否起振怎么检查
  • 原文地址:https://www.cnblogs.com/xxeleanor/p/14360594.html
Copyright © 2011-2022 走看看