System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,尤其涉及一种数据存储方法、装置、计算机设备和存储介质。
技术介绍
1、在大数据的分布式作业的执行过程中,作业被分解为多个小任务,然后分发给不同的处理单元进行处理,这些小任务在执行过程中,会将执行结果临时存储在“_temporary”目录中,当所有小任务都执行完成后,“_temporary”目录会重命名(rename)为作业执行结果对应的目录名称(一般是"task_"前缀的目录名称)。
2、随着存储数据量的不断增加,对象存储由于性能稳定,易于扩展,费用低廉,成为各公司优选的存储工具。但是与传统存储系统不同的是对象存储没有重命名(rename)的功能,而是使用拷贝+删除(copy+delete)变相实现了重命名,同时对象存储的交互使用的是http通信,利用对象存储作为分布式作业对应执行结果的存储介质时,对象存储会频繁发送http请求以实现临时目录的创建、临时结果的写入、目录重命名,导致小任务执行效率比较低。
技术实现思路
1、本申请提供了一种数据存储方法、装置、计算机设备和存储介质,以解决利用对象存储作为分布式作业对应执行结果的存储介质产生大量http请求的问题。
2、第一方面,本申请提供了一种数据存储方法,所述方法包括:
3、获取不同分布式作业拆分后的多个拆分任务;
4、在本地磁盘创建各个所述分布式作业对应的临时目录;
5、执行各个所述拆分任务得到对应的任务执行结果;
6、将各个所述任务执行结果
7、在属于目标分布式作业的各个所述拆分任务执行完成时,以所述目标分布式作业对应的作业名称对所述目标分布式作业对应的临时目录进行重命名,得到所述目标分布式作业对应的重命名目录,其中,所述目标分布式作业为任意一个所述分布式作业;
8、将所述目标分布式作业对应的重命名目录上传至对象存储进行存储。
9、第二方面,本申请提供了一种数据存储方法,所述方法包括:
10、接收并保存不同计算节点上传的不同分布式作业对应的重命名目录;
11、将同一分布式作业对应的不同重命名目录汇总形成作业计算结果。
12、第三方面,本申请提供了一种数据存储装置,所述装置包括:
13、获取模块,用于获取不同分布式作业拆分后的多个拆分任务;
14、创建模块,用于在本地磁盘创建各个所述分布式作业对应的临时目录;
15、执行模块,用于执行各个所述拆分任务得到对应的任务执行结果;
16、写入模块,用于将各个所述任务执行结果写入对应拆分任务所属分布式作业相对应的临时目录中;
17、重命名模块,用于在属于目标分布式作业的各个所述拆分任务执行完成时,以所述目标分布式作业对应的作业名称对所述目标分布式作业对应的临时目录进行重命名,得到所述目标分布式作业对应的重命名目录,其中,所述目标分布式作业为任意一个所述分布式作业;
18、上传模块,用于将所述目标分布式作业对应的重命名目录上传至对象存储进行存储。
19、第四方面,本申请提供了一种数据存储装置,所述装置包括:
20、存储模块,用于接收并保存不同计算节点上传的不同分布式作业对应的重命名目录;
21、汇总模块,用于将同一分布式作业对应的不同重命名目录汇总形成作业计算结果。
22、第五方面,本申请提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据存储方法。
23、第六方面,本申请还提供了一种计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述数据存储方法。
24、本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,获取不同分布式作业拆分后的多个拆分任务;在本地磁盘创建各个所述分布式作业对应的临时目录;执行各个所述拆分任务得到对应的任务执行结果;将各个所述任务执行结果写入对应拆分任务所属分布式作业相对应的临时目录中;在属于目标分布式作业的各个所述拆分任务执行完成时,以所述目标分布式作业对应的作业名称对所述目标分布式作业对应的临时目录进行重命名,得到所述目标分布式作业对应的重命名目录,其中,所述目标分布式作业为任意一个所述分布式作业;将所述目标分布式作业对应的重命名目录上传至对象存储进行存储。
25、基于上述方法,将计算拆分任务所产生的临时文件存储至计算节点本地磁盘的临时目录中,并在本地磁盘中实现数据存储的重命名,将重命名后的重命名目录一次发送给对象存储,从而避免了对象存储对临时文件的存储以及重命名过程,减少了对象存储与计算节点之间的交互次数,即减少了对象存储的http请求,提高了拆分任务的执行效率,解决了利用对象存储作为分布式作业对应执行结果的存储介质产生大量http请求的问题。
本文档来自技高网...【技术保护点】
1.一种数据存储方法,其特征在于,所述方法包括:
2.根据权利要求1所述的数据存储方法,其特征在于,所述获取不同分布式作业拆分后的多个拆分任务之后,所述方法还包括:
3.根据权利要求2所述的数据存储方法,其特征在于,获取与各个所述拆分任务相关的相关数据,包括:
4.根据权利要求1所述的数据存储方法,其特征在于,所述在本地磁盘创建各个所述分布式作业对应的临时目录,包括:
5.根据权利要求4所述的数据存储方法,其特征在于,所述将各个所述任务执行结果写入对应拆分任务所属分布式作业相对应的临时目录中,包括:
6.一种数据存储方法,其特征在于,所述方法包括:
7.根据权利要求6所述的数据存储方法,其特征在于,接收并保存不同计算节点上传的不同分布式作业对应的重命名目录之前,所述方法还包括:
8.一种数据存储装置,其特征在于,所述装置包括:
9.一种数据存储装置,其特征在于,所述装置包括:
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5或6至7中任一项所述的数据存储方法。
...【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法包括:
2.根据权利要求1所述的数据存储方法,其特征在于,所述获取不同分布式作业拆分后的多个拆分任务之后,所述方法还包括:
3.根据权利要求2所述的数据存储方法,其特征在于,获取与各个所述拆分任务相关的相关数据,包括:
4.根据权利要求1所述的数据存储方法,其特征在于,所述在本地磁盘创建各个所述分布式作业对应的临时目录,包括:
5.根据权利要求4所述的数据存储方法,其特征在于,所述将各个所述任务执行结果写入对应拆分任务所属分布式作业相对应的临时目录中,包括:
6.一种数据存储方法,其特征在于,所述方法包括:
【专利技术属性】
技术研发人员:梁海昆,
申请(专利权)人:北京金山云网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。