CN110134331B - 路由路径规划方法、***及可读存储介质 - Google Patents

路由路径规划方法、***及可读存储介质 Download PDF

Info

Publication number
CN110134331B
CN110134331B CN201910344613.XA CN201910344613A CN110134331B CN 110134331 B CN110134331 B CN 110134331B CN 201910344613 A CN201910344613 A CN 201910344613A CN 110134331 B CN110134331 B CN 110134331B
Authority
CN
China
Prior art keywords
data
data block
node
routing
nodes
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.)
Active
Application number
CN201910344613.XA
Other languages
English (en)
Other versions
CN110134331A (zh
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.)
Chongqing University
Original Assignee
Chongqing University
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 Chongqing University filed Critical Chongqing University
Priority to CN201910344613.XA priority Critical patent/CN110134331B/zh
Publication of CN110134331A publication Critical patent/CN110134331A/zh
Application granted granted Critical
Publication of CN110134331B publication Critical patent/CN110134331B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种路由路径规划方法、***及可读存储介质,所述方法包括:对数据流进行分块计算后得到各数据块的数据块指纹;将所述数据块进行合并分组,得到相应的数据块包;在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。本发明能够解决现有的路由***无法平衡***能耗与去重率问题,满足了实际应用需求。

Description

路由路径规划方法、***及可读存储介质
技术领域
本发明涉及计算机信息存储技术领域,特别是涉及一种路由路径规划方法、***及可读存储介质。
背景技术
重复数据删除技术通过对数据分块、计算指纹,不保存相同指纹的数据块以达到减少数据存储数量,降低应用成本的目的。集群重复数据删除技术用于在集群环境下对数据进行重复数据删除。在集群重复数据删除技术中,决定集群性能的是集群路由算法,目前常用的集群路由算法包括有状态路由算法和无状态路由算法。
其中,有状态路由算法根据已有数据块的位置信息决定数据块的路由节点,主节点需要与集群中的所有节点或者部分节点进行通信,以确定数据块的位置信息,再通过各种加权操作决定如何路由。有状态路由算法的优点是有较高的去重率和吞吐量,缺点是***的通信开销和计算开销较大。无状态路由算法不需要其他数据块的位置信息,由主节点使用较为简单的哈希算法直接决定路由节点,这种算法通常不需要与其他节点通信,其通信和计算开销较小,但是无状态路由算法的去重率较低,无状态路由算法无法良好的适应集群节点动态变化。
然而,上述集群路由算法在删除重复数据过程中,重点以提高去重率和吞吐量、减少***开销和磁盘瓶颈等,并没有将***能耗考虑在内。无状态路由算法的通信和计算能耗较低,但是去重率也相对较低;有状态路由算法的通信和计算能耗较高,其去重率也相对较高,因此,如何平衡***能耗与相关性能的关系是当前路由需要考虑的问题。
发明内容
为了解决上述问题,本发明的目的是提供一种能够解决现有的路由***无法平衡***能耗与去重率问题的路由路径规划方法、***及可读存储介质。
根据本发明提供的路由路径规划方法,包括:
对数据流进行分块计算后得到各数据块的数据块指纹;
将所述数据块进行合并分组,得到相应的数据块包;
在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。
根据本发明提供的路由路径规划方法,首先对数据流进行分块计算后得到各数据块的数据块指纹,由于该数据块指纹为该数据块的唯一标识,以便于对数据流中的各数据块进行精确查找;通过将所述数据块进行合并分组,得到相应的数据块包,从而提高数据流中所述数据块的的传输效率;通过在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点,由于任意一组的节点数量大于该组备选路由节点的数量,从而可以降低***能耗。由于本发明能够将新数据块持续路由到相同节点,以提高***数据去重率,且通过减少去重后的数据块所占的容器数量来减少***能耗,解决现有的路由***无法平衡***能耗与去重率的问题,提高了用户路由体验的满意度。
另外,根据本发明上述的路由路径规划方法,还可以具有如下附加的技术特征:
进一步地,所述对数据流进行分块计算后得到各数据块的数据块指纹的步骤之前,所述方法还包括:
获取集群中各个节点的剩余存储空间的大小,根据预设的等级划分规则对各节点进行相应的等级划分,以得到各节点的路由等级。
进一步地,所述将所述数据块进行合并分组,得到相应的数据块包的步骤之后,所述方法还包括:
将所述数据块包中各数据块的数据块指纹发送至集群的组长节点;
所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序;
根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
进一步地,所述在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点的方法包括:
当判断到所述集群中各组长节点所返回的备选路由节点的数量均为0时,则按照预设路由方式将新数据块路由至所述集群中相应的节点内;
当判断到所述集群中各组长节点所返回的备选路由节点的数量不为0时,则在所有备选路由节点内对数据块包进行数据块指纹检索,并根据重复数据散布率确定所述目标路由节点。
进一步地,所述根据重复数据散布率确定所述目标路由节点的方法包括:
计算所述数据块包在所有备选路由节点内的重复数据散布率;
当所述数据块包在当前备选路由节点内的重复数据散布率大于在任一剩余备选路由节点内的重复数据散布率时,则将所述当前备选路由节点作为目标路由节点。
进一步地,所述计算所述数据块包在所有备选路由节点内的重复数据散布率的公式为:
Figure BDA0002041897080000031
其中,x为数据块包含x个子数据块,y为在某个节点上有y个子数据块是重复的,z为y个子数据块存储在z个容器中。
Figure BDA0002041897080000032
为平均每个容器存储的重复数据块数量,
Figure BDA0002041897080000033
为数据块包的数据重复率。
进一步地,所述组长节点根据位图查询所述数据块包的数据重复率的方法包括:
各节点组内的节点通过指纹索引对各自节点内的数据块指纹的前缀或后缀进行截取后,对所述节点组长内的位图进行填充,以得到当前节点组内所有节点的位图;
所述组长节点根据位图查询所述数据块包的数据重复率。
本发明的另一实施例提出一种路由路径规划***,解决现有的路由***无法平衡***能耗与去重率的问题,提高了用户路由体验的满意度。
根据本发明实施例的路由路径规划***,包括:
计算模块,用于对数据流进行分块计算后得到各数据块的数据块指纹;
合并模块,用于将所述数据块进行合并分组,得到相应的数据块包;
确定模块,用于在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。
进一步地,所述合并模块包括:
转发单元,用于将所述数据块包中各数据块的数据块指纹发送至集群的组长节点;
查询单元,用于所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序;
选择单元,用于根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
本发明的另一个实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实施例了解到。
附图说明
图1是本发明第一实施例提出的路由路径规划方法的流程图;
图2是图1中步骤S102的具体流程图;
图3是图1中步骤S103的具体流程图;
图4是图1中步骤S1031的具体流程图;
图5是本发明第二实施例提出的路由路径规划***的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明第一实施例提出的一种路由路径规划方法,其中,包括步骤S101~S103:
步骤S101,对数据流进行分块计算后得到各数据块的数据块指纹。
本实施例中,以路由设备为例进行说明,但需要了解的是,本发明实施例并不限于此,本发明实施例的方法可以应用在任何资源共享设备中,即任何可以通过路由进行数据传输的电子设备中。具体的,在现有技术中,由于无法对路由***的***能耗及去重率进行平衡,从而导致路由***的***能耗及去重率较差,降低了用户路由体验的满意度。在本发明实施例中,为了解决这一问题,在用户进行数据共享时将新数据块持续路由到相同节点,以提高***数据去重率,且能够通过减少去重后的数据块所占的容器数量来减少***能耗。
具体的,在本实施例中,当接收到用户对数据进行共享的请求时,对数据流进行分块计算后得到各数据块的数据块指纹。可以理解的,由于本步骤中仅需在用户进行数据共享的请求时,该路由***中的计算模块对数据流进行分块计算后得到各数据块的数据块指纹,由于通过将所述数据块指纹作为对应数据块的唯一标识,因此方便该路由***再进行数据块包的重复率进计算时,可通过对数据流中的各数据块的精确查找进行确定。其中,对数据流进行分块计算后得到各数据块的数据块指纹之前,还需通过划分模块获取集群中各个节点的剩余存储空间的大小,进而实现根据预设的等级划分规则对各节点进行相应的等级划分,以得到各节点的路由等级。本实施例中,该路由***的路由等级可划分为十个路由等级,在进行路由等级划分时,集群中各个节点的剩余存储空间的量越大,则该节点的路由等级越高,且每个等级之间间隔10%的剩余存储空间,但不限于此,在其他实施例中该路由***中的路由等级的划分,还可根据实际需求进行调整。
其中,在对所述数据流进行分块时,可采用一不断滑动的窗口来确定待分割的数据块边界点,并采用Rabin-Fingerprint计算窗口内数据的指纹值,如果满足预设的条件,就将该窗口的开始位置作为数据块的结尾,从而实现通过不断滑动窗口并计算指纹实现对数据的分块。为了避免极端情况下,数据块过长或者过短的情形,路由***需要设定数据块的上下限。该数据块数据块指纹的获得可通过哈希运算所得。
步骤S102,将所述数据块进行合并分组,得到相应的数据块包。
如上所述,在该路由***的计算模块对数据流进行分块计算后得到各数据块的数据块指纹后,通过合并模块将所述数据块进行合并分组,得到相应的数据块包,以便于根据该路由***中各路由设备的路由等级将所述数据块包路由到相应的路由节点内。本实施例中,所述数据块合并分组的原则可根据路由设备的性能参数确定,若该路由设备的性能较高,则该路由设备中每组的节点数量将大于路由性能较低的路由设备中每组的节点数量。
请参阅图2,将所述数据块进行合并分组,得到相应的数据块包的方法包括如下步骤:
步骤S1021,将所述数据块包中各数据块的数据块指纹发送至集群的组长节点。
步骤S1022,所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序。
步骤S1023,根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
如上所述,转发单元将所述数据块包中各数据块的数据块指纹发送至集群的组长节点,查询单元中的截取子单元使各节点组内的节点通过指纹索引对各自节点内的数据块指纹的前缀或后缀进行截取后,对所述节点组长内的位图进行填充,以得到当前节点组内所有节点的位图;查询单元中的查询子单元使该路由***中的各组长节点根据位图查询所述数据块包的数据重复率,并对所述数据重复率按照降序的顺序进行排序;最终由选择单元根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点,如最高路由级别(第一级节点)的内的数据重复率为5%,第二级节点的备选重复率为10%,从而将重复率较低的节点筛选出去,从而提高数据流中所述数据块的的传输效率。
步骤S103,在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。
如上所述,为提高***数据去重率,在不影响节点性能的情况下,尽量将新数据块持续路由到相同节点,用于确定目标路由节点的确定模块,通过在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。可以理解的,为得到目标路由节点,在进行数据块指纹检索时只需要在备选路由节点上进检索行,由于不需要在所有的节点上进行数据块指纹检索,从而减少了指纹检索节点的能耗。
请参阅图3,其中,所述在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点的方法包括如下步骤:
步骤S1031,当判断到所述集群中各组长节点所返回的备选路由节点的数量均为0时,则按照预设路由方式将新数据块路由至所述集群中相应的节点内。
如上所述,当确定模块中的路由单元判断到所述集群中各组长节点所返回的备选路由节点的数量均为0时,则按照预设路由方式将新数据块路由至所述集群中数据量最少的节点内。其中备选路由节点的数量可以根据每个组的节点数量设置比例或者直接设置具体数量,在此不做限制。
步骤S1032,当判断到所述集群中各组长节点所返回的备选路由节点的数量不为0时,则在所有备选路由节点对数据块包进行数据块指纹检索,并根据重复数据散布率确定所述目标路由节点。
如上所述,当确定模块中的确定单元判断到所述集群中各组长节点所返回的备选路由节点的数量不为0时,表明所备选路由节点的数量为一个或多个,当所述备选路由节点为多个时,则在所有备选路由节点内对数据块包进行数据块指纹检索,并根据重复数据散布率确定所述目标路由节点。
请参阅图4,所述根据重复数据散布率确定所述目标路由节点的方法包括:
步骤S1031a,计算所述数据块包在所有备选路由节点内的重复数据散布率。
所述计算所述数据块包在所有备选路由节点内的重复数据散布率的公式为:
Figure BDA0002041897080000081
其中,x为数据块包含x个子数据块,y为在某个节点上有y个子数据块是重复的,z为y个子数据块存储在z个容器中。
Figure BDA0002041897080000082
为平均每个容器存储的重复数据块数量,
Figure BDA0002041897080000083
为数据块包的数据重复率。
步骤S1032b,当所述数据块包在当前备选路由节点内的重复数据散布率大于在任一剩余备选路由节点内的重复数据散布率时,则将所述当前备选路由节点作为目标路由节点。
如上所述,由于重复数据散布率表示一个数据块包的重复数据在某个节点的散布情况。散布率越高,说明重复数据在该节点上散布越紧凑,在恢复数据时,需要进行的I/O操作越少,为在降低能耗的同时保持***较高的去重率,因此需要通过计算单元中的计算子单元计算所述数据块包在所有备选路由节点内的重复数据散布率,并由计算单元中的确定子单元根据所述重复数据散步率,从备选路由节点确定一目标路由节点。
作为一个具体的实施例,如一个数据块包中包括10个子数据块,在节点1中,重复的子数据块数量为5,对应存储的容器数量为2个。在节点2中,重复的子数据块数量为6,对应存储的容器数量为3个。那么节点1的重复数据散布率为:
Figure BDA0002041897080000091
而节点2的重复数据散布率为:
Figure BDA0002041897080000092
虽然在节点2上数据的重复率更高,但是考虑到容器数量较多会使***能耗增加,为了降低能耗,并尽量保持较高的去重率,该数据块包将会路由到节点1上。
根据本发明提供的路由路径规划方法,首先对数据流进行分块计算后得到各数据块的数据块指纹,由于该数据块指纹为该数据块的唯一标识,以便于对数据流中的各数据块进行精确查找;通过将所述数据块进行合并分组,得到相应的数据块包,从而提高数据流中所述数据块的的传输效率;通过在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点,由于任意一组的节点数量大于该组备选路由节点的数量,从而可以降低***能耗。由于本发明能够将新数据块持续路由到相同节点,以提高***数据去重率,且通过减少去重后的数据块所占的容器数量来减少***能耗,解决现有的路由***无法平衡***能耗与去重率的问题,提高了用户路由体验的满意度。
请参阅图5,基于同一发明构思,本发明第二实施例提供的路由路径规划***,包括:
划分模块10,用于获取集群中各个节点的剩余存储空间的大小,根据预设的等级划分规则对各节点进行相应的等级划分,以得到各节点的路由等级。
计算模块20,用于对数据流进行分块计算后得到各数据块的数据块指纹。
合并模块30,用于将所述数据块进行合并分组,得到相应的数据块包。
本实施例中,所述合并模块30包括:
转发单元31,用于将所述数据块包中各数据块的数据块指纹发送至集群的组长节点。
查询单元32,用于所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序。
本实施例中,所述查询单元32包括:
截取子单元321,用于各节点组内的节点通过指纹索引对各自节点内的数据块指纹的前缀或后缀进行截取后,对所述节点组长内的位图进行填充,以得到当前节点组内所有节点的位图;
查询子单元322,用于所述组长节点根据位图查询所述数据块包的数据重复率。
选择单元33,用于根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
确定模块40,用于在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点。
本实施例中,所述确定模块40包括:
路由单元41,用于当判断到所述集群中各组长节点所返回的备选路由节点的数量均为0时,则按照预设路由方式将新数据块路由至所述集群中相应的节点内。
确定单元42,用于当判断到所述集群中各组长节点所返回的备选路由节点的数量不为0时,则在所有备选路由节点内对数据块包进行数据块指纹检索,并根据重复数据散布率确定所述目标路由节点。
本实施例中,所述确定单元42包括:
计算子单元421,用于计算所述数据块包在所有备选路由节点内的重复数据散布率。
所述计算所述数据块包在所有备选路由节点内的重复数据散布率的公式为:
Figure BDA0002041897080000111
其中,x为数据块包含x个子数据块,y为在某个节点上有y个子数据块是重复的,z为y个子数据块存储在z个容器中。
Figure BDA0002041897080000112
为平均每个容器存储的重复数据块数量,
Figure BDA0002041897080000113
为数据块包的数据重复率。
确定子单元422,当所述数据块包在当前备选路由节点内的重复数据散布率大于在任一剩余备选路由节点内的重复数据散布率时,则将所述当前备选路由节点作为目标路由节点。
根据本发明提供的路由路径规划***,根据本发明提供的路由路径规划方法,首先对数据流进行分块计算后得到各数据块的数据块指纹,由于该数据块指纹为该数据块的唯一标识,以便于对数据流中的各数据块进行精确查找;通过将所述数据块进行合并分组,得到相应的数据块包,从而提高数据流中所述数据块的的传输效率;通过在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点,由于任意一组的节点数量大于备选路由节点的数量,从而可以降低***能耗。由于本发明能够将新数据块持续路由到相同节点,以提高***数据去重率,且通过减少去重后的数据块所占的容器数量来减少***能耗,解决现有的路由***无法平衡***能耗与去重率的问题,提高了用户路由体验的满意度。本发明实施例提出的路由路径规划***的技术特征和技术效果与本发明实施例提出的方法相同,在此不予赘述。
此外,本发明的实施例还提出一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

Claims (8)

1.一种路由路径规划方法,其特征在于,所述方法包括如下步骤:
对数据流进行分块计算后得到各数据块的数据块指纹;
将所述数据块进行合并分组,得到相应的数据块包;
在备选路由节点内对数据块包进行数据块指纹检索,当判断到集群中各组长节点回的备选路由节点的数量不为0时,则在所有备选路由节点内对数据块包进行数据块指纹检索,计算所述数据块包在所有备选路由节点内的重复数据散布率,当所述数据块包在当前备选路由节点内的重复数据散布率大于在任一剩余备选路由节点内的重复数据散布率时,则将所述当前备选路由节点作为目标路由节;
计算所述数据块包在所有备选路由节点内的重复数据散布率的公式为:
Figure FDA0002438610060000013
其中,x为数据块包含x个子数据块,y为在某个节点上有y个子数据块是重复的,z为y个子数据块存储在z个容器中;
Figure FDA0002438610060000011
为平均每个容器存储的重复数据块数量,
Figure FDA0002438610060000012
为数据块包的数据重复率。
2.根据权利要求1所述的路由路径规划方法,其特征在于,所述对数据流进行分块计算后得到各数据块的数据块指纹的步骤之前,所述方法还包括:
获取集群中各个节点的剩余存储空间的大小,根据预设的等级划分规则对各节点进行相应的等级划分,以得到各节点的路由等级。
3.根据权利要求2所述的路由路径规划方法,其特征在于,所述将所述数据块进行合并分组,得到相应的数据块包的步骤之后,所述方法还包括:
将所述数据块包中各数据块的数据块指纹发送至集群的组长节点;
所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序;
根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
4.根据权利要求3所述的路由路径规划方法,其特征在于,所述在备选路由节点内对数据块包进行数据块指纹检索,以得到目标路由节点的方法包括:
当判断到所述集群中各组长节点所返回的备选路由节点的数量均为0时,则按照预设路由方式将新数据块路由至所述集群中相应的节点内。
5.根据权利要求3所述的路由路径规划方法,其特征在于,所述组长节点根据位图查询所述数据块包的数据重复率的方法包括:
各节点组内的节点通过指纹索引对各自节点内的数据块指纹的前缀或后缀进行截取后,对所述节点组长内的位图进行填充,以得到当前节点组内所有节点的位图;
所述组长节点根据位图查询所述数据块包的数据重复率。
6.一种路由路径规划***,其特征在于,所述***包括:
计算模块,用于对数据流进行分块计算后得到各数据块的数据块指纹;
合并模块,用于将所述数据块进行合并分组,得到相应的数据块包;
确定模块,包括确定单元,所述确定单元包括计算子单元及确定子单元,
确定单元,用于当判断到集群中各组长节点所返回的备选路由节点的数量不为0时,则在所有备选路由节点内对数据块包进行数据块指纹检索,并根据重复数据散布率确定目标路由节点;
计算子单元,用于计算所述数据块包在所有备选路由节点内的重复数据散布率;
所述计算所述数据块包在所有备选路由节点内的重复数据散布率的公式为:
Figure FDA0002438610060000031
其中,x为数据块包含x个子数据块,y为在某个节点上有y个子数据块是重复的,z为y个子数据块存储在z个容器中;
Figure FDA0002438610060000032
为平均每个容器存储的重复数据块数量,
Figure FDA0002438610060000033
为数据块包的数据重复率;
确定子单元,用于当所述数据块包在当前备选路由节点内的重复数据散布率大于在任一剩余备选路由节点内的重复数据散布率时,则将所述当前备选路由节点作为目标路由节点。
7.根据权利要求6所述的路由路径规划***,其特征在于,所述合并模块包括:
转发单元,用于将所述数据块包中各数据块的数据块指纹发送至集群的组长节点;
查询单元,用于所述组长节点根据位图查询所述数据块包的数据重复率,对所述数据重复率按照降序的顺序进行排序;
选择单元,用于根据各节点的所述路由等级,将所述重复率大于或等于预设值的节点作为备选路由节点。
8.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5任意一项所述的路由路径规划方法。
CN201910344613.XA 2019-04-26 2019-04-26 路由路径规划方法、***及可读存储介质 Active CN110134331B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910344613.XA CN110134331B (zh) 2019-04-26 2019-04-26 路由路径规划方法、***及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910344613.XA CN110134331B (zh) 2019-04-26 2019-04-26 路由路径规划方法、***及可读存储介质

Publications (2)

Publication Number Publication Date
CN110134331A CN110134331A (zh) 2019-08-16
CN110134331B true CN110134331B (zh) 2020-06-05

Family

ID=67575279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910344613.XA Active CN110134331B (zh) 2019-04-26 2019-04-26 路由路径规划方法、***及可读存储介质

Country Status (1)

Country Link
CN (1) CN110134331B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103547329A (zh) * 2012-12-12 2014-01-29 华为技术有限公司 集群***中数据处理方法及装置
CN105487818A (zh) * 2015-11-27 2016-04-13 清华大学 针对云存储***中重复冗余数据的高效去重方法
CN105897921A (zh) * 2016-05-27 2016-08-24 重庆大学 一种结合指纹抽样和减少数据碎片的数据块路由方法
CN106201771A (zh) * 2015-05-06 2016-12-07 阿里巴巴集团控股有限公司 数据存储***和数据读写方法
CN108093024A (zh) * 2017-11-14 2018-05-29 西北工业大学 一种基于数据频度的分类路由方法及装置
CN109358987A (zh) * 2018-10-26 2019-02-19 黄淮学院 一种基于两级数据去重的备份集群

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003029932A (ja) * 2001-07-18 2003-01-31 Hitachi Ltd ディスク制御装置
US7376765B2 (en) * 2002-06-28 2008-05-20 Brocade Communications Systems, Inc. Apparatus and method for storage processing with split data and control paths
CN103631933B (zh) * 2013-12-06 2017-04-12 中国科学院计算技术研究所 一种面向分布式去重***的数据路由方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103547329A (zh) * 2012-12-12 2014-01-29 华为技术有限公司 集群***中数据处理方法及装置
CN106201771A (zh) * 2015-05-06 2016-12-07 阿里巴巴集团控股有限公司 数据存储***和数据读写方法
CN105487818A (zh) * 2015-11-27 2016-04-13 清华大学 针对云存储***中重复冗余数据的高效去重方法
CN105897921A (zh) * 2016-05-27 2016-08-24 重庆大学 一种结合指纹抽样和减少数据碎片的数据块路由方法
CN108093024A (zh) * 2017-11-14 2018-05-29 西北工业大学 一种基于数据频度的分类路由方法及装置
CN109358987A (zh) * 2018-10-26 2019-02-19 黄淮学院 一种基于两级数据去重的备份集群

Also Published As

Publication number Publication date
CN110134331A (zh) 2019-08-16

Similar Documents

Publication Publication Date Title
RU2724136C1 (ru) Способ и устройство обработки данных
US11609883B2 (en) Processing device configured for efficient generation of compression estimates for datasets
US20190370356A1 (en) Processing device configured for efficient generation of data reduction estimates for combinations of datasets
CN110347651B (zh) 基于云存储的数据同步方法、装置、设备及存储介质
WO2016090946A1 (zh) 一种虚拟数据中心资源映射方法和设备
JP2015225656A (ja) 分散型データグラフ記憶システム及び方法
JP6243045B2 (ja) グラフデータクエリ方法および装置
US20160173404A1 (en) Method to jointly select cloud computing and network services and associated device
US8504595B2 (en) De-duplication for a global coherent de-duplication repository
CN106951179B (zh) 一种数据迁移方法及装置
CN112100293A (zh) 数据处理方法、数据访问方法、装置及计算机设备
CN109165096B (zh) web集群的缓存利用***及方法
CN112100185B (zh) 区块链数据平衡负载的索引***及方法
CN108093024B (zh) 一种基于数据频度的分类路由方法及装置
CN111507479A (zh) 特征分箱方法、装置、设备及计算机可读存储介质
CN113300861B (zh) 网络切片配置方法、装置以及存储介质
CN115834587A (zh) 一种选择目标存储服务器的方法、装置及电子设备
CN111586094A (zh) 一种文件上传方法、装置及计算机设备
US20070043865A1 (en) Method of assigning objects to processing units
CN105701128A (zh) 一种查询语句的优化方法和装置
CN110134331B (zh) 路由路径规划方法、***及可读存储介质
CN113297430B (zh) 基于Sketch的高性能任意部分键测量方法和***
KR102212108B1 (ko) 스토리지 오케스트레이션의 학습형 최적화 대상 볼륨 선정 방법
CN115858648A (zh) 数据库生成方法、数据流切分方法、装置、设备及介质
JP2001022621A (ja) 多次元データベース管理システム

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
GR01 Patent grant
GR01 Patent grant