分布式数据库如何平衡状态一致性和读写延迟?
发布时间:2025年10月17日 12:20
所谓的允许是指:1. 同构化后中所学毕业转换能够中所学毕业到上一个撰写转换的参数;2. 单个程序在内的转换先后以此类推与在同构彼此间中所的转换先后以此类推相反。
绘不止2
绘不止3
由于不依赖于显然等待时间,我们暂时承诺画不止中所学毕业撰写转换的起止每一次,而将其当成仿佛进行的转换。在绘不止 2 中所,同构 1、2、3 中所,只有 3 是一个允许的同构,因此绘不止 2 中所的中所学毕业撰写充分利用以此类推差异性。而在绘不止 3 中所,不依赖于一个允许的同构,因此,绘不止 3 中所的中所学毕业撰写不充分利用以此类推差异性。
由此可见,标量差异性可以被毫无疑问以此类推差异性在依赖于显然等待时间的系统设计建模下的特例。
其本质差异性:由于程序在 p2 是中所学毕业取了程序在 p1 撰写送入的结果之后撰写送入,程序在 p2 的撰写送入参数和程序在 p1 的撰写送入参数显然依赖于其本质彼此间。那么,所有在同一个程序在内的整年中所学毕业转换都不可以先中所学毕业到程序在 p2 的撰写送入参数,如此一来中所学毕业到程序在 p1 的撰写送入参数。
绘不止4
绘不止5
绘不止 4 中所,程序在 p1 和 p2,p2 先中所学毕业到了 p1 撰写 x:=1 的结果,然后撰写 x:=3。撰写 x:=3 显然是由中所学毕业 x=1 算出而来,因此依赖于其本质彼此间。p3 充分利用了其本质差异性,p4 则违背了其本质差异性。
绘不止 5 中所,p2 暂时中所学毕业 x=1,因此不依赖于其本质彼此间。该系统设计充分利用其本质差异性,但不充分利用以此类推差异性。
FIFO 差异性:FIFO 差异性不可能会考虑到多个程序在相互间的转换排序。对取参数一个程序在的撰写转换 1 与撰写转换 2,若撰写转换 1 迟至撰写转换 2 进行,那么任何程序在不可以先中所学毕业到撰写转换 2 的参数,如此一来中所学毕业到撰写转换 1 的参数。
绘不止 3 就是一个违背 FIFO 差异性的举例来说。绘不止 4 与绘不止 5 中所,由于不依赖于同一个程序在中所的多个撰写转换,因此都充分利用 FIFO 差异性。
就此差异性(Eventual consistency):就此差异性,可以这样界定,若系统设计中所暂时发生撰写转换,经过一段等待时间后,所有的中所学毕业转换上可能会给予除此以外的参数。
绘不止6
以绘不止 6 为例,就此相反的结果,既显然是 1,又显然是 2,还显然是 3(在不依赖于显然等待时间的系统设计,甚至不能界定就此撰写送入的参数是 1、2 还是 3),但所有程序在如此一来足够总长的等待时间后的中所学毕业结果都能够保持相反。
多手写的差异性最很高级别是由模版建模中所的差异性最很高级别必要应用于到分布式系统设计中所的结果,但有少许差别。用心的好友显然说明了,我们并没有人提及严苛差异性,那是因为严苛差异性承诺原始数据被尽快该系统(比如在 CPU 的下一个计时器周期可见),这只能依赖于于单机系统设计中所,未必依赖于于依赖于最新消息推迟的分布式系统设计中所 [4]。
我们往往所说是的过关斩将相反,往往是指标量差异性或以此类推差异性 [5][6]。标量差异性与以此类推差异性相互间的相异,也可以被忽略为系统设计建模的相异,即系统设计中所否依赖于显然等待时间。较弱于以此类推差异性的差异性最很高级别都可被称为较弱相反,而就此差异性是较弱差异性的一种形式。
概述差异性最很高级别时,一个常犯的缺失是与事务的受控最很高级别混为一谈,事实上,虽然它们相互间依赖于一定的直接联系,但未必是同一无所谓。当一个原始文档在受控最很高级别上充分利用可串行化(Serializable),在差异性上充分利用标量差异性,则称为严苛可串行化(Strict Serializable),这是一个并存了差异性最很高级别与受控最很高级别的界定。
另一个常犯的缺失是将差异性(consistency)与协商(consensus)混为一谈。协商难题是在分布式系统设计中所有明确界定的一类难题,彻底解决协商难题的经典解法是 paxos;过关斩将相反中所学毕业撰写可以通过一系列的同构协商做到,Raft 便是这样一种解法。
以上界定的差异性最很高级别可以被看来是以原始数据为中所心(Data-centric)的差异性最很高级别,另一种界定方式将是以客户端为中所心(Client-centric),还可以界定不止撰写后中所学毕业、中所学毕业后撰写、单调撰写、单调中所学毕业的差异性,此处暂时赘述 [4]。
2差异性最很高级别深送入研究:以 Raft 为例
下面我们以 Raft 为例深送入研究其差异性最很高级别。在正常但可能会,Raft 是在 leader 上进行中所学毕业与撰写转换的,可以被毫无疑问单中所学毕业单撰写的系统设计,若这个系统设计中所将 leader 的等待时间当成显然等待时间,则可看来透过了标量差异性。
但是,我们还能够考虑到异常情况,当最新消息推迟时,Raft 显然不止现短暂的双主;若不止现互联分组,显然小规模处于多主状况。
一种做到方式将是,假如每个 leader 在透过中所学毕业服务于时都不做额外转换,那么,如果多数派分组的 leader 并未进行了新撰写送入,少数派分组的 leader 无论如何透过中所学毕业服务于,就显然中所学毕业到从新原始数据。
这个难题的一种彻底解决基本原理是,让少数派分组的 leader 必要拒绝中所学毕业服务于。这如何做到呢?让 leader 在与客户端交互,进行中所学毕业转换前发送一个 no-op 并至少给予总数回应,由于少数派分组的 leader 不能给予总数回应,因此不能透过中所学毕业服务于。
关于如何在 Raft 中所赢得标量差异性的详细概述可详见 Raft 论文 [7] 中所第 8 节 Client Interaction。
3TDengine 透过的差异性最很高级别
在上述的深送入研究中所可以看见,Raft 中所做到标量差异性可能会为中所学毕业转换和撰写转换都带来至少 2 个 RTT 的推迟(client 视点,从 client 到 leader,如此一来由 leader 到 follower);即使仅做到以此类推差异性,也可能会在撰写时带来至少 2 个 RTT 的推迟。
在 TDengine 中所,为了减小撰写送入原始数据的推迟、提很高吞吐量,我们为表单(表原始数据、表的标签原始数据)透过过关斩将差异性,为的系统原始数据透过就此差异性与过关斩将差异性两种可选的差异性最很高级别。当应用于程序选择就此相反该系统,撰写送入的推迟可以被减小到 1 个 RTT(从 client 到 leader),这不断优于 Raft 这类过关斩将相反克隆协议透过的性能。
随着 TDengine 炮兵部队版的开源,应用于程序数量与日俱增,TDengine 被应用于到了多种多样十分复杂的生态中所。当炮兵部队中所依赖于互联分组、或节点整年宕机等异常但可能会,TDengine 中所显然不能意味着严苛的过关斩将差异性,因此,在快要到来的 3.0 正式版中所,我们将以 Raft 解法蓝本重构选主、过关斩将相反克隆等一系列流程,同时,无论如何为的系统原始数据透过就此相反与过关斩将相反两种该系统方式也,给应用于程序透过灵活的选择,努力应用于程序适应最十分复杂的业务范围情节只需求。
注释:
[2]RAYNAL, M. (2018). FAULT-TOLERANT MESSAGE-PASSING DISTRIBUTED SYSTEMS: an algorithmic approach.
[4]Sukumar Ghosh. 2014. Distributed Systems: An Algorithmic Approach, Second Edition (2nd. ed.). Chapman Brown Hall/CRC.
[5]Kemme, B., Schiper, A., Ramalingam, G., Brown Shapiro, M. (2014). Dagstuhl seminar review: Consistency in distributed systems. ACM SIGACT News, 45(1), 67-89.
[6]Kleppmann, M. (2015). Designing data-intensive applications.
[7]Ongaro, D., Brown Ousterhout, J. (2013). In search of an understandable consensus algorithm (extended version).
腾讯公司员工送入职满15年可调职;双11天蝎座总营业额5403亿元,三镇超3491亿元;中所芯国际重大人事震荡 | Q资讯 从接口文化史看架构的未来:程序设计暂时是两大们的电脑游戏 牵牛7.5亿都做极差的项目,被三位程序员小时候重撰写并开源了 相比之下35岁程序员,无知犯错的年轻一代否非常确实被原谅?
活动推荐
汇集网络平台最尺度技术段落,聚齐各教育领域最优异创作者
InfoQ 引航计划月顺利完成,下一个引导技术教育领域共建发展的 Pioneer 就是你!
扫描下方二维码受益非常多活动电子邮件!
点个在看少个 bug👇
。调理肠道利活乳酸菌素片教师节送礼什么比较好 草珊瑚含片
手术后恢复喝江中初元
- 的竞速并能才是重里面之重,而在这全面性,榴弹炮300正因如此更加加出色。首先推进力上,配备的设备2.0T汽油推进力装置,仅次于马力227匹,瞬时力矩降至了387牛米,匹配8AT四轮驱动,推进力完全够用
- 高合HiPhi Z月底开启预定 售价区间60-80万元
- 或将于7月15日亮相 现代高性能N系列新车预告片图
- 大地海洋IPO登陆创业板:“无用之用”的绿色商机募集4亿元 前瞻性布局被弃资源综合利用市场
- 妈湾跨海通道项目盾构掘进突破千米大关,预定四季度贯通
- 于是又出发!江西又一批爱心蔬菜驰援上海
- 意大利总理德拉吉新冠扫描呈阳性
- 联合国教科文组织微博关注中科院停运知网:呼吁开放科学
- 安杰思主动撤回科创板子上市申请 证监会曾问及科创属性
- 波斯尼亚4个购物中心因炸弹预警疏散人群
- 张梦秋:尽力终会有收获 现在不搏何时搏
- 每经24点 | 国家邮政局:着力维护快递员群体合法权益,关注基层一线“急难愁盼”的现实疑虑;郑州新增11例新冠肺炎无症状感染者
- 中航无人机科创铁板IPO:核心产品翼龙系列 毛利率大幅波动、2019年仅为7.36%
- 关于引首付引利率、延期偿还房贷,央行这样说
- 对拐卖妇女知情不报或将违规行为!