一种文件处理方法、系统及相关设备技术方案

技术编号:23851937 阅读:17 留言:0更新日期:2020-04-18 09:06
本发明专利技术实施例提供了一种文件处理方法、系统及相关设备,用于提高存储空间利用率,提高文件管理的效率。本发明专利技术实施例方法运用于服务端,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,所述第一数量的聚合归置组以预设的规则归类到归置组,文件处理方法还包括:接收扩容指令,所述扩容指令用于指示当前聚合归置组数量由所述第一数量变为第二数量,所述第二数量为大于所述第一数量的正整数;将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组;将所述第二预设数量的新聚合归置组以预设的规则归类到归置组;采用预设的映射算法将所述归置组中的文件对象关联存储在同一个物理存储介质中。

A file processing method, system and related equipment

【技术实现步骤摘要】
一种文件处理方法、系统及相关设备
本专利技术涉及分布式数据存储
,尤其涉及一种文件处理方法、系统及相关设备。
技术介绍
在分布式文件系统中,常见的存储解决方案有Ceph数据存储系统,其存储过程如图1所示。集群从客户端获取到一个或多个对象(object),然后将这些object进行分组,分为不同pg(placementgroup,归置组,一个虚拟的对象集合),再根据一定的策略(例如crush算法)存储到集群的OSD(ObjectStorageDevice)节点中。现有方案中,当pg内存储的空间达到上限需要扩容时,例如由一个磁盘扩容为两个磁盘,发生扩容分裂会导致聚合失效。聚合失效是指,同一个pg内的文件对象需要与原有的pg分离,导致无法基于原有的逻辑映射关系对文件对象进行操作。尤其是数量庞大的小文件聚合失效时,需要重新建立逻辑上的映射关系,费时费力,操作复杂,存储效率低。为此,本专利技术中的文件处理系统可以将服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,然后将第一数量的聚合归置组以预设的规则归类到归置组,避免了归置组扩容分裂会导致聚合失效。然而,由于聚合归置组的数量限定,导致在不发生聚合失效的前提下,扩容之后的归置组的数量不能超过原有的聚合归置组的数量(即第一数量)。有鉴于此,有必要进行进一步改进。
技术实现思路
本专利技术实施例提供了一种文件处理方法、系统及相关设备,用于提高存储空间利用率,提高文件管理的效率。本专利技术实施例第一方面提供了一种文件处理方法,其运用于服务端,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,所述第一数量的聚合归置组以预设的规则归类到归置组,所述方法还包括:接收扩容指令,所述扩容指令用于指示当前聚合归置组数量由所述第一数量变为第二数量,所述第二数量为大于所述第一数量的正整数;将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组;将所述第二预设数量的新聚合归置组以预设的规则归类到归置组;采用预设的映射算法将所述归置组中的文件对象关联存储在同一个物理存储介质中。可选的,作为一种可能的实施方式,本专利技术实施例中,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,包括:采用预设的哈希算法对所述服务端的存储池中的目标文件的文件名称字符进行计算,得到所述目标文件的哈希值字符串,所述目标文件的大小小于指定阈值;按照相同的读取规则从每个所述目标文件的哈希值字符串中读取第一预设数量的字符,以组成每个所述目标文件的第一聚合哈希值,所述第一预设数量为正整数;根据所述第一聚合哈希值将目标文件以聚合的方式存储于第一数量的聚合归置组,其中,所述第一聚合哈希值相同的目标文件以聚合的方式存储到同一个聚合归置组。可选的,作为一种可能的实施方式,本专利技术实施例中,所述第一数量的聚合归置组的ID为所述第一聚合哈希值补零形成预设数位的字符串,所述将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组,包括:根据所述第二数量计算扩容之后的新聚合归置组的聚合哈希值的字符数量为第三预设数量,所述第三预设数量为大于第一预设数量的正整数;按照相同的读取规则从所述服务端的存储池中已存储的目标文件的哈希值字符串中读取所述第三预设数量的字符组成第二聚合哈希值;将所述第二聚合哈希值补零形成所述预设数位的字符串作为所述第二聚合哈希值对应的目标文件关联的新聚合归置组的ID;将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组,其中,若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,则将所述目标文件以聚合的方式存储至所述新聚合归置组,否则继续将所述目标文件存储在当前所在的聚合归置组。可选的,作为一种可能的实施方式,本专利技术实施例中,所述将所述第二预设数量的新聚合归置组以预设的规则归类到归置组,包括:按照相同的读取规则从每个新聚合归置组的第二聚合哈希值中读取第二预设数量的字符,以组成每个聚合归置组的归置哈希值,所述第二预设数量为小于第三预设数量的正整数;将归置哈希值相同的聚合归置组归类到同一个归置组。可选的,作为一种可能的实施方式,本专利技术实施例中,若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,则将所述目标文件以聚合的方式存储至所述新聚合归置组,包括:若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,在预设时间间隔之后再将所述目标文件以聚合的方式存储至所述新聚合归置组。可选的,作为一种可能的实施方式,本专利技术实施例中的文件处理方法还可以包括:在所述服务端的存储池中的目标文件发生变化之后,记录所述目标文件发生变化之前的存储位置的释放信息;在将所述目标文件以聚合的方式存储至所述新聚合归置组之后,将所述目标文件对应的释放信息写入所述新聚合归置组中。可选的,作为一种可能的实施方式,本专利技术实施例中的文件处理方法还可以包括:在所述目标文件的元数据中记录所述服务端的存储池中的当前聚合归置组的数量。本专利技术实施例第二方面提供了一种文件处理系统,运用于服务端,该服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,所述第一数量的聚合归置组以预设的规则归类到归置组,该文件处理系统还可以包括:接收单元,用于接收扩容指令,所述扩容指令用于指示当前聚合归置组数量由所述第一数量变为第二数量,所述第二数量为大于所述第一数量的正整数;第一聚合单元,用于将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组;归类单元,用于将所述第二预设数量的新聚合归置组以预设的规则归类到归置组;映射单元,用于采用预设的映射算法将所述归置组中的文件对象关联存储在同一个物理存储介质中。可选的,作为一种可能的实施方式,本专利技术实施例中的文件处理系统还可以包括:计算单元,用于采用预设的哈希算法对所述服务端的存储池中的目标文件的文件名称字符进行计算,得到所述目标文件的哈希值字符串,所述目标文件的大小小于指定阈值;读取单元,用于按照相同的读取规则从每个所述目标文件的哈希值字符串中读取第一预设数量的字符,以组成每个所述目标文件的第一聚合哈希值,所述第一预设数量为正整数;第二聚合单元,用于根据所述第一聚合哈希值将目标文件以聚合的方式存储于第一数量的聚合归置组,其中,所述第一聚合哈希值相同的目标文件以聚合的方式存储到同一个聚合归置组。可选的,作为一种可能的实施方式,本专利技术实施例中,所述第一数量的聚合归置组的ID为所述第一聚合哈希值补零形成预设数位的字符串,所述第一聚合单元可以包括:计算模块,用于根据所述第二数量计算扩容之后的新聚合归置组的聚合哈希值的字符数量为第三预设数量,所述第三预设数量为大于第一预设数量的正整数;第一读取模块,用于按照相同的读取规则从所述服务端的存储池中已存储的目标文件的哈本文档来自技高网...

【技术保护点】
1.一种文件处理方法,其特征在于,运用于服务端,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,所述第一数量的聚合归置组以预设的规则归类到归置组,所述方法还包括:/n接收扩容指令,所述扩容指令用于指示当前聚合归置组数量由所述第一数量变为第二数量,所述第二数量为大于所述第一数量的正整数;/n将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组;/n将所述第二预设数量的新聚合归置组以预设的规则归类到归置组;/n采用预设的映射算法将所述归置组中的文件对象关联存储在同一个物理存储介质中。/n

【技术特征摘要】
1.一种文件处理方法,其特征在于,运用于服务端,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,所述第一数量的聚合归置组以预设的规则归类到归置组,所述方法还包括:
接收扩容指令,所述扩容指令用于指示当前聚合归置组数量由所述第一数量变为第二数量,所述第二数量为大于所述第一数量的正整数;
将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组;
将所述第二预设数量的新聚合归置组以预设的规则归类到归置组;
采用预设的映射算法将所述归置组中的文件对象关联存储在同一个物理存储介质中。


2.根据权利要求1所述的方法,其特征在于,所述服务端的存储池中的目标文件以聚合的方式存储于第一数量的聚合归置组,包括:
采用预设的哈希算法对所述服务端的存储池中的目标文件的文件名称字符进行计算,得到所述目标文件的哈希值字符串,所述目标文件的大小小于指定阈值;
按照相同的读取规则从每个所述目标文件的哈希值字符串中读取第一预设数量的字符,以组成每个所述目标文件的第一聚合哈希值,所述第一预设数量为正整数;
根据所述第一聚合哈希值将目标文件以聚合的方式存储于第一数量的聚合归置组,其中,所述第一聚合哈希值相同的目标文件以聚合的方式存储到同一个聚合归置组。


3.根据权利要求2所述的方法,其特征在于,所述第一数量的聚合归置组的ID为所述第一聚合哈希值补零形成预设数位的字符串,所述将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组,包括:
根据所述第二数量计算扩容之后的新聚合归置组的聚合哈希值的字符数量为第三预设数量,所述第三预设数量为大于第一预设数量的正整数;
按照相同的读取规则从所述服务端的存储池中已存储的目标文件的哈希值字符串中读取所述第三预设数量的字符组成第二聚合哈希值;
将所述第二聚合哈希值补零形成所述预设数位的字符串作为所述第二聚合哈希值对应的目标文件关联的新聚合归置组的ID;
将所述目标文件以聚合的方式存储于所述第二数量的新聚合归置组,其中,若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,则将所述目标文件以聚合的方式存储至所述新聚合归置组,否则继续将所述目标文件存储在当前所在的聚合归置组。


4.根据权利要求3所述的方法,其特征在于,所述将所述第二预设数量的新聚合归置组以预设的规则归类到归置组,包括:
按照相同的读取规则从每个新聚合归置组的第二聚合哈希值中读取第二预设数量的字符,以组成每个聚合归置组的归置哈希值,所述第二预设数量为小于第三预设数量的正整数;
将归置哈希值相同的聚合归置组归类到同一个归置组。


5.根据权利要求3所述的方法,其特征在于,若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,则将所述目标文件以聚合的方式存储至所述新聚合归置组,包括:
若所述目标文件关联的新聚合归置组的ID与当前所在的聚合归置组的ID不相同,在预设时间间隔之后再将所述目标文件以聚合的方式存储至所述新聚合归置组。


6.根据权利要求3所述的方法,其特征在于,还包括:
在所述服务端的存储池中的目标文件发生变化之后,记录所述目...

【专利技术属性】
技术研发人员:张增冉宁韬陈岩
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:广东;44

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

1