CN110647516A - 文件副本存储方法、装置、可读存储介质及电子设备 - Google Patents
文件副本存储方法、装置、可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN110647516A CN110647516A CN201910932198.XA CN201910932198A CN110647516A CN 110647516 A CN110647516 A CN 110647516A CN 201910932198 A CN201910932198 A CN 201910932198A CN 110647516 A CN110647516 A CN 110647516A
- Authority
- CN
- China
- Prior art keywords
- storage
- file
- heat
- copy
- target
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明的实施例提供了一种文件副本存储方法、装置、可读存储介质及电子设备,所述方法包括:基于多个存储节点的存储ID和每个存储节点的评价系数,获得目标ID;存储ID与所述评价系数对应,目标ID为每个存储节点的评价系数中最优评价系数对应的存储ID,存储节点的评价系数表征存储节点对目标文件的副本的存储性能;将目标文件的副本存储至目标ID对应的存储节点。通过获得评价系数中最优评价系数对应的存储ID作为目标ID,将文件的副本存储在目标ID对应的存储节点中,实现将副本存储于对该副本的存储性能最强的存储节点,提高了存储系统的数据负载均衡性,提高了存储系统的数据存储性能。
Description
技术领域
本发明涉及信息技术领域,具体而言,涉及一种文件副本存储方法、装置、可读存储介质及电子设备。
背景技术
随着移动互联网和科学技术的迅速发展,社会各行业和领域将会产生海量和多样性的数据,因此云计算领域面临的问题之一就有如何高效和可靠的对海量数据进行合理的存储管理。
目前,大量的数据依靠云存储系统进行存储管理。对于云存储系统,其云存储环境下的集群,是基于文件的副本对数据进行存储管理,即将文件的副本存储于不同的节点,以当某个被访问的节点的文件失效时,可以从其他节点获得该文件的副本以恢复数据,保证云存储系统的存储性能。
目前云存储系统中对于存储文件的副本的节点是随机选取的,这种存储方式导致系统的数据负载不均衡,进而降低了系统性能。
发明内容
本发明的目的在于提供一种文件副本存储方法、装置、可读存储介质及电子设备,其旨在改善现有技术中存在的上述问题。
第一方面,本发明实施例提供了一种文件副本存储方法,所述方法包括:
基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID;所述存储ID与所述评价系数对应;所述目标ID为每个所述存储节点的评价系数中最优评价系数对应的存储ID;所述存储节点的评价系数表征所述存储节点对目标文件的副本的存储性能;
将所述目标文件的副本存储至所述目标ID对应的存储节点。
可选的,在所述基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID之前,所述方法还包括:
随机获得多个随机存储节点的存储ID,所述多个随机存储节点的存储ID的个数与所述目标文件的副本数量相同;
判断评价系数表中是否记录有每个所述随机存储节点的存储ID;所述评价系数表中记录有多组一一对应的存储ID和评价系数;
若否,获得所述评价系数表中未记录有的所述随机存储节点的评价系数;
将所述评价系数表中未记录有的所述随机存储节点的存储ID和评价系数记录到所述评价系数表中。
可选的,在所述随机获得多个随机存储节点的存储ID之前,所述方法还包括:
获得所述目标文件的副本数量。
可选的,所述获得所述目标文件的副本数量,包括:
获得所述目标文件的访问热度,所述访问热度表征在当前时间段内对所述目标文件的感兴趣程度;
基于所述访问热度确定所述副本数量。
可选的,所述获得所述目标文件的访问热度包括:
获得所述目标文件的历史访问热度,所述历史访问热度表征在历史时间段内对所述目标文件的感兴趣程度,所述历史时间段是所述当前时间段的前一个时间段;
获得所述目标文件在所述当前时间段内的衰减系数,获得所述当前时间段内对所述目标文件的访问次数;所述衰减系数表征在所述当前时间段内,所述访问次数对所述目标文件的所述访问热度的影响大小;
基于所述历史访问热度、所述衰减系数和所述访问次数,获得所述访问热度。
可选的,基于所述访问热度确定所述副本数量,包括:
基于所述访问热度,通过训练好的支持向量机模型得到所述目标文件的热度类型;
基于所述热度类型,确定所述副本数量。
可选的,所述热度类型是高热度文件或者低热度文件或者正常热度文件;
所述基于所述热度类型,确定所述副本数量包括:
当所述热度类型是所述正常热度文件时,确定所述副本数量为设定值,所述设定值大于或者等于为3的正整数;
当所述热度类型是所述高热度文件时,基于副本决策因子和所述设定值确定所述副本数量;所述副本决策因子表征当前存储所述目标文件的存储节点对所述副本的存储能力;
当所述热度类型是所述低热度文件时,确定所述副本数量为所述设定值减去1。
第二方面,本发明实施例提供了一种文件副本存储装置,所述装置包括:
获取目标ID模块,用于基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID;所述存储ID与所述评价系数对应;所述目标ID为每个所述存储节点的评价系数中最优评价系数对应的存储ID;所述存储节点的评价系数表征所述存储节点对目标文件的副本的存储性能;
存储模块,用于将所述目标文件的副本存储至所述目标ID对应的存储节点。
第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项所述方法的步骤。
第四方面,本发明实施例提供了一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
相对于现有技术,本发明具有以下有益效果:
本发明实施例提供了一种文件副本存储方法、装置、可读存储介质及电子设备,所述方法包括:基于多个存储节点的存储ID和每个存储节点的评价系数,获得目标ID;存储ID与所述评价系数对应,目标ID为每个存储节点的评价系数中最优评价系数对应的存储ID,存储节点的评价系数表征存储节点对目标文件的副本的存储性能;将目标文件的副本存储至目标ID对应的存储节点。通过获得评价系数中最优评价系数对应的存储ID作为目标ID,将文件的副本存储在目标ID对应的存储节点中,实现将副本存储于对该副本的存储性能最强的存储节点,提高了存储系统的数据负载均衡性,提高了存储系统的数据存储性能。
本发明实施例的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了现有技术中本地机架和远端机架的副本分布式存储方式的示意图。
图2示出了本发明实施例提供的一种文件副本存储方法的流程图。
图3示出了本发明实施例提供的另一种文件副本存储方法的流程图。
图4示出了本发明实施例提供的又一种文件副本存储方法的流程图。
图5示出了本发明实施例提供的还一种文件副本存储方法的流程图。
图6示出了本发明实施例提供的再一种文件副本存储方法的流程图。
图7示出了本发明实施例提供的再一种文件副本存储方法的流程图。
图8示出了本发明实施例提供的一种文件副本存储装置200的方框结构示意图。
图9示出了本发明实施例提供的一种电子设备的方框结构示意图。
图标:200-文件副本存储装置;210-获取目标ID模块;220-存储模块;500-总线;501-接收器;502-处理器;503-发送器;504-存储器;505-总线接口。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在存储领域,通常采用海杜普(Hadoop)框架对数据进行存储,以提高系统的运算性能和存储性能。Hadoop框架是一个由Apache基金会所开发的分布式系统基础架构。基于Hadoop框架,用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。Hadoop框架常常应用于大数据存储和大数据分析领域。
Hadoop框架的核心设计思想是MapReduce和分布式文件系统(HadoopDistributed File System,HDFS)。MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。HDFS是一种分布式文件系统,具有低成本特点,主要基于廉价的分布式机器集群,为海量的数据提供存储,并且以可靠、高效、可扩展和容错性强的方式提供分布式存储服务。Hadoop框架中,通过HDFS为海量的数据提供了存储,通过MapReduce则为海量的数据提供了计算。
HDFS为了采用的是主/从(master/slave)结构模型,即一个master存储节点多个slave存储节点。其中,master存储节点和多个slave存储节点是集群结构中的同一台物理机的不同的存储节点,或者master存储节点和多个slave存储节点分别是集群结构中不同的物理机中的存储节点。HDFS在采用主/从(master/slave)结构模型对文件/数据进行存储时,将文件存储在master存储节点中,将该文件的副本存储在slave存储节点中。采用这种存储方式,可以防止当master存储节点中的数据/文件失效时,可以从slave存储节点中获得文件/数据的副本,进而实现对数据进行可靠、高效、可扩展和容错性强的存储,可以对海量的数据进行存储。
一般的,当文件的数据量大时,少量的slave存储节点不能保证对这些副本的存储性能,则需要与文件的副本数量相同数量的slave存储节点来存储这些副本。现有技术中,HDFS中对所有文件的副本数量都设置为3,即采用3副本的静态副本机制对文件进行存储,如图1所示,通过将3个副本中的第一个副本(3个中的其中一个:副本1)放置在本地机架(物理机)的节点(slave1)上,将第二个副本(剩下的两个中的其中一个:副本2)放置在同一机架上的另外一个节点(slave 2),将第三个副本(副本3)放在远端机架的节点(slave3)上。
采用本地机架和远端机架的副本分布式存储机制,当用户发起读取数据请求时就可以从本地机架上的存储节点(master或slave)读取数据/文件,且当本地存储节点失效时,可以从设置在远端机架的存储节点中获得文件副本,以恢复数据。同时,采用本地机架和远端机架的副本分布式存储机制减少了机架间的数据传输。
但是,上述的HDFS对所有文件的副本存储方式,会存在以下两个问题。
第一,对于存储在远端机架的存储节点的选取方式,采用的是随机选取的方式,即随机获得一个远端机架的存储节点用以存储文件的副本。但是这种随机选取存储节点进行存储的策略,一方面,不能保证所选择的存储节点对副本的存储性能最强,降低了系统的存储性能,同时,这种存储方式会出现有些存储节点的数据存储量大,有些存储节点的数据存储量小,而导致系统的负载不均衡,降低系统性能。另一方面,因为所选择的存储节点是可能不是对该副本存储性能最优的存储节点,在获得存储节点的副本时,进行数据恢复时数据传输耗能大,同时对该存储节点的副本进行数据恢复时会有大量的(不必要的)性能损失。
第二,对于HDFS基于静态副本机制对文件进行存储的方式,对所有文件均采取较大的副本因子(副本数量,较大的副本因子(副本数量)对应有较多的存储节点存储这些副本),确保了对文件副本存储的可靠性和可用性。但是对于一些文件来说,并不需要备份那么多的副本进行存储。因此,如果对所有文件均采取较大的副本因子,系统会配置副本数量(副本因子)个数的存储节点来对这些副本进行存储,势必会造成系统存储资源的浪费,进一步会增加对系统的管理成本和维护成本。
因此,本发明实施例提供一种文件副本存储方法、装置、可读存储介质及电子设备,用以解决现有技术中存储系统的数据负载不均衡、系统存储性能低、浪费存储资源的技术问题,达到了提高了存储系统的数据负载均衡性、节省了存储资源、提高了系统的存储性能的技术效果。具体的实时方式,通过下述实施例进行阐述。
实施例
第一方面,本发明实施例提供了文件副本存储方法。一种文件副本存储方法包括如图2所示的S101和S102。
S101:基于多个存储节点的存储ID和每个存储节点的评价系数,获得目标ID。
其中,存储ID与评价系数对应,目标ID为每个存储节点的评价系数中最优评价系数对应的存储ID,存储节点的评价系数表征存储节点对目标文件的副本的存储性能。
S102:将目标文件的副本存储至目标ID对应的存储节点。
现有技术中,通过随机获得一个存储节点用以存储文件的副本的存储方式,可能存在某个存储节点存储的数据量过大,导致存储系统的数据负载不均衡,再则因为该存储节点存储的数据量过大进而降低存储节点的对新分配的数据的存储能力,进而影响了系统的存储性能。而通过本发明实施例提供的S101和S102所述的方案,通过获得评价系数中最优评价系数对应的存储ID作为目标ID,最优评价系数是每个存储节点的评价系数中最优的评价系数,则目标ID对应的存储节点对该副本的存储性能最强,实现了将副本存储于对该副本的存储性能最的存储节点,提高了存储系统的存储性能,提高系统的数据负载均衡性。
在本发明实施例中,获得的目标ID的个数与目标文件的副本数量相同。例如,副本数量为N,N是大于或者等于1的正整数,当N等于1时,获得一个目标ID以及一个目标ID对应的存储节点,将文件的一个副本存储于目标ID对应的存储节点中。当N大于1时,获得N个目标ID以及每个目标ID对应的存储节点,获得N个目标ID分别一一对应的N个存储节点,将N个副本分别存储于N个目标ID分别一一对应的N个存储节点中。
为了实现S101所述的技术方案,可选的,在S101之前,所述方法还包括如图3所示的S100:获得多个存储节点的存储ID和每个存储节点的评价系数。针对S100的具体实施方式,可以是从评价系数表中获得多个存储节点的存储ID和每个存储节点的评价系数。其中,评价系数表中记录有多组一一对应的存储ID和评价系数。每个存储ID对应一个评价系数,每个存储ID对应一个存储节点。
然而,可能评价系数表中没有记录有在整个存储系统中对副本的存储性能最强的存储节点的存储ID以及评价系数,如果仅仅依赖于评价系数表中记录的存储ID和评价系数获得目标ID,这种情况下,该目标ID对应的存储节点对副本的存储能力可能并非足够强,因而可能并不能解决系统的数据负载不均衡的问题,不能提高系统的存储性能。如果通过遍历存储系统中所有的存储节点以获得对目标文件的副本的存储性能最强的存储节点,其计算量极大,会存在不必要的计算资源和存储资源浪费。
为此,为了尽可能地消耗最小的资源,获得对副本的存储能力最强的存储节点用以存储该副本,在获得多个存储节点的存储ID和每个存储节点的评价系数,包括如图4所示的S100-1~S100-5:
S100-1:随机获得多个随机存储节点的存储ID。
其中,多个随机存储节点的存储ID的个数与目标文件的副本数量相同。
S100-2:判断评价系数表中是否记录有每个随机存储节点的存储ID。
S100-3:若否(若评价系数表中未记录有每个随机存储节点的存储ID),获得评价系数表中未记录有的随机存储节点的评价系数。
S100-4:将评价系数表中未记录有的随机存储节点的存储ID和评价系数记录到评价系数表中,以获得更新后的评价系数表。
S100-5:从更新后的评价系数表中获得多个存储节点的存储ID和每个存储节点的评价系数。
其中,获得存储节点的评价系数的具体实施方式为:获得存储节点(待选节点)到当前存储目标文件的存储节点的距离评价值,所述距离评价值可以是网络距离;获得该待选节点的读写速度、CPU主频的评价值、内存的评价值以及磁盘空间的评价值,基于待选节点到当前存储目标文件的存储节点的距离评价值、待选节点的读写速度、CPU主频的评价值、内存的评价值以及磁盘空间的评价值,获得该待选节点的评价系数。具体的,可以通过对距离评价值、待选节点的读写速度、CPU主频的评价值、内存的评价值以及磁盘空间的评价值,获得该待选节点的评价系数进行加权求和的方式获得待选节点的评价系数,具体的,可以如下公式(1)所示的计算方式获得待选节点的评价系数:
E=a0*d+a1*c+a2*v+a3*s+a4*w(1),
通过采用以上方案,获得的评价系数可以准确表征待选节点对目标文件的副本的存储性能。进而根据待选节点对目标文件的副本的存储性能的高低选择待对目标文件的副本的存储性能的存储节点,用以存储目标文件的副本,从而使得存储系统对数据负载均衡,提高存储系统的存储性能。
作为一种可选的实施方式,在上述的将评价系数表中未记录有的随机存储节点的存储ID和评价系数记录到评价系数表中,以获得更新后的评价系数表之后,基于更新后的评价系数表获得多个存储节点的存储ID和每个存储节点的评价系数,以及基于更新后的评价系数表中的存储ID和每个存储节点的评价系数,获得目标ID。其中,基于更新后的评价系数表中的存储ID和每个存储节点的评价系数,获得目标ID,具体为:根据评价系数的大小,对更新后的评价系数表中的存储ID进行排序,最大的评价系数对应的存储ID排在最前面,最小的评价系数对应的存储ID排在最后面,大小排名在前K个的评价系数定义为最优评价系数,则获得排在最前面的K个存储ID作为目标ID,即获得K个目标ID。继上述的例子,K=N。如此,实现了将K个副本分别存储于K个目标ID分别一一对应的K个存储节点中,K为大于或者等于1的正整数。
为了便于阐述下述的技术方案,本发明实施例引入了最强存储节点和最强ID的概念。最强存储节点是在整个存储系统中对副本的存储性能最强的存储节点,最强ID是最强存储节点的存储ID。
通过采用以上方案,第一,随机获得的随机存储节点可能是对副本存储能力最强的存储节点,通过随机获得随机存储节点的方式,系统消耗的资源少。再则,相较于直接从评价系数表中获得的目标ID是最强ID的第一概率,基于更新后的评价系数表获得的目标ID是最强ID的第二概率更大。即第二概率大于第一概率,基于更新后的评价系数表获得的目标ID对应的存储节点是最强存储节点的可能性大于直接从评价系数表中获得的目标ID对应的存储节点是最强存储节点的可能性,进而提高了获得对副本的存储能力最强的存储节点的可能性,提高了系统的数据负载均衡性和存储性能。第二,随机获得的随机存储节点的数量与目标文件的副本数量相同,最大程度地节省了系统资源。于是,综合上述的第一和第二,实现了牺牲较小的系统资源(搜索性能)就能获得较大的系统存储性能的提高。
在判断评价系数表中是否记录有每个随机存储节点的存储ID之后,作为一种可选的实施方式,还包括如图4中所示的S100-6~S100-8:
S100-6:若是(若评价系数表中记录有每个随机存储节点的存储ID),判断评价系数表中是否记录有每个存储ID对应的评价系数。
S100-7:如果评价系数表中未记录有每个存储ID对应的评价系数,获得评价系数表中的存储ID对应存储节点的评价系数,将该评价系数记录到评价系数表中,得到更新后的评价系数表。然后执行S100-5。
S100-8:若评价系数表中记录有每个随机存储节点的存储ID且评价系数表中记录有每个存储ID对应的评价系数,从评价系数表中获得多个存储节点的存储ID和每个存储节点的评价系数。然后执行S101。
为了获得更准确的对副本的存储能力最强的存储节点,所述的文件副本存储方法还包括:每隔设定时间间隔,更新评价系数表中的存储ID和评价系数。其中,更新评价系数表中的评价系数的方式为:根据评价系数表中的多个存储ID,计算每个存储ID对应的存储节点的评价系数,以实现评价系数表的更新。
通过对评价系数表的定时更新,避免了因为评价系数表中的评价系数的不准确而造成获得的目标ID的准确性低,提高了获得对副本的存储性能最强的存储节点的可能性和准确性,提高了存储系统的数据负载均衡和存储性能。
基于上述的基于更新后的评价系数表获得目标ID,以提高系统的数据负载均衡性和存储性能,以及通过随机获得的随机存储节点的数量与目标文件的副本数量相同,最大程度地节省了系统资源,进而实现了牺牲较小的系统资源就能获得较大的系统存储性能的提高,于是,实现为了更进一步节约系统资源,需要根据目标文件的特性,设置符合需求的该目标文件的副本数量,并获得该副本数量以配置与副本数量相符的个数的随机存储节点。即在随机获得多个随机存储节点的存储ID之前,所述文件副本存储方法还包括:获得目标文件的副本数量。
作为一种可选的实施方式,获得目标文件的副本数量的实施方式包括如图5所示的S201~S202。以下结合图5对S201~S202进行阐述。
S201:获得目标文件的访问热度。
其中,访问热度表征在当前时间段内用户对目标文件的感兴趣程度。
S202:基于访问热度确定副本数量。
通过采用上述方案,基于访问热度确定副本数量,即基于用户对目标文件的感兴趣程度,确定目标文件的样本数量,实现了对存储系统中目标文件的样本数量的动态调整,相对于静态副本因子存储策略,本发明实施实现了目标文件特性的副本数量调整,节省了存储资源。进一步的,降低了用户对存储系统中的目标文件的副本的管理成本和对存储系统的维护成本。
其中,为了提高目标文件的访问热度的准确性,S201的具体实施方式可以是如图6所示的:
S201-1:获得目标文件的历史访问热度,获得目标文件在当前时间段内的衰减系数,以及获得当前时间段内用户对目标文件的访问次数。
其中,历史访问热度表征在历史时间段内用户对目标文件的感兴趣程度,历史时间段是当前时间段的前一个时间段;衰减系数表征在所述当前时间段内,访问次数对目标文件的访问热度的影响大小。
S201-2:基于历史访问热度、衰减系数和访问次数,获得访问热度。
基于上述的实施方案,基于用户在当前时间段的前一个时间段对目标文件的感兴趣程度、在当前时间段内用户对目标文件的访问次数对访问热度的影响和在当前时间段内用户对目标文件的访问次数而获得的访问热度,该访问热度可以准确表征在当前时间段内用户对目标文件的感兴趣程度。再基于该访问热度确定副本数量,符合该目标文件对副本数量的要求,进而节约了系统存储资源。
其中,基于历史访问热度、衰减系数和访问次数,获得访问热度,具体可以依照下述公式(2)所述的方式实现:
其中,Hi表示当前时间段的访问热度,当前时间段在整个时间周期T中,处在第i个时间段,μ表示上一个时间段内的对目标文件的访问热度(历史访问热度)对当前时间段内对目标文件的访问热度的影响,μ∈(0,1),Hi-1表示历史访问热度,表示衰减系数,k是衰减因子,k的取值为正整数,Ni表示在当前时间段i内对目标文件的访问次数,Ti表示前时间段。
通过μ对Hi-1和的加权求和,获得的访问热度融合历史访问热度和当时时间段的访问次数以及访问次数的衰减,该访问热度可以准确表征在当前时间段内用户对目标文件的感兴趣程度,提高了当前时间段内对目标文件的访问热度的准确性。
在获得目标文件在当前时间段内的访问热度后,基于热度类型,确定副本数量。
可选的,基于热度类型,确定副本数量的具体实施方式为如图7中所示的S202-1和S202-2。以下结合图7对S202-1和S202-2进行阐述。
S202-1:基于访问热度,通过训练好的支持向量机模型得到目标文件的热度类型。
S202-2:基于热度类型,确定副本数量。
通过采用以上方案,通过训练好的支持向量机模型(Support Vector Machine,SVM)对访问热度进行分类,分类速度快,准确性高。而基于热度类型确定副本数量,使得类型相同的文件的副本的数量相同,一方面该副本数量符合这些文件被访问的特征,另一方面提高了用户对海量的文件的副本的管理。
其中,支持向量机模型的训练方法为:获得训练样本集,训练样本集中包括多个训练访问热度,训练访问热度预先标注有训练访问热度对应的训练文件的热度类型。其中,标注的热度类型是高热度文件或者低热度文件或者正常热度文件。通过训练访问热度对支持向量机模型进行训练,以使训练后的支持向量机模型针对访问热度的输出为目标文件的热度类型。
在训练好支持向量机模型后,获得训练好的支持向量机模型中的W和b,W表示训练好的支持向量机模型中多个分类平面的斜率的集合,b是一个常量,W={wi},i=1,2,....,M,M为分类平面的数量。通过获得训练好的支持向量机模型中的W和b,以根据W和b对访问热度进行分类,进而实现对目标文件进行分类,以得到目标文件的热度类型。在物理意义层面,训练好的支持向量机模型中W表示的是训练好的支持向量机模型对访问热度分类的分类系数的集合,b是对热度分类的阈值。训练好的支持向量机模型中,对于输入x和输出y,满足y=f(x)=WTx+b,其含有一个最优超平面y=f(xc)=WTxc+b=0,(xc,0)是最优超平面中的点。
在获得W和b后,针对S202-1的具体实施方式为:获得判断因子和分类距离;判断因子表征训练好的支持向量机模型的最优超平面的法向量的长度的倒数,分类距离是访问热度到最优超平面的距离;若分类距离大于所述判断因子,基于法向量、所述访问热度获得分类因子;根据分类因子确定目标文件的热度类型是高热度文件或者所述低热度文件;若访问热度不大于判断因子,确定目标文件的热度类型是正常热度文件。
其中,最优超平面的法向量为上述的W,判断因子等于分类距离设为a,可选的,分类函数是h=sgn((WTx)+b),h是分类因子。当a>g时,将访问热度x输入分类函数中,以分类函数的输出作为分类因子h。根据分类因子确定目标文件的热度类型是高热度文件或者所述低热度文件,具体为:当h=1,确定目标文件的热度类型是高热度文件,当h=-1,确定目标文件的热度类型是低热度文件。若a小于或者等于g,确定目标文件的热度类型是正常热度文件。
通过采用以上方案,相对与现有技术中仅仅基于SVM对输入的数据进行二分类,得到两种分类结果,本发明实施例通过对SVM进行了优化,即对于SVM对热度文件的分类,考虑了当访问热度落在SVM的最优超平面上时,将访问热度对应的目标文件确定为正常类型文件,当访问热度落在SVM的最优超平面之上的平面上时,将访问热度对应的目标文件确定为高类型文件,当访问热度落在SVM的最优超平面之下的平面上时,将访问热度对应的目标文件确定为低类型文件,提高了基于访问热度确定目标文件的热度类型的准确性。
在通过上述的方法获得目标文件的热度类型后,基于热度类型,确定副本数量。作为一种可选的实施方式,基于热度类型,确定副本数量的具体实施方式可以为:当热度类型是所述正常热度文件时,确定副本数量为设定值,设定值大于或者等于为3的正整数;当热度类型是高热度文件时,基于副本决策因子和设定值确定副本数量;副本决策因子表征当前存储目标文件的存储节点对副本的存储能力;当热度类型是低热度文件时,确定副本数量为设定值减去1。
其中,基于副本决策因子和设定值确定副本数量,具体可以通过下述公式(3)所述的方式实现:
其中,α是设定值,αH表示高热度文件的副本数量,D表示副本决策因子,Dmax和Dmin别表示当前时间段内,系统中的多个文件中,每个文件有一个副本决策因子,这些副本决策因子中的最大值是Dmax,最小值是Dmin。Ctotal表示存储目标文件的存储节点总共的存储容量,Cused表示存储目标文件的存储节点中已经被使用的存储容量,在存储节点中,将目标文件分割成多个块,不同的块存储在不同的节点,Bj表示第j块,m表示多个块的数量,是存储目标文件的存储节点的存储容量剩余率。
当热度类型是低热度文件时,高热度文件的副本数量为:αL=α。
通过采用以上方案,基于存储目标文件的存储节点总共的存储容量剩余率、目标文件在当前时间段内的访问热度以及目标文件的多个块,得到的副本决策因子,可以准确当前存储目标文件的存储节点对副本的存储能力。基于该副本决策因子确定的副本数量适合与目标文件对副本的需求,保证了系统对目标文件的存储的安全性和可靠性,同时不会产生多余的副本儿造成存储资源浪费,节约了系统的存储资源。
获得副本数量后,作为一种可选的实施方式,可以执行随机获得多个随机存储节点的存储ID的步骤,再经过对评价系数表的更新,进而执行S101、S102,从而实现对目标文件的副本进行高效、安全地存储。
通过采用以上方案,达到了提高存储系统的数据负载均衡性、节省存储资源、提高系统的存储性能的技术效果。
第二方面,针对上述实施例提供一种文件副本存储方法,本申请实施例还对应提供一种用于执行上述的步骤的执行主体,该执行主体可以为图8中的文件副本存储装置200。请参考图8,该文件副本存储装置200包括:
获取目标ID模块210,用于基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID;所述存储ID与所述评价系数对应;所述目标ID为每个所述存储节点的评价系数中最优评价系数对应的存储ID;所述存储节点的评价系数表征所述存储节点对目标文件的副本的存储性能.
存储模块220,用于将所述目标文件的副本存储至所述目标ID对应的存储节点。
可选的,所述文件副本存储装置200还包括随机获取节点模块,所述随机获取节点模块用于:
随机获得多个随机存储节点的存储ID,所述多个随机存储节点的存储ID的个数与所述目标文件的副本数量相同;
判断评价系数表中是否记录有每个所述随机存储节点的存储ID;所述评价系数表中记录有多组一一对应的存储ID和评价系数;
若否,获得所述评价系数表中未记录有的所述随机存储节点的评价系数;
将所述评价系数表中未记录有的所述随机存储节点的存储ID和评价系数记录到所述评价系数表中。
可选的,所述随机获取节点模块还用于:获得所述目标文件的副本数量。
可选的,所述随机获取节点模块还用于:获得所述目标文件的访问热度,所述访问热度表征在当前时间段内对所述目标文件的感兴趣程度;基于所述访问热度确定所述副本数量。
可选的,所述随机获取节点模块还用于:获得所述目标文件的历史访问热度,所述历史访问热度表征在历史时间段内对所述目标文件的感兴趣程度,所述历史时间段是所述当前时间段的前一个时间段;获得所述目标文件在所述当前时间段内的衰减系数,获得所述当前时间段内对所述目标文件的访问次数;所述衰减系数表征在所述当前时间段内,所述访问次数对所述目标文件的所述访问热度的影响大小;基于所述历史访问热度、所述衰减系数和所述访问次数,获得所述访问热度。
可选的,所述随机获取节点模块还用于:基于所述访问热度,通过训练好的支持向量机模型得到所述目标文件的热度类型;
基于所述热度类型,确定所述副本数量。
可选的,所述随机获取节点模块还用于:
所述基于所述热度类型,确定所述副本数量包括:当所述热度类型是所述正常热度文件时,确定所述副本数量为设定值,所述设定值大于或者等于为3的正整数;
当所述热度类型是所述高热度文件时,基于副本决策因子和所述设定值确定所述副本数量;所述副本决策因子表征当前存储所述目标文件的存储节点对所述副本的存储能力;
当所述热度类型是所述低热度文件时,确定所述副本数量为所述设定值减去1。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
第三方面,本发明实施例还提供了一种电子设备,如图9所示,包括存储器504、处理器502及存储在存储器504上并可在处理器502上运行的计算机程序,所述处理器502执行所述程序时实现前文所述文件副本存储方法的任一方法的步骤。
其中,在图9中,总线架构(用总线500来代表),总线500可以包括任意数量的互联的总线和桥,总线500将包括由处理器502代表的一个或多个处理器和存储器504代表的存储器的各种电路链接在一起。总线500还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口505在总线500和接收器501和发送器503之间提供接口。接收器501和发送器503可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器502负责管理总线500和通常的处理,而存储器504可以被用于存储处理器502在执行操作时所使用的数据。
第四方面,本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文所述文件副本存储方法的任一方法的步骤。
第五方面,本发明实施例还提供了另一种可读存储介质,用于存储前文所述文件副本存储方法的任一方法中的目标文件的副本。
其中,所述的可读存储介质可以被计算机可读。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
Claims (10)
1.一种文件副本存储方法,其特征在于,所述方法包括:
基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID;所述存储ID与所述评价系数对应;所述目标ID为每个所述存储节点的评价系数中最优评价系数对应的存储ID;所述存储节点的评价系数表征所述存储节点对目标文件的副本的存储性能;
将所述目标文件的副本存储至所述目标ID对应的存储节点。
2.根据权利要求1所述的方法,其特征在于,在所述基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID之前,所述方法还包括:
随机获得多个随机存储节点的存储ID,所述多个随机存储节点的存储ID的个数与所述目标文件的副本数量相同;
判断评价系数表中是否记录有每个所述随机存储节点的存储ID;所述评价系数表中记录有多组一一对应的存储ID和评价系数;
若否,获得所述评价系数表中未记录有的所述随机存储节点的评价系数;
将所述评价系数表中未记录有的所述随机存储节点的存储ID和评价系数记录到所述评价系数表中。
3.根据权利要求2所述的方法,其特征在于,在所述随机获得多个随机存储节点的存储ID之前,所述方法还包括:
获得所述目标文件的副本数量。
4.根据权利要求3所述的方法,其特征在于,所述获得所述目标文件的副本数量,包括:
获得所述目标文件的访问热度,所述访问热度表征在当前时间段内对所述目标文件的感兴趣程度;
基于所述访问热度确定所述副本数量。
5.根据权利要求4所述的方法,其特征在于,所述获得所述目标文件的访问热度包括:
获得所述目标文件的历史访问热度,所述历史访问热度表征在历史时间段内对所述目标文件的感兴趣程度,所述历史时间段是所述当前时间段的前一个时间段;
获得所述目标文件在所述当前时间段内的衰减系数,获得所述当前时间段内对所述目标文件的访问次数;所述衰减系数表征在所述当前时间段内,所述访问次数对所述目标文件的所述访问热度的影响大小;
基于所述历史访问热度、所述衰减系数和所述访问次数,获得所述访问热度。
6.根据权利要求4所述的方法,其特征在于,基于所述访问热度确定所述副本数量,包括:
基于所述访问热度,通过训练好的支持向量机模型得到所述目标文件的热度类型;
基于所述热度类型,确定所述副本数量。
7.根据权利要求6所述的方法,其特征在于,所述热度类型是高热度文件或者低热度文件或者正常热度文件;
所述基于所述热度类型,确定所述副本数量包括:
当所述热度类型是所述正常热度文件时,确定所述副本数量为设定值,所述设定值大于或者等于为3的正整数;
当所述热度类型是所述高热度文件时,基于副本决策因子和所述设定值确定所述副本数量;所述副本决策因子表征当前存储所述目标文件的存储节点对所述副本的存储能力;
当所述热度类型是所述低热度文件时,确定所述副本数量为所述设定值减去1。
8.一种文件副本存储装置,其特征在于,所述装置包括:
获取目标ID模块,用于基于多个存储节点的存储ID和每个所述存储节点的评价系数,获得目标ID;所述存储ID与所述评价系数对应;所述目标ID为每个所述存储节点的评价系数中最优评价系数对应的存储ID;所述存储节点的评价系数表征所述存储节点对目标文件的副本的存储性能;
存储模块,用于将所述目标文件的副本存储至所述目标ID对应的存储节点。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910932198.XA CN110647516A (zh) | 2019-09-29 | 2019-09-29 | 文件副本存储方法、装置、可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910932198.XA CN110647516A (zh) | 2019-09-29 | 2019-09-29 | 文件副本存储方法、装置、可读存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110647516A true CN110647516A (zh) | 2020-01-03 |
Family
ID=68993094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910932198.XA Pending CN110647516A (zh) | 2019-09-29 | 2019-09-29 | 文件副本存储方法、装置、可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110647516A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794766A (zh) * | 2023-02-07 | 2023-03-14 | 金钱猫科技股份有限公司 | 分布式存储的数据副本存储方法、系统、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488180A (zh) * | 2015-11-30 | 2016-04-13 | 中国建设银行股份有限公司 | 一种数据存储方法及系统 |
CN108009260A (zh) * | 2017-12-11 | 2018-05-08 | 西安交通大学 | 一种大数据存储下结合节点负载和距离的副本放置方法 |
CN108418858A (zh) * | 2018-01-23 | 2018-08-17 | 南京邮电大学 | 一种面向Geo-distributed云存储的数据副本放置方法 |
CN109933289A (zh) * | 2019-03-15 | 2019-06-25 | 深圳市网心科技有限公司 | 一种存储副本部署方法、系统及电子设备和存储介质 |
CN110149394A (zh) * | 2019-05-20 | 2019-08-20 | 典基网络科技(上海)有限公司 | 系统资源的调度方法、装置和存储介质 |
-
2019
- 2019-09-29 CN CN201910932198.XA patent/CN110647516A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488180A (zh) * | 2015-11-30 | 2016-04-13 | 中国建设银行股份有限公司 | 一种数据存储方法及系统 |
CN108009260A (zh) * | 2017-12-11 | 2018-05-08 | 西安交通大学 | 一种大数据存储下结合节点负载和距离的副本放置方法 |
CN108418858A (zh) * | 2018-01-23 | 2018-08-17 | 南京邮电大学 | 一种面向Geo-distributed云存储的数据副本放置方法 |
CN109933289A (zh) * | 2019-03-15 | 2019-06-25 | 深圳市网心科技有限公司 | 一种存储副本部署方法、系统及电子设备和存储介质 |
CN110149394A (zh) * | 2019-05-20 | 2019-08-20 | 典基网络科技(上海)有限公司 | 系统资源的调度方法、装置和存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794766A (zh) * | 2023-02-07 | 2023-03-14 | 金钱猫科技股份有限公司 | 分布式存储的数据副本存储方法、系统、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11036552B2 (en) | Cognitive scheduler | |
CN110869909B (zh) | 应用机器学习算法来计算健康分数以进行工作负载调度的系统和方法 | |
US8793427B2 (en) | Remote memory for virtual machines | |
JP5006348B2 (ja) | 応答出力キャッシュに対するマルチキャッシュ協調 | |
US8533719B2 (en) | Cache-aware thread scheduling in multi-threaded systems | |
JP5218390B2 (ja) | 自律制御サーバ、仮想サーバの制御方法及びプログラム | |
US8341441B2 (en) | Reducing energy consumption in a cloud computing environment | |
CN109788489A (zh) | 一种基站规划方法及装置 | |
CN106648456A (zh) | 基于用户访问量以及预测机制的动态副本文件访问方法 | |
US20200167252A1 (en) | Method and apparatus for managing storage system | |
CN102298569A (zh) | 在线学习算法的并行化 | |
CN113821332B (zh) | 自动机器学习系统效能调优方法、装置、设备及介质 | |
CN108153589B (zh) | 用于多线程的处理布置中的数据处理的方法和系统 | |
CN103250117A (zh) | 用于通过动态电压脉冲方案来改善功率输送性能的装置、方法和系统 | |
CN103970587A (zh) | 一种资源调度的方法、设备和系统 | |
US11449230B2 (en) | System and method for Input/Output (I/O) pattern prediction using recursive neural network and proaction for read/write optimization for sequential and random I/O | |
CN103731498B (zh) | 一种基于副本选择的大数据实时查询系统负载均衡方法 | |
US11880710B2 (en) | Adaptive data shipment based on burden functions | |
CN104391678A (zh) | 服务器及其方法、系统及其方法 | |
CN107291539A (zh) | 基于资源重要程度的集群程序调度方法 | |
CN111881358A (zh) | 一种对象推荐系统、方法、装置、电子设备和存储介质 | |
CN112799597A (zh) | 面向流数据处理的分级存储容错方法 | |
WO2024114728A1 (zh) | 一种异构处理器及相关调度方法 | |
CN110647516A (zh) | 文件副本存储方法、装置、可读存储介质及电子设备 | |
CN103399799A (zh) | 云操作系统中计算物理资源节点负载评价的方法及装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200103 |