一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种分布式存储系统的分片上传方法、装置及介质与流程

2022-11-13 13:11:48 来源:中国专利 TAG:


1.本技术涉及分布式存储领域,特别是涉及一种分布式存储系统的分片上传方法、装置及介质。


背景技术:

2.在分布式存储系统中,为了适配对象协议分片上传功能,实现对象协议无损兼容,已实现了一种分片小文件合并方案,解决分片大小不固定无法追加写大文件的问题,即在所有分片数据上传完成后,按分片编号从小到大逐个读取分片小文件,再追加到大文件上,直至大文件数据完整后,再删除各个分片小文件,实现对象分片上传功能支持。
3.由于在组合分片小文件为一个大文件时,需要重新拷贝文件,会导致分片上传效率降低,在分片小文件组合为大文件时,也不能进行正常读/写,性能较差。
4.由此可见,如何解决分片小文件上传效率低的问题,是本领域人员亟待解决的技术问题。


技术实现要素:

5.本技术的目的是提供一种提高分片小文件上传效率的分布式存储系统的分片上传方法、装置及介质。
6.为解决上述技术问题,本技术提供一种分布式存储系统的分片上传方法,包括:
7.接收客户端下发的分片上传请求;
8.创建分片小文件;
9.在分片小文件中写入分片上传请求的分片数据;
10.将分片小文件的分片编号和分片大小信息记录至临时索引文件中;
11.当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;
12.读取临时索引文件记录的分片信息并更新至大文件的元数据中。
13.优选地,上述分布式存储系统的分片上传方法中,创建分片小文件,包括:
14.解析分片上传请求的上传路径信息和上传编号信息;
15.根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录;
16.在隐藏目录下创建分片小文件。
17.优选地,上述分布式存储系统的分片上传方法中,解析分片上传请求的上传路径信息和上传编号信息之后,根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录之前,还包括:
18.判断上传路径信息在对应的路径下是否存在分片小文件;
19.若否,进入根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录的步骤。
20.优选地,上述分布式存储系统的分片上传方法中,若上传路径信息在对应的路径下存在分片小文件,则还包括:
21.向客户端返回文件存在的错误码。
22.优选地,上述分布式存储系统的分片上传方法中,读取临时索引文件记录的分片信息并更新至大文件的元数据中之后,还包括:
23.对元数据进行持久化处理。
24.优选地,上述分布式存储系统的分片上传方法中,读取临时索引文件记录的分片信息并更新至大文件的元数据中之后,还包括:
25.接收大文件的读/写请求;
26.打开大文件,并申请大文件的读/写权限;
27.根据读写起始位置和读写长度在大文件的元数据中查找出对应的分片小文件的分片编号;
28.根据分片编号拼接分片小文件对应的路径;
29.以读/写方式打开分片小文件;
30.当分片小文件的数据读/写完成后,返回读/写结果数据,关闭大文件和分片小文件。
31.优选地,上述分布式存储系统的分片上传方法中,以读/写方式打开分片小文件,包括:
32.若当前分片小文件读/写完成后,判断是否需要读/写下一分片小文件;
33.若是,关闭当前分片小文件,拼接下一分片小文件的路径并打开,读/写下一分片小文件;
34.若否,关闭当前分片小文件,进入返回读/写结果数据,关闭大文件和分片小文件的步骤。
35.为解决上述技术问题,本技术还提供一种分布式存储系统的分片上传装置,包括:
36.接收模块,用于接收客户端下发的分片上传请求;
37.创建分片小文件模块,用于创建分片小文件;
38.写入模块,用于在分片小文件中写入分片上传请求的分片数据;
39.记录模块,用于将分片小文件的分片编号和分片大小信息记录至临时索引文件中;
40.创建大文件模块,用于当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;
41.更新模块,用于读取临时索引文件记录的分片信息并更新至大文件的元数据中。
42.创建分片小文件模块包括:解析子单元,用于解析分片上传请求的上传路径信息和上传编号信息;
43.创建目录子单元,用于根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录;
44.创建分片文件子单元,用于在隐藏目录下创建分片小文件。
45.第一判断子单元,用于判断上传路径信息在对应的路径下是否存在分片小文件;
46.若否,触发创建目录子单元,根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录。
47.若是,触发返回子单元,用于向客户端返回文件存在的错误码。
48.接收读写请求模块,用于接收大文件的读/写请求;
49.申请权限模块,用于打开大文件,并申请大文件的读/写权限;
50.查找模块,用于根据读写起始位置和读写长度在大文件的元数据中查找出对应的分片小文件的分片编号;
51.拼接模块,用于根据分片编号拼接分片小文件对应的路径;
52.打开模块,用于以读/写方式打开分片小文件;
53.返回数据模块,用于当分片小文件的数据读/写完成后,返回读/写结果数据,关闭大文件和分片小文件。
54.打开模块包括:第二判断子单元,用于若当前分片小文件读/写完成后,判断是否需要读/写下一分片小文件;
55.若是,触发继续子单元,用于关闭当前分片小文件,拼接下一分片小文件的路径并打开,读/写下一分片小文件;
56.若否,触发返回数据模块,用于关闭当前分片小文件,进入返回读/写结果数据,关闭大文件和分片小文件。
57.为解决上述技术问题,本技术还提供一种分布式存储系统的分片上传装置,包括:
58.存储器,用于存储计算机程序;
59.处理器,用于执行计算机程序时实现上述的分布式存储系统的分片上传方法的步骤。
60.为解决上述技术问题,本技术还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述分布式存储系统的分片上传方法的步骤。
61.本技术所提供的分布式存储系统的分片上传方法,包括:接收客户端下发的分片上传请求;创建分片小文件;在分片小文件中写入分片上传请求的分片数据;将分片小文件的分片编号和分片大小信息记录至临时索引文件中;当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;读取临时索引文件记录的分片信息并更新至大文件的元数据中。上传的分片数据存储在对应的分片小文件中,其对应的分片小文件的分片编号及分片数据的分片大小信息记录至大文件的元数据中,不需要对分片小文件进行组合,减少了拷贝次数,提高了分片上传的效率。使用记录分片元数据代替分片合并的方法,能够解决分片小文件组合带来的性能问题,同时这种实现方法有助于提升大文件的读写并发效率,提升大文件的读写性能。
62.另外,本技术还提供一种分布式存储系统的分片上传装置及介质,与上述分布式存储系统的分片上传方法对应,效果同上。
附图说明
63.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
64.图1位本技术实施例提供的一种分布式存储系统的分片上传方法的流程图;
65.图2为本技术实施例提供的一种分布式存储系统的分片上传装置的结构图;
66.图3为本技术实施例提供的另一种分布式存储系统的分片上传装置的结构图。
具体实施方式
67.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
68.本技术的核心是提供一种分布式存储系统的分片上传方法、装置及介质。
69.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
70.在万物互联,云存储和智能化数据高速增长的时代,在成熟的融合技术架构下,实现了一份数据文件存储,对象存储和大数据存储等协议的共享访问,解决了数据运转效率和维护难度问题;对象协议为了解决大文件上传性能差、在网络环境较差时文件重传效率或文件大小未知时对象上传性能问题,采用分片上传方式解决上述三个问题,由于融合方式以文件存储为基座,对象上传的一个分片数据在分布式系统中对应一个分片小文件,且每个分片小文件的大小由使用对象协议的客户端决定,分片大小不固定,当所有的分片数据上传完成后,分布式系统中存储是独立的分片小文件,即分片上传大文件的部分数据,无法实现大文件的读/写/删等操作,为了适配对象协议分片上传功能,实现对象协议无损兼容,已实现了一种分片小文件合并方案,以解决分片大小不固定无法追加写大文件的问题,即在所有分片数据上传完成后,按分片编号从小到大逐个读取分片小文件,再追加到大文件上,直至大文件数据完整后,再删除各个分片小文件,实现对象分片上传功能支持;由于在组合分片小文件为一个大文件时,需要重新拷贝文件,会导致分片上传效率降低,在分片小文件组合为大文件时,也不能进行正常读/写,性能较差。且在分片组合时多协议间的并发访问性能也较差,并发访问效率低。
71.基于上述问题,本发明提出了一种分布式存储系统的分片上传方法,图1位本技术实施例提供的一种分布式存储系统的分片上传方法的流程图,如图1所示,包括:
72.s11:接收客户端下发的分片上传请求;
73.s12;创建分片小文件;
74.s13:在分片小文件中写入分片上传请求的分片数据;
75.s14:将分片小文件的分片编号和分片大小信息记录至临时索引文件中;
76.s15:当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;
77.s16:读取临时索引文件记录的分片信息并更新至大文件的元数据中。
78.本实施例中,可以由服务器接收分片上传请求。服务器可以包括具有数据信息处理功能的硬件设备和驱动该硬件设备工作所需的必要的软件,服务器可以对接收到的分片上传请求进行分析,从而获取文件上传请求中包含的分片文件的上传路径信息和上传编号信息。服务器可以提供预定端口,通过预定端口接收客户端发送的分片上传请求。在本实施例中,客户端可以为能够基于网络协议接入通信网络的终端设备,客户端还可以为具有上传文件功能的上层应用,例如云存储应用程序、企业办公自动化系统等。客户端将文件进行
分片处理,步骤s11接收客户端下发的分片上传请求,根据该分片上传请求创建分片小文件,用于存储待上传的分片。优选地,步骤s12创建分片小文件,包括:
79.解析分片上传请求的上传路径信息和上传编号信息;
80.根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录;
81.在隐藏目录下创建分片小文件。
82.根据分片上传请求包含的上传路径信息和上传编号信息,在对应的路径下创建以上传编号信息为名字的隐藏目录,并在隐藏目录下创建分片小文件。
83.当创建好分片小文件后,步骤s13在分片小文件中写入分片上传请求的分片数据,在接收并写入上传的分片数据时,步骤s14将分片小文件的分片编号和分片大小信息记录至临时索引文件中,即同时记录上传到分片小文件的分片大小信息及对应的分片编号至临时索引文件中。
84.当全部分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;本实施方式中所述的大文件指的是文件大小较大的文件,如几gb或者几十gb,具体的大文件的大小可以根据需要进行自行设定。分片小文件指的是文件大小较小的文件,分片小文件大小的具体设置范围也可以由用户自行设定。
85.当大文件创建完成后,步骤s16读取临时索引文件记录的分片信息并更新至大文件的元数据中,分片上传完成。
86.具体的,本实施例提供的分布式存储系统的分片上传方法,包括:接收客户端下发的分片上传请求;创建分片小文件;在分片小文件中写入分片上传请求的分片数据;将分片小文件的分片编号和分片大小信息记录至临时索引文件中;当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;读取临时索引文件记录的分片信息并更新至大文件的元数据中。上传的分片数据存储在对应的分片小文件中,其对应的分片小文件的分片编号及分片数据的分片大小信息记录至大文件的元数据中,不需要对小文件进行组合,减少了拷贝次数,提高了分片上传的效率。使用记录分片元数据代替分片合并的方法,能够解决分片小文件组合带来的性能问题,同时这种实现方法有助于提升大文件的读写并发效率,提升大文件的读写性能。
87.根据上述实施例,在创建分片小文件之前,可以先判断一下服务器中是否已经存在待上传的分片文件,如果服务器告知客户端已经存在分片文件,说明已经有其他客户端上传了该分片,则客户端无需再次上传,可以提高目标分片的上传效率,服务器也无需重复创建分片小文件,还可以节省用户的网络流量。优选地,上述分布式存储系统的分片上传方法中,解析分片上传请求的上传路径信息和上传编号信息之后,根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录之前,还包括:
88.判断上传路径信息在对应的路径下是否存在分片小文件;
89.若不存在,进入根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录的步骤。
90.若存在,向客户端返回文件存在的错误码。
91.服务器根据上传路径信息判断对应的路径下是否存在分片小文件。当服务器在上传路径信息判断对应的路径下存在或者不存在分片小文件时,均可以返回答复消息,答复消息中包括上传路径信息判断对应的路径下存在或者不存在分片小文件的信息。
92.服务器在判断上传路径信息在对应的路径下不存在分片小文件后,根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录,并在隐藏目录下创建分片小文件。客户端在接收到上传路径信息判断对应的路径下中不存在分片小文件数位答复消息后,可以将分片数据发送给服务器。服务器接收分片数据后,将分片数据存储至对应的上传路径信息在对应的路径下的分片小文件。
93.若判断上传路径信息在对应的路径下存在分片小文件,则向客户端返回文件存在的错误码,以表示已存在对应的分片小文件,避免重复上传。
94.服务器在创建分片小文件之前,先判断一下服务器中是否已经存在待上传的分片文件,如果服务器告知客户端已经存在分片文件,说明已经有其他客户端上传了该分片,则客户端无需再次上传,可以提高目标分片的上传效率,服务器也无需重复创建分片小文件,还可以节省用户的网络流量。
95.根据上述实施例,优选地,分布式存储系统的分片上传方法,读取临时索引文件记录的分片信息并更新至大文件的元数据中之后,还包括:
96.对元数据进行持久化处理。
97.持久化指的是将程序数据在持久状态和瞬时状态间转换的机制。通俗的讲,就是瞬时数据(比如内存中的数据,是不能永久保存的)持久化为持久数据(比如持久化至数据库中,能够长久保存)。使用数据持久化有以下好处:程序代码重用性强,即使更换数据库,只需要更改配置文件,不必重写程序代码。业务逻辑代码可读性强,在代码中不会有大量的结构化查询语言(structured query language,sql),提高程序的可读性。持久化技术可以自动优化,以减少对数据库的访问量,提高程序运行效率。
98.根据上述实施例,当分片数据上传完成后,可对大文件进行正常的读/写操作,因此,本实施例提供一种具体的实施方案,分布式存储系统的分片上传方法,读取临时索引文件记录的分片信息并更新至大文件的元数据中之后,还包括:
99.接收大文件的读/写请求;
100.打开大文件,并申请大文件的读/写权限;
101.根据读写起始位置和读写长度在大文件的元数据中查找出对应的分片小文件的分片编号;
102.根据分片编号拼接分片小文件对应的路径;
103.以读/写方式打开分片小文件;
104.当分片小文件的数据读/写完成后,返回读/写结果数据,关闭大文件和分片小文件。
105.接收到客户端发送的大文件的读/写请求后,打开对应的大文件,并申请大文件的读/写权限,获取到读/写请求权限后,根据读/写请求的读写起始位置和读写长度在大文件的元数据中查找出对应的隐藏目录下分片小文件的分片编号,根据分片编号拼接分片小文件对应的路径,以读/写方式打开分片小文件,直到当分片小文件的数据读/写完成后,向客户端返回读/写结果数据,并关闭大文件和分片小文件,本次读/写大文件完成。
106.另外,需要说明的是,在本实施例中,若读/写请求中包含读/写多个分片小文件,可依次读/写多个分片小文件,也可以同时读/写多个写文件,提升了分片上传文件的读/写性能,多个分片小文件之间可以并发读/写,提升了大文件的并发度。通过把分片信息记录
到大文件元数据并持久化的方式,来替代分片合并带来的性能开销和并发访问问题,实现对象协议分片上传特性的无损支持;提升了分片上传文件的读写性能。
107.根据上述实施例,优选地,依次读/写多个分片小文件以保证数据的准确性,以读/写方式打开分片小文件,包括:
108.若当前分片小文件读/写完成后,判断是否需要读/写下一分片小文件;
109.若是,关闭当前分片小文件,拼接下一分片小文件的路径并打开,读/写下一分片小文件;
110.若否,关闭当前分片小文件,进入返回读/写结果数据,关闭大文件和分片小文件的步骤。
111.每当一个分片小文件读/写完成后,判断是否需要读/写下一分片小文件,若需要读/写下一分片小文件,关闭当前分片小文件,拼接下一分片小文件的路径并打开,读/写下一分片小文件,若不需要读/写下一分片小文件,关闭当前分片小文件,进入返回读/写结果数据,关闭大文件和分片小文件的步骤,以完成读/写请求。通过把分片信息记录到大文件元数据并持久化的方式,来替代分片合并带来的性能开销和并发访问问题,实现对象协议分片上传特性的无损支持;提升了分片上传文件的读写性能。
112.在上述实施例中,对于分布式存储系统的分片上传方法进行了详细描述,本技术还提供分布式存储系统的分片上传装置对应的实施例。需要说明的是,本技术从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
113.图2为本技术实施例提供的一种分布式存储系统的分片上传装置的结构图,如图2所示,包括:
114.接收模块21,用于接收客户端下发的分片上传请求;
115.创建分片小文件模块22,用于创建分片小文件;
116.写入模块23,用于在分片小文件中写入分片上传请求的分片数据;
117.记录模块24,用于将分片小文件的分片编号和分片大小信息记录至临时索引文件中;
118.创建大文件模块25,用于当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;
119.更新模块26,用于读取临时索引文件记录的分片信息并更新至大文件的元数据中。
120.具体地,接收模块21接收客户端下发的分片上传请求;创建分片小文件模块22创建分片小文件;写入模块23在分片小文件中写入分片上传请求的分片数据;记录模块24将分片小文件的分片编号和分片大小信息记录至临时索引文件中;创建大文件模块25当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;更新模块26读取临时索引文件记录的分片信息并更新至大文件的元数据中。上传的分片数据存储在对应的分片小文件中,其对应的分片小文件的分片编号及分片数据的分片大小信息记录至大文件的元数据中,不需要对小文件进行组合,可对大文件进行正常的读/写操作,减少了拷贝次数,提高了分片上传的效率。使用记录分片元数据代替分片合并的方法,能够解决分片小文件组合带来的性能问题,同时这种实现方法有助于提升大文件的读写并发效率,提升大文件的读写性能。
121.优选地,还包括:
122.创建分片小文件模块包括:解析子单元,用于解析分片上传请求的上传路径信息和上传编号信息;
123.创建目录子单元,用于根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录;
124.创建分片文件子单元,用于在隐藏目录下创建分片小文件。
125.第一判断子单元,用于判断上传路径信息在对应的路径下是否存在分片小文件;
126.若否,触发创建目录子单元,根据上传路径信息在对应的路径下创建以上传编号信息为名字的隐藏目录。
127.若是,触发返回子单元,用于向客户端返回文件存在的错误码。
128.接收读写请求模块,用于接收大文件的读/写请求;
129.申请权限模块,用于打开大文件,并申请大文件的读/写权限;
130.查找模块,用于根据读写起始位置和读写长度在大文件的元数据中查找出对应的分片小文件的分片编号;
131.拼接模块,用于根据分片编号拼接分片小文件对应的路径;
132.打开模块,用于以读/写方式打开分片小文件;
133.返回数据模块,用于当分片小文件的数据读/写完成后,返回读/写结果数据,关闭大文件和分片小文件。
134.打开模块包括:第二判断子单元,用于若当前分片小文件读/写完成后,判断是否需要读/写下一分片小文件;
135.若是,触发继续子单元,用于关闭当前分片小文件,拼接下一分片小文件的路径并打开,读/写下一分片小文件;
136.若否,触发返回数据模块,用于关闭当前分片小文件,进入返回读/写结果数据,关闭大文件和分片小文件。
137.由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
138.图3为本技术实施例提供的另一种分布式存储系统的分片上传装置的结构图,如图3所示,分布式存储系统的分片上传装置包括:存储器30,用于存储计算机程序;
139.处理器31,用于执行计算机程序时实现如上述实施例(分布式存储系统的分片上传方法)获取用户操作习惯信息的方法的步骤。
140.本实施例提供的分布式存储系统的分片上传装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
141.其中,处理器31可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器31可以采用数字信号处理器(digital signal processor,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器31也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(central processing unit,cpu);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器31可以在集成有图像处理器(graphics processing unit,
gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器31还可以包括人工智能(artificial intelligence,ai)处理器,该ai处理器用于处理有关机器学习的计算操作。
142.存储器30可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器30还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器30至少用于存储以下计算机程序301,其中,该计算机程序被处理器31加载并执行之后,能够实现前述任一实施例公开的分布式存储系统的分片上传方法的相关步骤。另外,存储器30所存储的资源还可以包括操作系统302和数据303等,存储方式可以是短暂存储或者永久存储。其中,操作系统302可以包括windows、unix、linux等。数据303可以包括但不限于实现分布式存储系统的分片上传方法所涉及到的数据等。
143.在一些实施例中,分布式存储系统的分片上传装置还可包括有显示屏32、输入输出接口33、通信接口34、电源35以及通信总线36。
144.本领域技术人员可以理解,图3中示出的结构并不构成对分布式存储系统的分片上传装置的限定,可以包括比图示更多或更少的组件。
145.本技术实施例提供的分布式存储系统的分片上传装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:分布式存储系统的分片上传方法,包括:接收客户端下发的分片上传请求;创建分片小文件;在分片小文件中写入分片上传请求的分片数据;将分片小文件的分片编号和分片大小信息记录至临时索引文件中;当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;读取临时索引文件记录的分片信息并更新至大文件的元数据中。上传的分片数据存储在对应的分片小文件中,其对应的分片小文件的分片编号及分片数据的分片大小信息记录至大文件的元数据中,不需要对小文件进行组合,可对大文件进行正常的读写操作,减少了拷贝次数,提高了分片上传的效率。使用记录分片元数据代替分片合并的方法,能够解决分片小文件组合带来的性能问题,同时这种实现方法有助于提升大文件的读写并发效率,提升大文件的读写性能。
146.最后,本技术还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述分布式存储系统的分片上传方法实施例中记载的步骤。
147.可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
148.本实施例提供的计算机可读存储介质,其上存储有计算机程序,当处理器执行该程序时,可实现以下方法:分布式存储系统的分片上传方法,包括:接收客户端下发的分片上传请求;创建分片小文件;在分片小文件中写入分片上传请求的分片数据;将分片小文件
的分片编号和分片大小信息记录至临时索引文件中;当分片数据上传完成后,创建空的大文件,大文件的大小为分片数据的实际大小;读取临时索引文件记录的分片信息并更新至大文件的元数据中。上传的分片数据存储在对应的分片小文件中,其对应的分片小文件的分片编号及分片数据的分片大小信息记录至大文件的元数据中,不需要对小文件进行组合,减少了拷贝次数,提高了分片上传的效率。
149.以上对本技术所提供的分布式存储系统的分片上传方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
150.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献