CN115543965A - 跨机房数据处理方法、设备、存储介质及程序产品 - Google Patents

跨机房数据处理方法、设备、存储介质及程序产品 Download PDF

Info

Publication number
CN115543965A
CN115543965A CN202211295665.0A CN202211295665A CN115543965A CN 115543965 A CN115543965 A CN 115543965A CN 202211295665 A CN202211295665 A CN 202211295665A CN 115543965 A CN115543965 A CN 115543965A
Authority
CN
China
Prior art keywords
data
task
accessed
machine room
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211295665.0A
Other languages
English (en)
Inventor
张鑫春
李亚坤
郭俊
宋浩祥
章玮
冯玮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Volcano Engine Technology Co Ltd
Original Assignee
Beijing Volcano Engine Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Volcano Engine Technology Co Ltd filed Critical Beijing Volcano Engine Technology Co Ltd
Priority to CN202211295665.0A priority Critical patent/CN115543965A/zh
Publication of CN115543965A publication Critical patent/CN115543965A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开实施例提供一种跨机房数据处理方法、设备、存储介质及程序产品,通过分析当前机房中周期性的离线数据访问任务的任务信息确定待访问数据的目标存活时间及最早使用时间;根据待访问数据的目标存活时间及当前机房的第一缓存空间的剩余容量生成数据迁移任务,并将最早使用时间确定为数据迁移任务的执行期限;根据执行期限执行数据迁移任务跨机房读取待迁移数据,并作为副本缓存在当前机房的第一缓存空间,供当前机房后续数据访问任务在本地访问。基于待访问数据的目标存活时间及最早使用时间生成数据迁移任务,提前进行副本缓存,使离线数据访问任务不需跨机房读取数据,提高任务执行速度,适用于任何存储场景,且避免副本占用过多的缓存空间。

Description

跨机房数据处理方法、设备、存储介质及程序产品
技术领域
本公开实施例涉及计算机与网络通信技术领域,尤其涉及一种跨机房数据处理方法、设备、存储介质及程序产品。
背景技术
业务的计算逻辑与数据之间存在错综复杂的依赖关系,难以完全解耦,究其原因在于数据生产端与消费端之间存在割裂,消费端无法准确获知数据的存储策略,导致跨机房数据访问不可避免。
对于跨机房数据读写,特别是大数据离线场景下,当计算任务需要跨机房传输数据时,不仅占用大量带宽,而且会导致任务运行时间大大增加。
发明内容
本公开实施例提供一种跨机房数据处理方法、设备、存储介质及程序产品,以提高跨机房数据访问任务的执行速度。
第一方面,本公开实施例提供一种跨机房数据处理方法,包括:
获取当前机房中周期性的离线数据访问任务的任务信息;
根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;
根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
第二方面,本公开实施例提供一种跨机房数据处理设备,包括:
获取单元,用于获取当前机房中周期性的离线数据访问任务的任务信息;
分析单元,用于根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
数据迁移单元,用于根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
副本缓存单元,用于将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
第三方面,本公开实施例提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
本公开实施例提供的跨机房数据处理方法、设备、存储介质及程序产品,通过获取当前机房中周期性的离线数据访问任务的任务信息;根据任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将最早使用时间确定为数据迁移任务的执行期限;根据执行期限,执行数据迁移任务,从待访问数据所在机房进行跨机房读取待迁移数据;将已读取的待迁移数据作为副本缓存在当前机房的第一缓存空间中,以供当前机房后续数据访问任务在本地访问第一缓存空间中的副本。基于待访问数据的目标存活时间以及最早使用时间生成数据迁移任务,提前进行跨机房数据副本缓存,使得离线数据访问任务不需要跨机房读取数据,可有效的提高离线数据访问任务的执行速度,可适用于任何存储场景,并且以缓存空间作为约束,可避免副本占用过多的缓存空间。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种跨机房数据处理的示例图;
图2为本公开一实施例提供的跨机房数据处理方法流程示意图;
图3为本公开另一实施例提供的跨机房数据处理方法流程示意图;
图4为本公开另一实施例提供的跨机房数据处理方法流程示意图;
图5为本公开另一实施例提供的跨机房数据处理方法流程示意图;
图6为本公开一实施例提供的跨机房数据处理设备的结构框图;
图7为本公开一实施例提供的电子设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
由于业务的计算逻辑与数据之间存在错综复杂的依赖关系,难以完全解耦,究其原因在于数据生产端与消费端之间存在割裂,消费端无法准确获知数据的存储策略,导致跨机房数据访问不可避免。
对于跨机房数据读写,特别是大数据离线场景下,当计算任务需要跨机房传输数据时,不仅占用大量带宽,而且会导致任务运行时间大大增加。
现有技术中通常进行垂直化部署,也即将计算和存储部署在同一机房,避免跨机房数据访问。但是限制了资源共享的粒度,当机房容量达到上限时,扩容极为困难;计算逻辑与数据之间的依赖关系复杂,并非所有业务都能完全垂直化部署。
此外,一些技术中采用以存储换网络,在本地机房对跨机房数据缓存只读副本,减少重复跨机房访问,从而以磁盘空间换取跨机房带宽资源,但其支持场景有限,针对数据仓库等结构化数据场景,扩展到其他场景需要较大的改造;并且仅适用于追加写,缓存副本不可更新,一旦副本被修改会导致数据不一致性;并且仅具备计算视角,从计算角度进行优化,利用存储空间换网络带宽,可能导致数据搬迁过程中的网络突发流量,对线上作业的运行产生影响。
针对上述至少一个技术问题,本公开提供一种跨机房数据处理方法,通过获取当前机房中周期性的离线数据访问任务的任务信息;根据任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将最早使用时间确定为数据迁移任务的执行期限;根据执行期限,执行数据迁移任务,从待访问数据所在机房进行跨机房读取待迁移数据;将已读取的待迁移数据作为副本缓存在当前机房的第一缓存空间中,以供当前机房后续数据访问任务在本地访问第一缓存空间中的副本。基于待访问数据的目标存活时间以及最早使用时间生成数据迁移任务,提前进行跨机房数据副本缓存,使得离线数据访问任务不需要跨机房读取数据,可有效的提高离线数据访问任务的执行速度,可适用于任何存储场景,并且以缓存空间作为约束,可避免副本占用过多的缓存空间。
本公开的跨机房数据处理方法适用于如图1所示的应用场景,其中包括计算设备、网络设备以及存储设备,其中计算设备用于对当前机房(多个机房中的任一机房)中周期性的离线数据访问任务的任务信息进行分析,确定待访问数据的目标存活时间以及最早使用时间,根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;存储设备用于根据执行期限执行数据迁移任务,从待访问数据所在机房进行跨机房读取待迁移数据,并作为副本缓存在当前机房的第一缓存空间中;网络设备用于进行跨机房网络管控,尤其是,可以对数据迁移任务分配低优先级的带宽,其中低优先级的带宽优先级低于在线任务的带宽,并且在检测到在线任务的带宽不足时,限制数据迁移任务使用低优先级的带宽。
此外,计算设备还可对当前机房中的实时数据访问任务确定实时数据访问任务待访问的目标文件,生成目标文件的懒加载任务;存储设备可采用懒加载的方式,以文件粒度从目标文件所在机房进行跨机房读取目标文件,将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供当前机房后续的实时数据访问任务在本地访问第二缓存空间中的副本。存储设备还可判断目标文件是否超过第二缓存空间的剩余容量,若超过,则淘汰第二缓存空间中访问频率最低的文件,再缓存目标文件。
下面将结合具体实施例对本公开的跨机房数据处理方法进行详细介绍。
参考图2,图2为本公开一实施例提供的跨机房数据处理方法流程示意图。本实施例的方法可以应用在终端设备或服务器中,该跨机房数据处理方法包括:
S201、获取当前机房中周期性的离线数据访问任务的任务信息。
在本实施例中,当前机房中存在周期性执行的对离线数据进行访问的访问任务,离线数据访问任务的任务信息可以是历史周期中离线数据访问任务的任务信息,也可以是预设的任务信息,可以作为源数据进行下述的处理步骤,其中特征信息具体可包括但不限于所访问的数据、访问了多少个周期的数据(例如最近7天内的数据A)、该数据所在机房、访问时间等等。
S202、根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间。
在本实施例中,根据上述任务信息,来分析确定当前周期内离线数据访问任务所需要访问的待访问数据的目标存活时间(Time To Live,TTL)以及最早使用时间,其中目标存活时间是该数据即将在第一缓存空间中缓存的时长,例如目标存活时间为7天,则该数据在第一缓存空间中缓存7天后清除;而最早使用时间是在当前周期内最早使用该数据的时间,也即访问该数据的离线数据访问任务的最早执行时间。
可选的,当前机房中需要访问同一个待访问数据的离线数据访问任务存在多个;进一步的,在确定待访问数据的目标存活时间时,可包括:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定每个离线数据访问任务对所述待访问数据的使用周期,根据每个离线数据访问任务对所述待访问数据的使用周期确定所述待访问数据的目标存活时间。
在本实施例中,当前机房中需要访问同一个待访问数据的多个离线数据访问任务对待访问数据的使用周期可能并不相同,例如离线数据访问任务a使用最近7天内的数据,离线数据访问任务b使用最近14天内的数据,因此为了尽可能同时满足各离线数据访问任务对数据的使用,可将数据的目标存活时间设定为14天,也即,可以将各离线数据访问任务对所述待访问数据的使用周期中最长的使用周期确定为所述待访问数据的目标存活时间,根据该目标存活时间对待访问数据在本地进行缓存,可同时满足各离线数据访问任务对待访问数据的使用,而不需要跨机房。
可选的,考虑到缓存空间有限,本实施例中对第一缓存空间设定了容量上限,因此在确定待访问数据的目标存活时间时,还需要考虑第一缓存空间的剩余容量,也即,根据各离线数据访问任务对所述待访问数据的使用周期、以及所述待访问数据的跨机房读写比,确定所述待访问数据的目标存活时间,例如当第一缓存空间剩余容量不足,且存在多个待访问数据需要迁移时,优先迁移跨机房读写比更高的待访问数据。例如数据A近7天数据被跨机房访问10次,近14天数据被跨机房访问3次,数据B近3天数据被跨机房访问6次,近7天数据被跨机房访问1次,则优先缓存数据A近7天数据和数据B近3天的数据。在缓存有余量的情况下,再考虑缓存数据A近8~14天的数据,而数据B近4~7天的数据无需缓存。
此外,在待访问数据的最早使用时间时,可包括:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定在一个周期中每个离线数据访问任务访问所述待访问数据的时间,将其中最早访问所述待访问数据的时间确定为所述待访问数据的最早使用时间。例如,离线数据访问任务c访问待访问数据A的时间为7:00,离线数据访问任务d访问待访问数据A的时间为8:00,则待访问数据A最早使用时间为7:00。
S203、根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限。
在本实施例中,在确定待访问数据的目标存活时间以及最早使用时间后,可综合待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,从待访问数据中确定部分数据或全部数据作为待迁移数据,并将待访问数据的目标存活时间确定为待迁移数据的目标存活时间(也即在第一缓存空间中缓存的时间),生成数据迁移任务,其中当前机房的第一缓存空间的剩余容量作为约束,此外,将待访问数据最早使用时间确定为数据迁移任务的执行期限(deadline)。数据迁移任务具体可如下所示:
{
"path":"hdfs://xxx",
"toDC":"dc",
"ttl":86400,
"deadline":1654427578235
}
其中,数据迁移任务包括待访问数据的路径(path),需要缓存到当前机房的路径,目标存活时间(ttl)以及执行期限(deadline)。
S204、根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据。
在本实施例中,可根据执行期限执行数据迁移任务,从待访问数据所在机房进行跨机房读取待迁移数据,由于离线数据访问任务是执行期限是最早访问待访问数据的时间,因此该数据迁移任务需要在执行期限之前执行,若在到达执行期限时该数据迁移任务尚未执行或未执行完,则离线数据访问任务无法从本地读取到完整的待迁移数据,仍需要跨机房读取待迁移数据。
可选的,在存在多个数据迁移任务时,可根据执行期限的前后顺序对各数据迁移任务进行排序,根据排序由前至后执行各数据迁移任务,以保证尽可能满足在先执行的离线数据访问任务不需要跨机房;但是,对于任一数据迁移任务,若当前时间已超过其对应的最早使用时间,则跳过该数据迁移任务,继续后续的数据迁移任务。本实施例中,可根据网络的空闲情况控制数据迁移任务的并发度。
可选的,可以由网络管理中心对数据迁移任务分配低优先级的带宽,其中低优先级的带宽优先级低于在线任务的带宽;在检测到在线任务的带宽不足时,限制数据迁移任务使用低优先级的带宽,通过带宽限制保证在线任务的运行,避免对在线任务产生影响。
S205、将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
在本实施例中,在从待访问数据所在机房进行跨机房读取到待迁移数据后,将其作为副本缓存到当前机房的第一缓存空间中,以供当前机房后续数据访问任务在本地访问第一缓存空间中的副本,不需要跨机房,提高了数据读写速度,其中后续数据访问任务包括任意需要访问该待访问数据的数据访问任务,包括但不限于离线数据访问任务。其中,在待访问数据更新时,可对所有机房中相同的待访问数据的副本进行更新。
本实施例的跨机房数据处理方法,通过获取当前机房中周期性的离线数据访问任务的任务信息;根据任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将最早使用时间确定为数据迁移任务的执行期限;根据执行期限,执行数据迁移任务,从待访问数据所在机房进行跨机房读取待迁移数据;将已读取的待迁移数据作为副本缓存在当前机房的第一缓存空间中,以供当前机房后续数据访问任务在本地访问第一缓存空间中的副本。基于待访问数据的目标存活时间以及最早使用时间生成数据迁移任务,提前进行跨机房数据副本缓存,使得离线数据访问任务不需要跨机房读取数据,可有效的提高离线数据访问任务的执行速度,可适用于任何存储场景,并且以缓存空间作为约束,可避免副本占用过多的缓存空间。
在上述任一实施例的基础上,当前机房中还可能包括一些实时数据访问任务,该些实时数据访问任务可能是临时性的,不是周期性的,因此无法生成上述数据迁移任务,如图3所示,可采用如下步骤进行处理:
S301、对于当前机房中的实时数据访问任务,确定所述实时数据访问任务待访问的目标文件;
S302、采用懒加载的方式,以文件粒度从所述目标文件所在机房进行跨机房读取所述目标文件;
S303、将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供所述当前机房后续的实时数据访问任务在本地访问所述第二缓存空间中的副本。
在本实施例中,针对于实时数据访问任务,可首先确定实时数据访问任务待访问的目标文件,再以懒加载的方式进行跨机房读取目标文件,其中懒加载的方式也即执行实时数据访问任务时需要使用目标文件的时候才去跨机房读取目标文件,并且以文件的粒度进行跨机房读取,而不是分区的粒度,只读取所需的目标文件,避免读取无用文件,跨机房读取数据减小带宽,提高跨机房访问数据的速度。
而在跨机房读取到目标文件后,除了供实时数据访问任务使用外,还可将目标文件作为副本缓存在当前机房的第二缓存空间中,后续的实时数据访问任务在需要访问目标文件时,不需要再次跨机房读取目标文件,而是转换为在本地访问第二缓存空间中目标文件的副本,提高了实时数据访问任务的执行速度。
可选的,由于缓存空间有限,本实施例中同样对第二缓存空间设定了容量上限,在将目标文件作为副本缓存在当前机房的第二缓存空间中时,具体可包括:
判断所述目标文件是否超过所述第二缓存空间的剩余容量;
若所述目标文件未超过所述第二缓存空间的剩余容量,则直接将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中;
若所述目标文件超过所述第二缓存空间的剩余容量,则淘汰所述第二缓存空间中访问频率最低的文件,再将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中。
其中,淘汰第二缓存空间中访问频率最低的文件可采用LFU(Least FrequentlyUsed,最近最不经常使用算法)算法,或者其他算法,此处不做赘述。
需要说明的是,在上述实施例的基础上,将数据访问任务划分为周期性的离线数据访问任务和实时数据访问任务,分别执行图2和图3的跨机房数据处理方法;如图4所示,可通过作业特征分析,数据访问任务判断是离线数据访问任务和实时数据访问任务;在针对周期性的离线数据访问任务时进行图2所示的跨机房数据处理方法,也即根据任务信息(可从数据库DB获取)最终确定数据迁移任务,其中可由计算集群实现上述过程,若识别到数据访问任务是非周期性的离线数据访问任务(如实时数据访问任务),可直接跳过,不执行上述的针对周期性的离线数据访问任务的跨机房数据处理方法;而在针对实时数据访问任务时进行图3所示的跨机房数据处理方法,也即在实时数据访问任务提交后,通过作业特征分析确定为实时数据访问任务,即采用懒加载方式访问目标文件,若识别到数据访问任务是周期性的离线数据访问任务,则不执行上述的实时数据访问任务的跨机房数据处理方法,而是执行上述针对周期性的离线数据访问任务的跨机房数据处理方法,可提交至上述的计算集群处理。
进一步的,可由网络设备进行网络带宽管控,例如对数据迁移任务分配低优先级的带宽,其中低优先级的带宽优先级低于在线任务的带宽;在检测到在线任务的带宽不足时,限制数据迁移任务使用低优先级的带宽,避免对在线任务产生影响。
在上述任一实施例的基础上,本实施例还可根据副本的读写比提供数据治理方案,如图5所示,具体可包括:
S401、确定各机房缓存的各种副本中读写比高于第一阈值、且数据量大于第二阈值的目标副本;
S402、根据各机房对所述目标副本的读写次数、以及所述目标副本的副本份数,确定所述目标副本在各机房中的分布策略,使得各机房对所述目标副本进行跨机房读写次数最少;
S403、根据所述分布策略控制所述目标副本在各机房进行缓存。
在本实施例中,对于各机房中缓存的一些读写比较高、且数据量较大的目标副本(例如一些热表),可分析其在各机房中的最佳分布策略,来调整副本分布,达到最佳收益,当目标副本分布在n个机房时,会存在至少n-1次跨机房写入;当数据访问任务所在机房没有该目标副本时,则会存在至少1次跨机房读取,通过调整副本分布可减少跨机房数据读写量,降低跨机房网络带宽。其中,如图4所示,存储设备可配置有分析学习中心、存储策略中心以及副本加速执行器,分析过程中可由分析学习中心来对副本访问历史元数据进行分析,确定各机房中缓存的一些读写比较高、且数据量较大的目标副本(例如一些热表),由存储策略中心根据各机房中缓存的一些读写比较高、且数据量较大的目标副本(例如一些热表),可分析其在各机房中的最佳分布策略(数据治理策略),由副本加速执行器来实现根据最佳分布策略调整副本分布。
对于任一目标副本,可分析各机房对该目标副本的读写次数,例如机房x、y、z对该目标副本的读取次数分别是3、7、5,而假设设定目标副本的副本份数为2,也即目标副本最多缓存在2个机房中,可分别穷举不同的分布策略,计算跨机房读写成本;
对于写入,目标副本缓存在任意2个机房中至少存在1次跨机房写入;
对于读取,假设目标副本分布在机房X和Y,则机房Z需要跨机房读取目标副本,读取次数为5次;假设目标副本分布在机房Y和Z,则机房X需要跨机房读取目标副本,读取次数为3次;假设目标副本分布在机房X和Z,则机房Y需要跨机房读取目标副本,读取次数为7次;因此目标副本分布在机房Y和Z,目标副本跨机房读取次数最少,确定为最佳分布策略,进而调整目标副本的分布,使其缓存在机房Y和Z,可减少跨机房数据读写量,降低跨机房网络带宽。最佳分布策略如下:
{
"write_client":["Y","Z"],
"replicas":["Y","Z"]
}
对应于上文实施例的跨机房数据处理方法,图6为本公开实施例提供的跨机房数据处理设备的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图6,所述跨机房数据处理设备500包括:获取单元501、分析单元502、数据迁移单元503、副本缓存单元504。
其中,获取单元501,用于获取当前机房中周期性的离线数据访问任务的任务信息;
分析单元502,用于根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
数据迁移单元503,用于根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
副本缓存单元504,用于将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
在本公开的一个或多个实施例中,所述当前机房中需要访问所述待访问数据的离线数据访问任务存在多个;所述分析单元502在根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间时,用于:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定每个离线数据访问任务对所述待访问数据的使用周期,根据每个离线数据访问任务对所述待访问数据的使用周期、以及所述待访问数据的跨机房读写比,确定所述待访问数据的目标存活时间;和/或
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定在一个周期中每个离线数据访问任务访问所述待访问数据的时间,将其中最早访问所述待访问数据的时间确定为所述待访问数据的最早使用时间。
在本公开的一个或多个实施例中,所述分析单元502在根据每个离线数据访问任务对所述待访问数据的使用周期确定所述待访问数据的目标存活时间时,用于:
将各离线数据访问任务对所述待访问数据的使用周期中最长的使用周期确定为所述待访问数据的目标存活时间;或者
根据各离线数据访问任务对所述待访问数据的使用周期以及跨机房读写比,确定数据量满足所述第一缓存空间的剩余容量的使用周期,确定为所述待访问数据的目标存活时间。
在本公开的一个或多个实施例中,所述数据迁移单元503在根据所述执行期限,执行所述数据迁移任务时,用于:
根据所述执行期限的前后顺序对各数据迁移任务进行排序,根据排序由前至后执行各数据迁移任务;
其中,对于任一数据迁移任务,若当前时间已超过其对应的执行期限,则跳过该数据迁移任务。
在本公开的一个或多个实施例中,所述数据迁移单元503在执行所述数据迁移任务时,用于:
对所述数据迁移任务分配低优先级的带宽,其中所述低优先级的带宽优先级低于在线任务的带宽;
在检测到在线任务的带宽不足时,限制所述数据迁移任务使用所述低优先级的带宽。
在本公开的一个或多个实施例中,所述分析单元502还用于,对于当前机房中的实时数据访问任务,确定所述实时数据访问任务待访问的目标文件;
所述数据迁移单元503还用于,采用懒加载的方式,以文件粒度从所述目标文件所在机房进行跨机房读取所述目标文件;
所述副本缓存单元504还用于,将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供所述当前机房后续的实时数据访问任务在本地访问所述第二缓存空间中的副本。
在本公开的一个或多个实施例中,所述副本缓存单元504在将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中时,用于:
判断所述目标文件是否超过所述第二缓存空间的剩余容量;
若所述目标文件未超过所述第二缓存空间的剩余容量,则直接将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中;
若所述目标文件超过所述第二缓存空间的剩余容量,则淘汰所述第二缓存空间中访问频率最低的文件,再将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中。
在本公开的一个或多个实施例中,所述数据迁移单元503还用于:
确定各机房缓存的各种副本中读写比高于第一阈值、且数据量大于第二阈值的目标副本;
根据各机房对所述目标副本的读写次数、以及所述目标副本的副本份数,确定所述目标副本在各机房中的分布策略,使得各机房对所述目标副本进行跨机房读写次数最少;
根据所述分布策略控制所述目标副本在各机房进行缓存。
本实施例提供的设备,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
参考图7,其示出了适于用来实现本公开实施例的电子设备600的结构示意图,该电子设备600可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(Portable MediaPlayer,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(Read Only Memory,简称ROM)602中的程序或者从存储装置608加载到随机访问存储器(Random Access Memory,简称RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(Liquid CrystalDisplay,简称LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
第一方面,根据本公开的一个或多个实施例,提供了一种跨机房数据处理方法,包括:
获取当前机房中周期性的离线数据访问任务的任务信息;
根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;
根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
根据本公开的一个或多个实施例,所述当前机房中需要访问所述待访问数据的离线数据访问任务存在多个;所述根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间,包括:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定每个离线数据访问任务对所述待访问数据的使用周期,根据每个离线数据访问任务对所述待访问数据的使用周期、以及所述待访问数据的跨机房读写比,确定所述待访问数据的目标存活时间;和/或
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定在一个周期中每个离线数据访问任务访问所述待访问数据的时间,将其中最早访问所述待访问数据的时间确定为所述待访问数据的最早使用时间。
根据本公开的一个或多个实施例,所述根据每个离线数据访问任务对所述待访问数据的使用周期确定所述待访问数据的目标存活时间,包括:
将各离线数据访问任务对所述待访问数据的使用周期中最长的使用周期确定为所述待访问数据的目标存活时间;或者
根据各离线数据访问任务对所述待访问数据的使用周期以及跨机房读写比,确定数据量满足所述第一缓存空间的剩余容量的使用周期,确定为所述待访问数据的目标存活时间。
根据本公开的一个或多个实施例,所述根据所述执行期限,执行所述数据迁移任务,包括:
根据所述执行期限的前后顺序对各数据迁移任务进行排序,根据排序由前至后执行各数据迁移任务;
其中,对于任一数据迁移任务,若当前时间已超过其对应的执行期限,则跳过该数据迁移任务。
根据本公开的一个或多个实施例,所述执行所述数据迁移任务,包括:
对所述数据迁移任务分配低优先级的带宽,其中所述低优先级的带宽优先级低于在线任务的带宽;
在检测到在线任务的带宽不足时,限制所述数据迁移任务使用所述低优先级的带宽。
根据本公开的一个或多个实施例,所述方法还包括:
对于当前机房中的实时数据访问任务,确定所述实时数据访问任务待访问的目标文件;
采用懒加载的方式,以文件粒度从所述目标文件所在机房进行跨机房读取所述目标文件;
将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供所述当前机房后续的实时数据访问任务在本地访问所述第二缓存空间中的副本。
根据本公开的一个或多个实施例,所述将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,包括:
判断所述目标文件是否超过所述第二缓存空间的剩余容量;
若所述目标文件未超过所述第二缓存空间的剩余容量,则直接将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中;
若所述目标文件超过所述第二缓存空间的剩余容量,则淘汰所述第二缓存空间中访问频率最低的文件,再将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中。
根据本公开的一个或多个实施例,所述方法还包括:
确定各机房缓存的各种副本中读写比高于第一阈值、且数据量大于第二阈值的目标副本;
根据各机房对所述目标副本的读写次数、以及所述目标副本的副本份数,确定所述目标副本在各机房中的分布策略,使得各机房对所述目标副本进行跨机房读写次数最少;
根据所述分布策略控制所述目标副本在各机房进行缓存。
第二方面,根据本公开的一个或多个实施例,提供了一种跨机房数据处理设备,包括:
获取单元,用于获取当前机房中周期性的离线数据访问任务的任务信息;
分析单元,用于根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
数据迁移单元,用于根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
副本缓存单元,用于将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
根据本公开的一个或多个实施例,所述当前机房中需要访问所述待访问数据的离线数据访问任务存在多个;所述分析单元在根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间时,用于:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定每个离线数据访问任务对所述待访问数据的使用周期,根据每个离线数据访问任务对所述待访问数据的使用周期、以及所述待访问数据的跨机房读写比,确定所述待访问数据的目标存活时间;和/或
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定在一个周期中每个离线数据访问任务访问所述待访问数据的时间,将其中最早访问所述待访问数据的时间确定为所述待访问数据的最早使用时间。
根据本公开的一个或多个实施例,所述分析单元在根据每个离线数据访问任务对所述待访问数据的使用周期确定所述待访问数据的目标存活时间时,用于:
将各离线数据访问任务对所述待访问数据的使用周期中最长的使用周期确定为所述待访问数据的目标存活时间;或者
根据各离线数据访问任务对所述待访问数据的使用周期以及跨机房读写比,确定数据量满足所述第一缓存空间的剩余容量的使用周期,确定为所述待访问数据的目标存活时间。
根据本公开的一个或多个实施例,所述数据迁移单元在根据所述执行期限,执行所述数据迁移任务时,用于:
根据所述执行期限的前后顺序对各数据迁移任务进行排序,根据排序由前至后执行各数据迁移任务;
其中,对于任一数据迁移任务,若当前时间已超过其对应的执行期限,则跳过该数据迁移任务。
根据本公开的一个或多个实施例,所述数据迁移单元在执行所述数据迁移任务时,用于:
对所述数据迁移任务分配低优先级的带宽,其中所述低优先级的带宽优先级低于在线任务的带宽;
在检测到在线任务的带宽不足时,限制所述数据迁移任务使用所述低优先级的带宽。
根据本公开的一个或多个实施例,所述分析单元还用于,对于当前机房中的实时数据访问任务,确定所述实时数据访问任务待访问的目标文件;
所述数据迁移单元还用于,采用懒加载的方式,以文件粒度从所述目标文件所在机房进行跨机房读取所述目标文件;
所述副本缓存单元还用于,将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供所述当前机房后续的实时数据访问任务在本地访问所述第二缓存空间中的副本。
根据本公开的一个或多个实施例,所述副本缓存单元在将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中时,用于:
判断所述目标文件是否超过所述第二缓存空间的剩余容量;
若所述目标文件未超过所述第二缓存空间的剩余容量,则直接将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中;
若所述目标文件超过所述第二缓存空间的剩余容量,则淘汰所述第二缓存空间中访问频率最低的文件,再将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中。
根据本公开的一个或多个实施例,所述数据迁移单元还用于:
确定各机房缓存的各种副本中读写比高于第一阈值、且数据量大于第二阈值的目标副本;
根据各机房对所述目标副本的读写次数、以及所述目标副本的副本份数,确定所述目标副本在各机房中的分布策略,使得各机房对所述目标副本进行跨机房读写次数最少;
根据所述分布策略控制所述目标副本在各机房进行缓存。
第三方面,根据本公开的一个或多个实施例,提供了一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
第四方面,根据本公开的一个或多个实施例,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
第五方面,根据本公开的一个或多个实施例,提供了一种计算机程序产品,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的跨机房数据处理方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (12)

1.一种跨机房数据处理方法,其特征在于,包括:
获取当前机房中周期性的离线数据访问任务的任务信息;
根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;
根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
根据所述执行期限执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
2.根据权利要求1所述的方法,其特征在于,所述当前机房中需要访问所述待访问数据的离线数据访问任务存在多个;所述根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间,包括:
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定每个离线数据访问任务对所述待访问数据的使用周期,根据每个离线数据访问任务对所述待访问数据的使用周期、以及所述待访问数据的跨机房读写比,确定所述待访问数据的目标存活时间;和/或
根据所述当前机房中多个周期性的离线数据访问任务的任务信息,确定在一个周期中每个离线数据访问任务访问所述待访问数据的时间,将其中最早访问所述待访问数据的时间确定为所述待访问数据的最早使用时间。
3.根据权利要求2所述的方法,其特征在于,所述根据每个离线数据访问任务对所述待访问数据的使用周期确定所述待访问数据的目标存活时间,包括:
将各离线数据访问任务对所述待访问数据的使用周期中最长的使用周期确定为所述待访问数据的目标存活时间;或者
根据各离线数据访问任务对所述待访问数据的使用周期以及跨机房读写比,确定数据量满足所述第一缓存空间的剩余容量的使用周期,确定为所述待访问数据的目标存活时间。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述执行期限,执行所述数据迁移任务,包括:
根据所述执行期限的前后顺序对各数据迁移任务进行排序,根据排序由前至后执行各数据迁移任务;
其中,对于任一数据迁移任务,若当前时间已超过其对应的执行期限,则跳过该数据迁移任务。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述执行所述数据迁移任务,包括:
对所述数据迁移任务分配低优先级的带宽,其中所述低优先级的带宽优先级低于在线任务的带宽;
在检测到在线任务的带宽不足时,限制所述数据迁移任务使用所述低优先级的带宽。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对于当前机房中的实时数据访问任务,确定所述实时数据访问任务待访问的目标文件;
采用懒加载的方式,以文件粒度从所述目标文件所在机房进行跨机房读取所述目标文件;
将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,以供所述当前机房后续的实时数据访问任务在本地访问所述第二缓存空间中的副本。
7.根据权利要求6所述的方法,其特征在于,所述将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中,包括:
判断所述目标文件是否超过所述第二缓存空间的剩余容量;
若所述目标文件未超过所述第二缓存空间的剩余容量,则直接将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中;
若所述目标文件超过所述第二缓存空间的剩余容量,则淘汰所述第二缓存空间中访问频率最低的文件,再将所述目标文件作为副本缓存在所述当前机房的第二缓存空间中。
8.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:
确定各机房缓存的各种副本中读写比高于第一阈值、且数据量大于第二阈值的目标副本;
根据各机房对所述目标副本的读写次数、以及所述目标副本的副本份数,确定所述目标副本在各机房中的分布策略,使得各机房对所述目标副本进行跨机房读写次数最少;
根据所述分布策略控制所述目标副本在各机房进行缓存。
9.一种跨机房数据处理设备,其特征在于,包括:
获取单元,用于获取当前机房中周期性的离线数据访问任务的任务信息;
分析单元,用于根据所述任务信息,确定待访问数据的目标存活时间以及最早使用时间;根据待访问数据的目标存活时间、以及当前机房的第一缓存空间的剩余容量,确定所述待访问数据中的待迁移数据以及待迁移数据的目标存活时间,生成数据迁移任务,并将所述最早使用时间确定为所述数据迁移任务的执行期限;
数据迁移单元,用于根据所述执行期限,执行所述数据迁移任务,从所述待访问数据所在机房进行跨机房读取所述待迁移数据;
副本缓存单元,用于将已读取的所述待迁移数据作为副本缓存在所述当前机房的第一缓存空间中,以供所述当前机房后续数据访问任务在本地访问所述第一缓存空间中的副本。
10.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-8任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-8任一项所述的方法。
12.一种计算机程序产品,其特征在于,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-8任一项所述的方法。
CN202211295665.0A 2022-10-21 2022-10-21 跨机房数据处理方法、设备、存储介质及程序产品 Pending CN115543965A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211295665.0A CN115543965A (zh) 2022-10-21 2022-10-21 跨机房数据处理方法、设备、存储介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211295665.0A CN115543965A (zh) 2022-10-21 2022-10-21 跨机房数据处理方法、设备、存储介质及程序产品

Publications (1)

Publication Number Publication Date
CN115543965A true CN115543965A (zh) 2022-12-30

Family

ID=84735200

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211295665.0A Pending CN115543965A (zh) 2022-10-21 2022-10-21 跨机房数据处理方法、设备、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN115543965A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115955488A (zh) * 2023-03-10 2023-04-11 智者四海(北京)技术有限公司 基于副本冗余的分布式存储副本跨机房放置方法与装置
CN116860723A (zh) * 2023-09-04 2023-10-10 合肥中科类脑智能技术有限公司 跨计算中心数据迁移方法
CN117742604A (zh) * 2023-12-20 2024-03-22 北京火山引擎科技有限公司 数据存储控制方法及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115955488A (zh) * 2023-03-10 2023-04-11 智者四海(北京)技术有限公司 基于副本冗余的分布式存储副本跨机房放置方法与装置
CN116860723A (zh) * 2023-09-04 2023-10-10 合肥中科类脑智能技术有限公司 跨计算中心数据迁移方法
CN116860723B (zh) * 2023-09-04 2023-11-21 合肥中科类脑智能技术有限公司 跨计算中心数据迁移方法
CN117742604A (zh) * 2023-12-20 2024-03-22 北京火山引擎科技有限公司 数据存储控制方法及设备

Similar Documents

Publication Publication Date Title
US20200328984A1 (en) Method and apparatus for allocating resource
CN115543965A (zh) 跨机房数据处理方法、设备、存储介质及程序产品
US10984073B2 (en) Dual phase matrix-vector multiplication system
US10133659B2 (en) Proactive memory allocation
CN114020470B (zh) 资源分配方法、装置、可读介质及电子设备
CN107729570B (zh) 用于服务器的数据迁移方法和装置
US20170017674A1 (en) Adaptive table placement in numa architectures
US8918795B2 (en) Handling and reporting of object state transitions on a multiprocess architecture
US9372725B2 (en) Dynamically adjusting wait periods according to system performance
CN114675964A (zh) 基于联邦决策树模型训练的分布式调度方法、系统及介质
CN114706820B (zh) 异步i/o请求的调度方法、系统、电子设备及介质
WO2023051228A1 (zh) 样例数据的处理方法、装置、设备和存储介质
CN115203210A (zh) 哈希表处理方法、装置、设备及计算机可读存储介质
US8341368B2 (en) Automatic reallocation of structured external storage structures
US10318341B2 (en) Selecting and resizing currently executing job to accommodate execution of another job
CN117056123A (zh) 数据恢复方法、装置、介质及电子设备
CN116737370A (zh) 一种多资源调度方法、系统、存储介质及终端
CN113127438A (zh) 用于存储数据的方法、装置、服务器和介质
JPWO2012124295A1 (ja) コンピュータシステム、制御システム、制御方法および制御プログラム
CN113727172B (zh) 视频缓存播放方法、装置、电子设备及存储介质
CN117093335A (zh) 分布式存储系统的任务调度方法及装置
CN115080233A (zh) 应用软件的资源分配管理方法、装置、设备及存储介质
CN110110170B (zh) 一种数据处理的方法、装置、介质及电子设备
CN110659312B (zh) 数据处理的方法、装置、设备和计算机存储介质
CN110187987B (zh) 用于处理请求的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination