logo好方法网

一种同步流量控制方法、系统、装置及可读存储介质


技术摘要:
本发明公开了一种同步流量控制方法,包括:根据获取的数据对应的数据类型将数据放入对应的队列;统计第一队列的历史延时,利用历史延时计算第二队列中同步数据对应的同步延时;判断同步数据在第二队列中的等待时长是否大于同步延时;若是,则将同步数据放入第一队列;  全部
背景技术:
为了提高存储资源的利用率和可靠性,云计算提供商和存储提供商通常把多个物 理存储设备虚拟成单个或者少数几个存储池,再从这些存储池中创建逻辑磁盘划分给虚拟 计算机或者物理计算机使用。 为了避免出现因故障照成的系统不可用情况,存储池中的数据会有多个副本,而 且这些副本会分布在不同的设备上。如果某块逻辑盘的一个副本所在的物理设备发生故 障,则需要在其他物理设备上重建该副本,从而保证逻辑盘的副本数不变。整个重建过程是 上层无感知的,也就是说所有业务都不会因为数据的损坏而停止。为了保证业务有足够的 网络和磁盘性能以执行,需要对数据同步这个过程做流量控制,现有流量控制方法需要管 理员设置同步带宽百分比,但是如果设置过大,在业务繁忙时会影响业务正常运行。如果设 置过小;在业务不繁忙时,会导致数据同步速度过慢,无法尽快完成同步,不能充分发挥物 理硬件性能。因此现有流量控制方法无法根据存储系统的业务执行情况控制同步流量。 因此,如何解决现有流量控制方法无法根据存储系统的业务执行情况控制同步流 量的问题,是本领域技术人员需要解决的技术问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种同步流量控制方法、同步流量控制设备、同 步流量控制装置及计算机可读存储介质,解决了现有流量控制方法无法根据存储系统的业 务执行情况控制同步流量的问题。 为解决上述技术问题,本发明提供了一种同步流量控制方法,包括: 根据获取的数据对应的数据类型将所述数据放入对应的队列; 统计第一队列的历史延时,并利用所述历史延时计算第二队列中同步数据对应的 同步延时; 判断所述同步数据在所述第二队列中的等待时长是否大于所述同步延时; 若是,则将所述同步数据放入所述第一队列。 可选地,所述统计第一队列的历史延时,包括: 统计各个已写入数据对应的写入时长;其中,所述写入时长为所述已写入数据从 进入所述第一队列到完成写入所用的时长; 按照滑动平均值公式,利用所述写入时长计算所述历史延时。 可选地,所述利用所述历史延时计算第二队列中同步数据对应的同步延时,包括: 利用延时权重和所述历史延时计算目标延时; 利用所述历史延时与所述目标延时相减,得到所述同步延时。 4 CN 111586088 A 说 明 书 2/8 页 可选地,所述根据获取的数据对应的数据类型将所述数据放入对应的队列,包括: 对所述数据进行解析,得到所述数据对应的标志信息; 利用所述标志信息判断所述数据是否为所述同步数据; 若是,则将所述数据放入所述第二队列的队尾; 若否,则将所述数据放入所述第一队列的队尾。 可选地,还包括: 从所述第一队列的队首获取目标数据,并将所述目标数据写入存储池。 可选地,在根据获取的数据对应的数据类型将所述数据放入对应的队列之前,还 包括: 判断是否发生数据丢失故障; 若否,则将所述数据放入所述第一队列; 若是,则执行所述根据获取的数据对应的数据类型将所述数据放入对应的队列的 步骤。 本发明还提供了一种同步流量控制装置,包括: 第一放置模块,用于根据获取的数据对应的数据类型将所述数据放入对应的队 列; 计算模块,用于统计第一队列的历史延时,并利用所述历史延时计算第二队列中 同步数据对应的同步延时; 时长判断模块,用于判断所述同步数据在所述第二队列中的等待时长是否大于所 述同步延时; 第二放置模块,用于若所述等待时长大于所述同步延时,则将所述同步数据放入 所述第一队列。 可选地,所述计算模块,包括: 写入时长统计单元,用于统计各个已写入数据对应的写入时长;其中,所述写入时 长为所述已写入数据从进入所述第一队列到完成写入所用的时长; 历史延时计算单元,用于按照滑动平均值公式,利用所述写入时长计算所述历史 延时。 本发明还提供了一种同步流量控制设备,包括存储器和处理器,其中: 所述存储器,用于保存计算机程序; 所述处理器,用于执行所述计算机程序,以实现上述的同步流量控制方法。 本发明还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算 机程序被处理器执行时实现上述的同步流量控制方法。 本发明提供的同步流量控制方法,根据获取的数据对应的数据类型将数据放入对 应的队列;统计第一队列的历史延时,利用历史延时计算第二队列中同步数据对应的同步 延时;判断同步数据在第二队列中的等待时长是否大于同步延时;若是,则将同步数据放入 第一队列。 可见,该方法在获取数据后,先根据数据类型将数据放入对应的队列中。同时统计 第一队列对应的历史延时,历史延时体现了第一队列中数据的写入情况。根据历史延时计 算同步数据对应的同步延时,并在同步数据的等待时长大于同步延时后将其放入第一队列 5 CN 111586088 A 说 明 书 3/8 页 以便等待写入。该方法根据第一队列的数据写入情况调整同步数据放入第一队列的速度, 以便调整同步数据的写入速度,实现对同步流量大小的控制。在业务较忙时降低数据同步 速度,在业务不忙时提高数据同步速度,实现了根据业务执行情况调整数据同步速度的功 能,解决了现有流量控制方法无法根据存储系统的业务执行情况控制数据同步流量的问 题。 此外,本发明还提供了一种同步流量控制装置、同步流量控制设备及计算机可读 存储介质,同样具有上述有益效果。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 提供的附图获得其他的附图。 图1为本发明实施例提供的一种同步流量控制方法流程图; 图2为本发明实施例提供的一种具体的同步延时计算方法流程图; 图3为本发明实施例提供的一种同步流量控制装置的结构示意图; 图4为本发明实施例提供的一种同步流量控制设备的结构示意图。
分享到:
收藏