Nie*_*est 141 database terminology definition nosql base-db
的BASE缩写,是用于描述特定的数据库,通常NoSQL数据库的属性.它通常被称为与ACID相反.
只有很少的文章涉及BASE的细节,而ACID有很多文章详细阐述了每个原子性,一致性,隔离性和耐久性属性.维基百科只用了几行来表达这个词.
这让我对定义有一些疑问:
B asically A vailable,S oft state,E ventual consistency
我使用这篇文章和我的想象力将这些属性解释如下:
基本上可用的可以指的是数据的感知可用性.如果单个节点发生故障,部分数据将不可用,但整个数据层仍然可以运行.
软状态:我所能找到的只是需要周期刷新的数据概念.如果没有刷新,数据将过期或被删除.
最终的一致性意味着在给定足够时间的情况下,更新最终将波及所有服务器.
有人可以详细解释这些属性吗?
或者它只是一个牵强附会和毫无意义的缩写,指的是化学中发现的酸和碱的概念?
Nie*_*est 157
BASE的首字母缩略词由Eric Brewer定义,他也因制定CAP定理而闻名.
CAP定理指出分布式计算机系统不能同时保证以下三个属性:
BASE系统放弃了一致性.
布鲁尔确实承认这个首字母缩略词是人为的:
那年早些时候,我和我的学生在办公室里找到了[BASE]的缩写词.我同意它有点做作,但"ACID"也是如此 - 比人们意识到的要多得多,所以我们认为它已经足够好了.
ACID 和 BASE 分别是 RDBMS 和 NoSQL 的一致性模型。ACID 事务要悲观得多,即他们更担心数据安全。在 NoSQL 数据库世界中,ACID 事务不太流行,因为一些数据库放宽了对即时一致性、数据新鲜度和准确性的要求,以获得其他好处,如可扩展性和弹性。
BASE 代表 -
因此 BASE 放宽了一致性,允许系统即使在不一致的状态下也能处理请求。
示例:如果他们的推文在短时间内在社交网络中不一致,没有人会介意。获得即时响应比拥有一致的用户信息状态更重要。
为了补充其他答案,我认为缩写词的派生是为了显示这两个术语之间的范围,以区分 RDMS 与大数据之间事务或请求的可靠性。
\n从这篇文章酸与碱
\n\n\n在化学中,pH 测量水(水中的溶剂)溶液的相对碱度和酸度。pH 范围从 0\n(强酸性物质,例如电池酸)到 14(强碱性物质,例如谎言);77\xc2\xb0 F (25\xc2\xb0 C) 的纯水的 pH 值为 7,呈中性。
\n数据工程师巧妙地从化学家那里借用了酸与碱,并\n创建了缩写词,尽管它们的含义并不准确,但在讨论事务处理的可靠性时\n仍然能够恰当地\n表示给定数据库系统中所发生的情况。
\n
另一点是,由于我一直在使用 Elasticsearch 处理大数据,如果我解释一下它的结构,将会有所帮助。Elasticsearch 的一个实例是一个节点,一组节点组成一个集群。
\n对我来说,从实际的角度来看,BA(基本可用)在这种情况下具有多个主节点来处理 Elasticsearch 集群及其操作的想法。
\n如果您有 3 个主节点,并且当前定向主节点出现故障,系统将保持运行状态,尽管处于效率较低的状态,并且另一个主节点将取代其作为主要定向主节点。如果两个主节点发生故障,系统仍保持运行状态,最后一个主节点将接管。
\n