一种面向周期性复制系统的副本陈旧度量化分析模型技术方案

技术编号:37351833 阅读:15 留言:0更新日期:2023-04-27 07:03
一种面向周期性复制系统中的副本陈旧度量化分析模型,其特征在于为周期性复制系统建立了量化t

【技术实现步骤摘要】
一种面向周期性复制系统的副本陈旧度量化分析模型


[0001]本专利技术公开了一种面向周期性复制系统的副本陈旧度量化分析模型,涉及广域分布式存储系统面临的挑战,属于计算机


技术介绍

[0002]周期性复制是现代分布式系统降低一致性维护开销的方法之一,也是普遍采用的一种方式。这些系统通常采用基于领导者的复制(也称主动/被动或主/从复制),系统只允许在领导者节点写入,每个写入请求带有领导者节点全局递增的版本号和写入时间戳,并将写请求通过领导者的多播机制或追随者的拉取周期性地传输到追随者节点,并提交更新,保证全局写的线性一致性。这种复制方式由于领导者节点的强一致性、高可用性以及周期性复制的低成本,在广域分布的系统中得到了广泛的部署及使用,例如HDFS、Lustre、GlusterFS、MongoDB等。这些系统的领导者和追随者节点之间在没有后续更新的情况下最终是一致的,但分布式系统通常在数据动态变化的环境中运行,且由于领导者节点和追随者之间的较高的网络延迟以及惰性复制的延迟,本地副本无法提供一致的数据,这导致了有关副本陈旧度的问题。如果缺少对数据陈旧度的量化,很难分析不同的系统设计对一致性行为的影响,难以比较较弱的一致性的优越性,也无法实现一致性和其他系统指标(例如延迟、吞吐量等)的细粒度权衡。此外,不同的应用程序对数据的陈旧度容忍性不同,例如天气预报应用可容忍15min内过时的数据,但是网上订票应用需要最新的数据。为了实现上述目标,需要解决以下问题:如何量化最终一致性系统中的副本陈旧度。当前量化副本陈旧度的研究方法可以分为基于测量的方法和基于模型的方法。
[0003]基于测量的方法通常将系统视为“黑匣子”,忽略内部设置和配置,对系统进行基准测试。这些基准测试都会生成或者合成一个工作负载,然后收集一个全局trace信息,然后测量该全局trace信息中的不一致性。Haonan Lu等人提出了φ(P)

consistency、φ(S:P)

consistency用于从理论上分析弱一致性引起的异常,并且设计实现了trace收集器、一致性检查器用于实时监控系统的副本的运行状况用于实时监控系统的不同的副本的运行状况。基于此,他们对Facebook的TAO系统的真实负载数据进行追踪分析,发现该系统的只有0.0004%的不一致读。Chenhao Huang等人对MongoDB进行基准测试,在他们的实验中,包含2200次测量,共计110,000,000次读取和63,800次写入,用于观察次要副本和最近副本不一致读取的概率。Polygraph是一个基准测试程序,它没有设置特定的负载,而是与现有的基准测试(TPC

C、SEATS、TATP、YCSB、和BG)结合来量化应用程序一致性异常的数量。这些工作以一致性异常操作的比例或数量为指标来量化陈旧度,仅能粗略地量化系统中用户观察到的不一致量,无法衡量用户读取到的数据相对于最新数据的陈旧程度。因此很多工作提出或采用一些更细粒度的陈旧度指标来解决这一问题。Rahman等人引入了t

freshness的概念:如果读取的数据是最新写入的数据或者写入时间不超过t秒则认为读取的数据是新鲜的,基于此指标,他们研究了基于quorum复制的分布式系统中一致性和性能的权衡,他们采用PID和乘法控制方法在每个迭代中注入3000个操作日志来量化当前的陈旧度,通过调
整自适应的控制参数以满足一致性和延迟要求。这是一种试错法的思想,但是在实际环境中乘法控制回路容易震荡,难以收敛到目标状态。Golab等人从基于时间的陈旧度和基于操作计数的陈旧度两方面量化了返回数据的陈旧程度。同时Golab还提出了一种可用于检测一致性异常发生的频率以及它们的严重程度的跟踪分析方法和新的一致性度量,称为Γ一致性。基于测量的方法通过对各种存储系统进行基准测试,然后被动地分析历史操作日志可有效地量化某些一致性异常行为。但是系统历史操作日志的数量通常很大,每天产生数百GB甚至数TB的文件;其次,这些方法将系统视为“黑盒”,不能有效理解系统的运行机理。因此,仅靠测量的方法在成本以及可理解性上仍然有限。
[0004]基于模型的方法旨在从理论上分析并量化系统的一致性行为,对不同的系统或陈旧度指标建立数学模型来从理论层面上分析陈旧度。PBS模型是弱一致性系统中陈旧度的量化最相关的工作。这项开创性的工作解决了部分quorum系统中两个重要的问题:一是最终一致的系统返回陈旧数据的时间和原因,二是如何量化它们返回的数据的陈旧性。PBS提出了两种度量陈旧度的指标,分别是t

visibility和k

staleness;前者可以预测单个写入操作后读取陈旧值时间单位的概率,后者可以回答读取到的数据陈旧度在k个版本范围内的概率。PBS基于WARS模型预测协调者和副本之间的延迟,然后基于公式来预测t

visibility和k

staleness,其中N是系统所有节点数,W是写入仲裁大小,R是读取仲裁大小。PGC则在其基础上进一步做出了改进,能够更好的预测读到陈旧值的概率。另一个广泛使用陈旧度指标是信息年龄的指标AOI,该陈旧度指标定义为最新更新发生以来经过的时间。作为研究数据新鲜度的重要指标,它后续被许多工作使用来研究数据复制系统中的副本新鲜度。Jing zhong等人研究了基于quorum复制的分布式系统中,读取仲裁的数据新鲜度,并推导了年龄优化的写入仲裁大小。Behrouzi

Far等人研究了基于领导者复制系统中领导者的数量以及读取查询的大小与检索到的数据新鲜度关系,并发现了使检索数据平均年龄最小化的最佳的领导者数量。Jing Zhong的另一项工作则在多个数据更新源,单个本地服务器的缓存刷新系统场景下量化了AOI和AOS的指标。但是其忽略了实际场景中写入延迟,在地理分布的存储系统中,写入延迟可能会非常大。而且在缓存场景下,本地服务器需要连接到不同的数据源更新其缓存数据项,而周期性复制系统本地副本存储的是全量副本,由领导者节点周期性同步副本。Harmony可以根据应用程序要求在运行时自适应地调整一致性级别。Harmony假设系统的工作负载服从泊松分布,面向基于quorum复制的系统设计了一种陈旧读取的智能估计模型,允许弹性地增加或减少读取仲裁的大小,以维持较低比例的陈旧读取。PAB则面向quorum复制的系统提出了几乎强一致性的快速读取算法,通过将陈旧的读取转换为读反转和写反转两种模式,量化了该一致性维护算法下数据过时的界限和过时的概率。
[0005]现有的副本陈旧度的量化方法存在的问题主要为:
[0006]基于测量的方法通过对各种存储系统进行基准测试,然后被动地分析历史操作日志量化某些一致性异常行为。但是系统历史操作日志的数量通常很大,每天产生几百GB甚至TB的文件;其次,这些方法将系统视为“黑盒”,不能有效理解系统的运行机理。因此,仅靠测量的方法在成本以及可理解性上仍然本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向周期性复制系统的副本陈旧度量化分析模型,其特征在于为周期性复制系统建立了量化t

visibility、k

staleness、t

staleness三个陈旧性指标的分析模型,根据这些系统的工作负载和同步周期推导出这些指标的表达式,可从理论上分析这些系统的副本陈旧度;为这些指标建立了统一的衡量标准,公平地考虑一个周期内的陈旧度,可用于比较不同的同步策略;假设数据动态变化情况下,并将不同地理位置的追随者节点写入延迟考虑在内,提高模型的实用性。本发明具有良好的实用性和理论性,能根据实际工作负载以及系统同步配置分析不同地理位置的追随者节点的副本陈旧度,为分析、优化存储系统提供陈旧度量化结果,同时满足具有不同陈旧度容忍性的应用需求。2.根据权利要求1所述的方法,其特征在于,包括以下步骤:1)制定周期性复制系统的副本陈旧度模型化表述;2)每个追随者节点在进行副本陈旧度分析前尽可能收集所有节点的所有操作日志的更新信息,为获得追随者节点——领导者节点的写入延迟分布提供依据;3)根据领导者节点的更新过程分析追随者节点的副本陈旧度变化,从而绘制追随者节点的三个陈旧性指标的变化曲线,可详细直观地分析各追随者节点的陈旧性变化过程;4)基于各追随者节点的三个陈旧性指标的变化曲线,推导三个陈旧性指标的表达式,这些表达式可在不同负载、系统同步配置提供各追随者节点的平均陈旧度量化结果。3.根据权利要求2所述的方法,其特征在于,所述步骤1)包括以下步骤:步骤(1.1)将领导者节点每个数据项(记为y)的外部更新过程建模为泊松过程(更新率记为λ
y
),领导者节点周期性地向追随者节点(不同追随者节点用变量i表示)发送增量更新快照请求(更新周期记为θ),截至时间t追随者节点刷新本地副本的次数记为j;步骤(1.2)领导者节点每次开始传输数据的时间用变量P表示,追随者节点每次接收到领导者节点的数据的时刻用变量A表示,用随机变量R
i
表示领导者节点到追随者节点i的发送——接收过程的写入时间,用变量K表示写入的版本号;步骤(1.3)追随者节点本地副本最新的写入(记为w
k
)在领导者节点获得写入的时间(记为U
f,i
(t)),U
f,i
(t)=arg max{w
k
|w
k
+R
i,j
≤t};追随者节点自上次刷新本地副本以来,领导者节点最早的更新(记为w
e
)在领导者节点写入的时间(记为U
v,i
(t)),U
v,i
(t)=argmin{w
e
|P
j
≤w
e
≤t};追随者节点自上次刷新本地副本以来,领导者节点最早的更新在领导者节点写入的版本号(记为U
k,i
(t)),U
k,i
(t)=K(w
e
),追随者节点本地副本最新的写入的版本号(记为U
k

,i
(t)),U
k

,i
(t)=K(w
k
);步骤(1.4)定义周期性复制系统下t

freshness、t

visibility、k
...

【专利技术属性】
技术研发人员:肖利民张晨浩王良蒋世轩沈润楠王锦权韩萌宋尧
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1