2.6 InnoDB关键特性

  • 插入缓冲
  • 两次写
  • 自适应哈希索引
  • 异步IO
  • 刷新邻接页

2.6.1 插入缓冲

    通常应用程序中行记录的插入顺序是按照主键的递增顺序进行插入的,因此插入聚集索引(Primary Key)一般是顺序的,不需要磁盘的随机读取,但是对于非聚集非唯一的索引的插入不再是顺序的,由于随机读取的存在导致了插入的性能下降。

    于是开创了Insert Buffer , 对于非聚集索引的插入和更新操作并不是每一次都插入到索引页中, 而是先判断非聚集索引页是否在缓冲池中,若在,则直接插入;若不在,则先放到一个Insert Buffer对象中,然后以一定的频率进行Insert Buffer和辅助索引子节点的merge操作,这样多个插入操作就合并成为了一个操作(因为在一个索引页中) 大大提高了非聚集索引的插入性能。

02-17 13:44