本技术涉及存储,尤其涉及一种数据处理方法、装置及设备。
背景技术:
1、重删是存储领域降低成本的重要技术之一,广泛应用到大量的传统集中式存储系统中。其中,重删技术包括完全重删技术和相似重删技术,完全重删技术是删除相同的重复数据,相似重删可以删除相同和相似的重复数据,从而可以较高程度的降低存储成本。
2、但是,在分布式存储系统中,其存储的业务数据、元数据、指纹表等通常分布在不同的存储节点,那么实现一次数据存储和重删,可能需要多个存储节点之间进行多次交互。例如,在主存储场景中,终端上报一个新数据请求写入分布式存储系统时,需要存储元数据(即业务数据的指纹和位置信息)的节点与各个存储业务数据的节点(有多个)分别交互,从而通过比较新数据与已存业务数据之间的指纹,确定各个存储业务数据的节点上是否有与该新数据相同或相似的数据。若有,则相应存储业务数据的节点对新数据进行重删,并将重删后的新数据的指纹上报存储指纹表的节点,再由存储指纹表的节点确定存储位置,以将重删后的新数据发送到该存储位置所在的节点,之后,所有参与本次重删操作的节点需更新一次元数据。可见,重删技术在分布式存储场景下会占用大量的网络开销,技术实现难度大。
技术实现思路
1、本技术实施例提供了一种数据处理方法、装置、集群、计算机存储介质及计算机程序产品,能够在重删操作过程中的降低存储系统的网络开销,以利于降低重删技术的实现难度。
2、第一方面,本技术实施例提供一种数据处理方法,该方法应用于数据处理系统,数据处理系统按照云服务管理系统的配置,对存储系统中的业务数据进行缩减处理,存储系统包括至少一个存储路径,方法包括:获取第一业务数据的第一元数据,第一业务数据存储在存储系统中的目标存储路径中,第一元数据用于指示第一业务数据的特征信息;确定第一业务数据中的第一重复数据,第一重复数据包括目标存储路径中相同或相似的数据,目标存储路径至少包括第一业务数据;通过目标缩减算法,对第一重复数据进行缩减处理,得到缩减后的第一数据;将第一数据写入存储系统,以使得存储系统的存储节点更新存储系统中的第一元数据,并基于更新后的第一元数据获取第一数据。
3、在本实施例中,数据处理系统与存储系统彼此独立,利用数据处理系统从存储系统中的指定路径(即目标存储路径)下获取相关业务数据(可以是数据块的形式)的第一元数据(例如位置、指纹等),从而基于这些元数据确定相同或相似的重复数据,并对重复数据进行重删、压缩等缩减处理,减小业务数据的数据量,写入存储系统中。这样,可以将数据缩减技术与存储技术解耦,存储系统只需将相关业务数据和元数据传递至数据处理系统,后续就可以直接得到缩减后的数据(即第一数据)写入相应的存储节点,大大降低了存储系统的io开销,并利于降低分布式存储系统中的数据重删实现难度。
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、可以理解的是,上述第二方面至第六方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
1.一种数据处理方法,其特征在于,所述方法应用于数据处理系统,所述数据处理系统按照云服务管理系统的配置,对存储系统中的业务数据进行缩减处理,所述存储系统包括至少一个存储路径,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述第一业务数据中的第一重复数据前,所述方法包括:
3.根据权利要求1所述的方法,其特征在于,所述第一元数据包括如下的一种或多种:
4.根据权利要求1至3任一项所述的方法,其特征在于,在所述获取第一业务数据的第一元数据之前,所述方法包括:
5.根据权利要求4所述的方法,其特征在于,所述根据所述第二元数据进行算法匹配,得到所述目标缩减算法,包括:
6.根据权利要求4或5所述的方法,其特征在于,所述根据所述第二元数据进行算法匹配,得到所述目标缩减算法,具体包括:
7.根据权利要求6所述的方法,其特征在于,所述算法库中,同一数据特性的业务数据配置有至少一种缩减算法。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述方法包括:
9.根据权利要求1至8任一项所述的方法,其特征在于,所述目标存储路径包括如下的一种或多种:
10.一种数据处理装置,其特征在于,所述装置应用于数据处理系统,所述数据处理系统按照云服务管理系统的配置,对存储系统中的业务数据进行缩减处理,所述存储系统包括至少一个存储路径,所述装置包括:
11.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述云服务管理系统的配置信息,所述配置信息指示开启针对所述目标存储路径的缩减处理。
12.根据权利要求10所述的装置,其特征在于,所述第一元数据包括如下的一种或多种:
13.根据权利要求10-12任一项所述的装置,其特征在于,
14.根据权利要求13所述的装置,其特征在于,所述处理模块具体用于:
15.根据权利要求13或14所述的装置,其特征在于,所述处理模块具体用于:
16.根据权利要求15所述的装置,其特征在于,所述算法库中,同一数据特性的业务数据配置有至少一种缩减算法。
17.根据权利要求10至16任一项所述的装置,其特征在于,
18.根据权利要求10至17任一项所述的装置,其特征在于,所述目标存储路径包括如下的一种或多种:
19.一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;
20.一种包含指令的计算机程序产品,其特征在于,当所述指令被计算设备集群运行时,使得所述计算设备集群执行如权利要求的1-9任一所述的方法。
21.一种计算机可读存储介质,其特征在于,包括计算机程序指令,当所述计算机程序指令由计算设备集群执行时,所述计算设备集群执行如权利要求1-9任一所述的方法。