(1)Mysql主从架构原理
- 主库把数据变更写入binlog
- 从库的IO线程对主库发起dump请求
- 主库IO线程推送binlog至从库
- 从库IO线程写入本地relay log
- 从库sql线程读取relay log,保持和主库数据一致
(2)B+树和B树的区别?
- 结构方面: B树每个节点可以有多于一个的关键字,而非叶子节点可能还存储数据,关键字数量比叶子节点少一个;B+树所有节点的关键字数量与子节点数量相等,且所有叶子节点都存储数据。12
- 存储内容方面: B树的数据既存储在非叶子节点,也存储在叶子节点;B+树的数据仅存储在叶子节点,非叶子节点只存储关键字和指向叶子节点的指针。
- 查找方式方面: B树的查找可能在非叶子节点结束;B+树的查找必须沿着从根到叶子的路径进行,直到找到具体的数据。
- 应用方面: B树适用于读操作较少而写操作频繁的场景;B+树更适合于数据库和文件系统的索引结构,特别是在需要频繁进行范围查询的情况下
B树在处理需要回溯到非叶子节点的情况时可能更高效,而B+树在处理需要遍历大量数据或进行范围查询的情况时更有优势。
(3)