NoSQL的BASE特性指的是基本可用(BA)、软状态(S)、最终一致性(E),这一概念由由 Eric Brewer 定义。BASE特性的具体解释如下:
1.基本可用(Basically Available):
NoSQL允许分布式系统中某些部分出现故障,那么系统的其余部分依然可用。它不会像ACID那样,在系统出现故障时,进行强制拒绝,允许继续部分访问。
2.软状态(Soft State):
NoSQL在数据处理过程中,允许这个过程,存在数据状态暂时不一致的情况。但经过纠错处理,最终会一致的。
3.最终一致性(Eventually Consistent):
NoSQL的软状态允许数据处理过程的暂时不一致,但是最终处理结果将是一致的,说明NoSQL对数据处理过程可以有短暂的时间间隔,也允许分更细的步骤一个一个地处理,最好数据达到一致即可。这在互联网上进行分布式应用具有其明显的优势。
与RDBMS关注一致性不同,BASE系统关注可用性。BASE系统显著的特点是它们的首要目标是要保证在短时间内,即使有不同步的风险,也要允许新数据能够被存储。NoSQL系统放宽了规则并允许即使不是所有数据库都是同步的,也能运行报表。BASE系统不被认为是悲观的,因为它们并不会关心某个过程背后的细节。它们是乐观的,因为它们假设最后所有系统都会同步而变得一致。
BASE系统倾向于更加简单和迅速,因为它们不必编写处理锁定和释放资源的代码。它们的任务是保证流程运转并稍后处理出错的部分。BASE系统非常适合支持网上商店,填满购物车和下订单才是它们的主要优先功能。
资料来源:
NoSQL中的“BASE”特性 https://blog.csdn.net/Jop_qq/article/details/101015141
NoSQL 简介 https://www.runoob.com/mongodb/nosql.html
《解读NoSQL》——2.5 比较ACID和BASE——两种可靠的数据库事务方法 https://yq.aliyun.com/articles/96829