BASE 术语解释 [英] Explanation of BASE terminology

查看:15
本文介绍了BASE 术语解释的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

BASE 首字母缩写词用于描述某些数据库的属性,通常是 NoSQL 数据库.它通常被称为 ACID 的反义词.

只有很少的文章涉及 BASE 的细节,而 ACID 有很多文章详细阐述了原子性、一致性、隔离性和持久性属性中的每一个.Wikipedia 仅将 几行 用于该术语.

这给我留下了一些关于定义的问题:

<块引用>

B基本上A可用,S经常状态,E最终一致性

我使用这篇文章和我的想象将这些属性解释如下:

基本可用可以指数据的感知可用性.如果单个节点发生故障,部分数据将不可用,但整个数据层仍可运行.

  • 这个解释是正确的,还是指别的东西?
  • 更新:Mau 的回答推导出来,这是否意味着整个数据层总是在接受新数据,即没有阻止数据立即插入的锁定场景?

软状态:我能找到的只是数据需要周期刷新的概念.不刷新,数据将过期或被删除.

  • 我觉得自动删除数据库中的数据很奇怪.
  • 过期或过时的数据更有意义.但这个概念适用于任何类型的冗余数据存储,而不仅仅是 NoSQL.那么它是否描述了其他东西?

最终一致性意味着如果有足够的时间,更新最终会波及所有服务器.

  • 这个属性我很清楚.
<小时>

谁能详细解释一下这些属性?

或者它只是一个牵强且毫无意义的首字母缩略词,指的是化学中的酸和碱的概念?

解决方案

BASE 首字母缩写词由 Eric Brewer,他也因制定 CAP 定理而闻名.p>

CAP 定理指出,分布式计算机系统不能同时保证以下三个属性:

  • 一致性
  • 可用性
  • 分区容错

BASE 系统放弃了一致性.

  • 基本可用表示根据 CAP 定理,系统确实保证可用性.
  • 软状态表示即使没有输入,系统的状态也可能随时间变化.这是因为最终一致性模型.
  • 最终一致性表示系统将随着时间的推移变得一致,因为系统在此期间没有接收到输入.

Brewer 确实承认 首字母缩略词是人为设计的:

<块引用>

那年早些时候,我和我的学生在他们的办公室想出了 [the BASE] 的首字母缩略词.我同意它有点做作,但ACID"也是如此——比人们意识到的要多得多,所以我们认为它已经足够好了.

The BASE acronym is used to describe the properties of certain databases, usually NoSQL databases. It's often referred to as the opposite of ACID.

There are only few articles that touch upon the details of BASE, whereas ACID has plenty of articles that elaborate on each of the atomicity, consistency, isolation and durability properties. Wikipedia only devotes a few lines to the term.

This leaves me with some questions about the definition:

Basically Available, Soft state, Eventual consistency

I have interpreted these properties as follows, using this article and my imagination:

Basically available could refer to the perceived availability of the data. If a single node fails, part of the data won't be available, but the entire data layer stays operational.

  • Is this interpretation correct, or does it refer to something else?
  • Update: deducing from Mau's answer, could it mean the entire data layer is always accepting new data, i.e. there are no locking scenarios that prevent data from being inserted immediately?

Soft state: All I could find was the concept of data needing a period refresh. Without a refresh, the data will expire or be deleted.

  • Automatic deletion of data in a database seems strange to me.
  • Expired or stale data makes more sense. But this concept would apply to any type of redundant data storage, not just NoSQL. Does it describe something else then?

Eventual consistency means that updates will eventually ripple through to all servers, given enough time.

  • This property is clear to me.

Can someone explain these properties in detail?

Or is it just a far-fetched and meaningless acronym that refers to the concepts of acids and bases as found in chemistry?

解决方案

The BASE acronym was defined by Eric Brewer, who is also known for formulating the CAP theorem.

The CAP theorem states that a distributed computer system cannot guarantee all of the following three properties at the same time:

  • Consistency
  • Availability
  • Partition tolerance

A BASE system gives up on consistency.

  • Basically available indicates that the system does guarantee availability, in terms of the CAP theorem.
  • Soft state indicates that the state of the system may change over time, even without input. This is because of the eventual consistency model.
  • Eventual consistency indicates that the system will become consistent over time, given that the system doesn't receive input during that time.

Brewer does admit that the acronym is contrived:

I came up with [the BASE] acronym with my students in their office earlier that year. I agree it is contrived a bit, but so is "ACID" -- much more than people realize, so we figured it was good enough.

这篇关于BASE 术语解释的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆