innodb,innodb cluster
一、innodb四大特性
1.ACID(原子性、一致性、隔离性、持久性)特性2.支持行级锁定,提高了并发操作的效率3.支持外键,可以保证数据的完整性4.支持MVCC(多版本并发控制)机制,读操作不会被写锁阻塞InnoDB具有ACID特性、支持行级锁定、外键和MVCC机制四大特性。InnoDB是MySQL中一个流行的存储引擎,具有这四大特性,从而使得其在高并发、事务性较强的应用场景中得到广泛应用和高度评价。除了以上四大特性,InnoDB还具备了自适应哈希索引、预读和缓冲池等独特特性,从而使其进一步提高了对读操作的效率和性能。
二、innodb和myisam的区别
InnoDB和MyISAM是MySQL中两种不同的表存储引擎,它们在数据处理及特点上有以下区别:
1.事务支持:InnoDB引擎支持事务,而MyISAM引擎不支持。因此,当需要实现事务支持的数据存储时,应该选择InnoDB。
2.行锁定和表锁定:InnoDB使用行锁定(row-levellocking)和表锁定(table-levellocking)来提高数据处理效率。MyISAM只支持表锁定而不支持行锁定,因此在并发访问量比较大的情况下,MyISAM性能较差。
3.外键支持:InnoDB支持外键约束,而MyISAM不支持。外键是提高表与表之间关系数据完整性的重要手段,如果需要实现关系型数据库的约束功能,应选择InnoDB引擎。
4.查询速度:在处理大量数据时,MyISAM的查询速度比InnoDB快,但InnoDB可以处理更高的并发访问量,并行访问更多的数据。
5.索引方式:MyISAM采用B+树索引,InnoDB采用聚簇索引,这意味着MyISAM可以更快地查询块状数据,但在数据写入和更新时速度较慢。
需要注意的是,在MySQL5.5之前,MyISAM是默认的存储引擎,而在MySQL5.5之后,InnoDB成为了默认的存储引擎。在选择使用哪种存储引擎时,应该根据自己的应用场景和需求来考虑,并合理配置相应的参数,以获得更好的数据库性能。
三、innodb三大特性
InnoDB存储引擎有三大特性非常令人激动,它们分别是插入缓冲、两次写和自适应哈希
innodb关键特性其中之二
写缓存是为了提升写性能,两次写为了提升可靠性
changebuffer
innodb引擎是索引组织表,所有记录都放在聚集索引里,因此其辅助索引中的记录地址存放的主键的键值。
它是一种特殊的数据结构,缓存对二级索引页面的更改并且这些页面不在bufferpool中。缓存的changes可能由insert、delete和update的结果导致。稍后在页面被其他读取操作加载到bufferpool的时候合并。