分布式文件存储和访问控制方法、计算机设备和存储介质转让专利

申请号 : CN202210943689.6

文献号 : CN115016743B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林立磐彭子非潘仲毅陈朝晖严伟雄刘智国李伟

申请人 : 广东省信息工程有限公司

摘要 :

本申请公开了一种分布式文件存储和访问控制方法、计算机设备和存储介质,涉及分布式存储技术,包括以下步骤获取可用节点的信息,对可用节点进行分级;获取待存储文件的重要程度;根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,其中,被分配的可用节点的分级根据待存储文件的重要程度确定;在索引服务器中记录所述待存储文件的存储节点;当存储节点的文件被访问时,由所述索引服务器提供索引服务。通过实施本方案可以在存储节点参差的情况下优化储存成本和尽可能确保重要数据安全。

权利要求 :

1.一种分布式文件存储和访问控制方法,其特征在于,包括以下步骤:根据可用节点的参数信息、安全性信息、故障信息和平均在线时间通过评价模型对可用节点进行分级;

获取待存储文件的重要程度;

根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,其中,被分配的可用节点的分级根据待存储文件的重要程度确定;

在索引服务器中记录所述待存储文件的存储节点;

当存储节点的文件被访问时,由所述索引服务器提供索引服务;

其中,根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,具体是:根据所述待存储文件的重要程度确定可用节点的分级和备份数量;

根据所述备份数量从对应分级的可用节点中选择至少一个可用节点作为存储节点;其中,还包括以下步骤:

获取可用节点的平均在线时间,根据可用节点的平均在线时间对可用节点进行分类,得到在线概率分类;

按照待存储文件被访问的概率,确定对应的在线概率分类并从属于该在线概率分类的节点中选择可用节点。

2.根据权利要求1所述的分布式文件存储和访问控制方法,其特征在于,为带存储文件分配的存储节点的数量与存储文件的重要程度成正比。

3.根据权利要求1所述的分布式文件存储和访问控制方法,其特征在于,所述当存储节点的文件被访问时,由所述索引服务器提供索引服务,具体是:当存储节点的文件被访问时,由所述索引服务器根据各存储节点当前各存储节点的负载状态,向访问请求发起端发送目标存储节点的地址。

4.根据权利要求1所述的分布式文件存储和访问控制方法,其特征在于,所述评价模型具体是:节点评分=f1(参数信息)+f2(安全性信息)‑f3(故障信息);

分级=g(节点评分),其中,g()是分段函数;f1()、f2()、f3()是参数评分的函数;

所述参数信息包括处理器和内存空间,所述安全性信息包括软件防火墙参数和硬件防火墙参数,所述故障信息包括故障次数和故障频率。

5.根据权利要求4所述的分布式文件存储和访问控制方法,其特征在于,所述文件被访问的概率根据文件类型确定或者按照预定规则配置。

6.一种计算机设备,其特征在于,包括:

存储器,用于存储程序;

处理器,用于加载所述程序以执行如权利要求1‑5任一项所述的分布式文件存储和访问控制方法。

7.一种计算机可读存储介质,其存储有程序,其特征在于,所述程序被处理器执行时,实现如权利要求1‑5任一项所述的分布式文件存储和访问控制方法。

说明书 :

分布式文件存储和访问控制方法、计算机设备和存储介质

技术领域

[0001] 本申请涉及分布式存储技术,特别是一种分布式文件存储和访问控制方法、计算机设备和存储介质。

背景技术

[0002] 分布式存储技术是利用了多个计算机节点来存储文件的技术。相对于传统的中心化存储结束,其具有分散性的特点,那么意味着其具有更高的可靠性,不会因为一个中心节点宕机而整个系统无法访问。
[0003] 但是分布式存储也有其不稳定的因素,数据节点性能和安全性均存在差异,可能出现安全漏洞。

发明内容

[0004] 本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种分布式文件存储和访问控制方法、计算机设备和存储介质。
[0005] 一方面,本申请实施例提供了一种分布式文件存储和访问控制方法,其特征在于,包括以下步骤:
[0006] 获取可用节点的信息,对可用节点进行分级;
[0007] 获取待存储文件的重要程度;
[0008] 根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,其中,被分配的可用节点的分级根据待存储文件的重要程度确定;
[0009] 在索引服务器中记录所述待存储文件的存储节点;
[0010] 当存储节点的文件被访问时,由所述索引服务器提供索引服务。
[0011] 在一些实施例中,根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,具体是:
[0012] 根据所述待存储文件的重要程度确定可用节点的分级和备份数量;
[0013] 根据所述备份数量从对应分级的可用节点中选择至少一个可用节点作为存储节点。
[0014] 在一些实施例中,为带存储文件分配的存储节点的数量与存储文件的重要程度成正比。
[0015] 在一些实施例中,所述当存储节点的文件被访问时,由所述索引服务器提供索引服务,具体是:
[0016] 当存储节点的文件被访问时,由所述索引服务器根据各存储节点当前各存储节点的负载状态,向访问请求发起端发送目标存储节点的地址。
[0017] 在一些实施例中,获取可用节点的信息,对可用节点进行分级,具体包括:
[0018] 根据所述可用节点的参数信息、安全性信息、故障信息和平均在线时间通过评价模型对可用节点进行分级。
[0019] 在一些实施例中,所述评价模型具体是:
[0020] 节点评分=f1(参数信息)+f2(安全性信息)‑f3(故障信息);
[0021] 分级=g(节点评分),其中,g()是分段函数。
[0022] 所述参数信息包括处理器和内存空间,所述安全性信息包括软件防火墙参数和硬件防火墙参数,所述故障信息包括故障次数和故障频率。
[0023] 在一些实施例中,还包括以下步骤:
[0024] 获取可用节点的平均在线时间,根据可用节点的平均在线时间对可用节点进行分类,得到在线概率分类;
[0025] 按照待存储文件被访问的概率,确定对应的在线概率分类并从中选择可用节点。
[0026] 在一些实施例中,所述文件被访问的概率根据文件类型确定或者按照预定规则配置。
[0027] 另一方面,本申请实施例公开了一种计算机设备,包括:
[0028] 存储器,用于存储程序;
[0029] 处理器,用于加载所述程序以执行所述的分布式文件存储和访问控制方法。
[0030] 另一方面,本申请实施例公开了一种计算机可读存储介质,其存储有程序,所述程序被处理器执行时,实现所述的分布式文件存储和访问控制方法。
[0031] 本申请实施例对可用节点进行分级,然后根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,其中,被分配的可用节点的分级根据待存储文件的重要程度确定;在索引服务器中记录所述待存储文件的存储节点;当存储节点的文件被访问时,由所述索引服务器提供索引服务,通过这一方式,可以将重要程度高的文件存放在分级较高的存储节点中,这样可以保障重要文件的存储安全性,同时,通过分级存储的方式,可以将重要程度低的文件放置在分级较低的节点中以降低成本。

附图说明

[0032] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0033] 图1是本申请实施例提供的一种分布式文件存储和访问控制方法的流程图;
[0034] 图2是步骤S3的子流程图;
[0035] 图3是本申请实施例提供的一种计算机设备的模块框图。

具体实施方式

[0036] 为使本申请的目的、技术方案和优点更加清楚,以下将参照本申请实施例中的附图,通过实施方式清楚、完整地描述本申请的技术方案,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0037] 在本发明的描述中,若干的含义是一个以上,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0038] 本发明的描述中,除非另有明确的限定,设置等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
[0039] 本发明的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0040] 参照图1,本实施例公开了一种分布式文件存储和访问控制方法,该方法应用于分布式存储系统之中,其特征在于,包括以下步骤:
[0041] S1、获取可用节点的信息,对可用节点进行分级。
[0042] 具体地,可以包括:根据所述可用节点的参数信息、安全性信息、故障信息和平均在线时间通过评价模型对可用节点进行分级。可以理解的是,参数信息包括设备的处理器性能,内存空间大小,设备的配置越高,响应速度越高;节点配置的防火墙影响了设备的安全性,因此可以基于防火墙信息来评价节点的安全性。在部分实施例中,由于部分存储节点并非专用服务器,在这种情况下,其在线时间是不确定的,因此,也可以基于这一点对节点的可靠性进行评价。对于不重要的文件或者读取可能性较低的文件,可以选择存储在这些节点中。
[0043] 下面示出一种评价模型:
[0044] 节点评分=f1(参数信息)+f2(安全性信息)‑f3(故障信息);
[0045] 其中,f1()、f2()、f3()分别是各类参数评分的函数,函数具体形式可以根据经验确定。例如,在f1()中的参数信息,首先按照一定的映射表,将处理器参数和内存参数转换成对应的数值,再进行评分。同理,安全性信息也是基于防火墙类型,转换成对应的数值进行评分。故障信息,主要参考故障次数和故障频率(也可以用MTBF来衡量)。
[0046] 分级=g(节点评分),其中,g()是分段函数。例如,100 80分是一级,79 60分是二~ ~级,59分以下是三级,其中,数值越小级别越高。
[0047] 所述参数信息包括处理器和内存空间,所述安全性信息包括软件防火墙参数和硬件防火墙参数,所述故障信息包括故障次数和故障频率。
[0048] S2、获取待存储文件的重要程度。
[0049] 其中,存储文件的重要程度可以由用户分级,分级可以对应节点的分级。当然,重要程度的分级也可以多于节点的分级,只需要确定一套对应关系即可。在部分实施例中,可以按照文件重要程度可以和用户关联。即可以对用户进行分级,并根据用户的分级确定存储文件的重要程度。例如,高级用户对应一级的重要程度,中级用户对应二级的重要程度,普通用户对应三级的重要程度。
[0050] S3、根据所述待存储文件的重要程度为所述待存储文件分配至少一个可用节点进行存储,其中,被分配的可用节点的分级根据待存储文件的重要程度确定。
[0051] 参照图2,具体地包括S31和S32:
[0052] S31、根据所述待存储文件的重要程度确定可用节点的分级和备份数量。较为重要的文件可以存储在分级高的可用节点中,例如,可以将可用节点分为一级,二级和三级,其中一级为最高级,三级为最低级,存储文件的重要程度也对应分为一级,二级和三级。一级文件可以存储在一级节点之中。重要的文件,不能被丢失,因此可以增加备份的数量,例如一级文件存放在三个一级节点之中,相互备份。二级文件可以存放在两个二级或一级的节点之中。
[0053] S32、根据所述备份数量从对应分级的可用节点中选择至少一个可用节点作为存储节点。其中,为带存储文件分配的存储节点的数量与存储文件的重要程度成正比。即越重要,存储节点的数量越高,通过分配更多满足级别要求的存储节点,可以使得重要程度高的文件更不容易丢失。
[0054] S4、在索引服务器中记录所述待存储文件的存储节点。
[0055] 在本实施例中,会配置一个或者多个索引服务器,这些索引服务器基于负载均衡策略分配任务,索引请求会被负载均衡机制分配到各索引服务器中,索引服务器中对文件的存储节点进行索引,从而为访问端提供对应的访问地址。
[0056] S5、当存储节点的文件被访问时,由所述索引服务器提供索引服务。
[0057] 步骤S5具体地:
[0058] 当存储节点的文件被访问时,由所述索引服务器根据各存储节点当前各存储节点的负载状态,向访问请求发起端发送目标存储节点的地址。索引服务器可以先询问当前存储节点的负载状态,并基于负载状态分配存储节点,这样可以避免大量的访问涌入。当然,服务器也可以做负载均衡的策略。
[0059] 在一些实施例中,为了降低成本,可以将普通计算机纳入到云存储系统中,这些计算机不同于专用服务器,其可能在线时间不确定。因此在本实施例中,还包括以下步骤:
[0060] 获取可用节点的平均在线时间,根据可用节点的平均在线时间对可用节点进行分类,得到在线概率分类。其中,可以将平均在线时间大于90%的划分成第一类,将平均在线时间89% 70%的划分成二类,最后将小于70%的划分成第三类。~
[0061] 按照待存储文件被访问的概率,确定对应的在线概率分类并从中选择可用节点。其中,所述文件被访问的概率根据文件类型确定或者按照预定规则配置。可以理解的是,可以按照文件的属性进行分类,也可以按照用户设定的配置规则。对于不常用的文件,例如一些老旧的日志,其被读取的可能性比较低,因此可以将其存在一些平均在线时间较短的设备中,这样使得产品整体访问失败的情形变少。有必要时,可以采用其他策略唤醒这些设备。本实施例意在将低频访问的数据存放在平均在线时间相对较短的存储节点中,以应对优质存储节点存量不足的问题。
[0062] 参照图3,本申请实施例公开了一种计算机设备,包括:
[0063] 存储器,用于存储程序;
[0064] 处理器,用于加载所述程序以执行所述的分布式文件存储和访问控制方法。
[0065] 在本申请中所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read‑OnlyMemory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0066] 注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。