数据库答题

数据库原理:就是将所要保存的数据,写入文本文件。这个文本文件就是你的数据库。这些文件以mysql的innodb来说是以b+数的方式存储的数据集合。也就是:保存有组织数据的容器

索引原理:MySQL的索引数据结构就是b+树,

    对比平衡二叉树:数据文件是存在硬盘文件中的,使用的时候需要加载进内存里面,当数据量太大的时候,不可能把全部数据都加载在内存,所有每次只能比较相邻节点的话,如果元素数量非常多的话,这样导致二叉查找树结构由于树的深度过大而造成磁盘I/O读写过于频繁,进而导致查询效率低下

    树的好处和b-树的对比:

      1, B树与红黑树最大的不同在于,B树的结点可以有许多子女,这样可以降低树的高度,减少io操作

      2,由于B+树的内部节点只存放主键因此,这样一个页中,存储的索引就会比较多,一次读取,可以在内存页中获取更多的主键,相对来说IO读写次数也就降低了

      3,B+树的叶节点由一条链相连,因此,当需要进行一次数据遍历的时候,B+树只需要使用O(logN)时间找到最小的一个节点,然后通过链进行O(N)的顺序遍历即可。limit操作

    底层:用16kb的页来存储数据,页头两端都有指针,一个双向链表的页的链表

猜你喜欢

转载自www.cnblogs.com/vhyc/p/9815453.html