(1)什么是数据一致性
事务机制ACID和CAP理论是数据库和分布式系统中两个重要的概念,这两个概念中都有相同的“C”代表 “Consistency” 一致性。
ACID体现在数据库领域,其中ACID中的“C”数据一致性是指事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后,数据库都必须处于一致性状态。 比如:A向B转账,A扣款的同时B到账。
CAP体现在分布式领域,其中CAP中的”C”数据一致性是指是所有副本在同一时间的数据完全一致,比如:A、B、C三个副本,A中写入数据”Hello”,写完马上读B和C,就一定要读出“Hello”读出来我们就称之为符合一致性。
(2)为什么需要数据一致性
为了更清楚的体现出数据一致性的重要程度,用举例的方式表达为什么需要数据一致性。举个简单的例子来描述一下这里数据一致性的含义。
程序员小张向女友小丽转账125元,转账过程是:先扣除小张125元,再为小丽的账户添加125元。如果在转帐过程中,扣款操作和打款操作要么同一时间执行,要么同一时间都不执行,我们就认为转帐过程保证了数据一致性。数据能否实现一致性,对金融、公安等重要行业来说至关重要。
(3) Hubble硬核技术价值
Hubble的数据一致性技术既包括ACID数据库中的数据一致性,又包括CAP分布式系统中的数据一致性,Hubble数据库可以做到最高级别可串行化。
a)用户体验感好;
b)支持串行化事务;
c)能保证多个事务并发时的执行顺序对数据的一致性没有影响。