说说innodb三大特性:
插入缓冲(change buffer),两次写(double write),自适应哈希索引(adaptive hash index)
构成了innodb的三大特性,这些性能让innodb引擎有了更好的性能和可靠性。
(1)插入缓存
影响数据库的主要性能问题是I/O,而插入缓存的作用就是把普通缩影上的DML操作从随机I/O变成顺序I/O,工作原理:先判断插入的普通索引页是否在缓冲池中,如果在就可以直接插入,不过不在就先房子change buffer 中,然后进行changebuffer普通索引的合并操作,可以将多个插入合并到一个插入中,提高了普通索引的插入性能。
show global variables like ‘innodb_change%%’;
±------------------------------±------+
| Variable_name | Value |
±------------------------------±------+
| innodb_change_buffer_max_size | 25 |#生产配置25
| innodb_change_buffering | all |
±------------------------------±------+
2 rows in set (0.00 sec)
innodb_change_buffer_max_size的含义:占innodb_buffer_pool的最大比例,默认25%,最大占bufferpool1/4.
innodb_change_buffering change_buffer的类型:
有如下几种类型