• 2020-01-04:mysql里的innodb引擎的数据结构,你有看过吗?


    福哥答案2020-01-04:

    面试官刚开始问我看过mysql源码没,然后问了这个问题。回答B+树,过不了面试官那关。
    答案来自《MySQL技术内幕 InnoDB存储引擎 第2版》第四章,时间仓促,答案不一定对,如果有更好的答案,请直接留言评论。

    表空间tablespace:所有数据都放在表空间中。

    段segment:数据段、索引段、回滚段。

    区extent:一个区有64个连续页,一个引擎页为16KB。

    页page或者块block:16K。数据页(B-tree Node)、undo页(undo Log Page)、系统页(System Page)、事务数据页(Transaction system Page)、插入缓冲位图页(Insert Buffer Bitmap)、插入缓冲空闲列表页(Insert Buffer Free List)、未压缩的二进制大对象页(Uncompressed BLOB Page)、压缩的二进制大对象页(compressed BLOB Page)。

    行row:
    Compact格式:
    1.变长字段长度列表
    2.NULL标志位
    3.记录头信息
    4.列1~n数据
    Redundant格式:
    1.字段长度偏移列表
    2.记录头信息
    3.列1~n数据
    ***
    [MySQL源码分析(4):InnoDB主要数据结构及调用流程](https://blog.csdn.net/zcjrun/article/details/6276175)
    [评论](https://user.qzone.qq.com/3182319461/blog/1609714774)

  • 相关阅读:
    openfalcon源码分析之transfer
    openfalcon源码分析之hbs
    openfalcon源码分析之Judge
    kong插件官方文档翻译
    Lua 学习
    GO语言heap剖析及利用heap实现优先级队列
    GO语言list剖析
    算法之python创建链表实现cache
    杂项之rabbitmq
    杂项之python利用pycrypto实现RSA
  • 原文地址:https://www.cnblogs.com/waitmoon/p/14233027.html
Copyright © 2020-2023  润新知