System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机存储,特别是涉及一种分布式文件存储系统、方法、介质及计算机程序产品。
技术介绍
1、随着信息化时代的快速发展,数据量呈爆炸式增长,传统的文件存储系统已难以满足大规模、高并发的数据存储需求。目前的分布式文件存储方法存在着无法去中心化、路由信息复杂、存储位置计算复杂的特点,不利于简单、高效的实现分布式文件存储。因此,设计一种高效、可扩展、安全的文件存储系统成为当前亟待解决的问题。
技术实现思路
1、针对现有技术的上述问题,本专利技术的实施例提供了一种分布式文件存储系统、方法、介质及计算机程序产品。
2、为了实现上述目的,一方面,提供一种分布式文件存储系统,包括:
3、至少一个服务器节点,用于存储文件;
4、地址配置器,用于根据所配置的ip地址长度形成由所有ip地址组成的地址环,并为分布式文件存储系统中的每一服务器节点配置ip地址;
5、节点管理器,用于对分布式文件存储系统中的服务器节点进行管理,所述管理包括:使用预定的一致性哈希函数,为每一服务器节点生成唯一的哈希值,其中,服务器节点的哈希值与服务器节点的唯一标识相对应;管理每一服务器节点的ip地址;及保存每一服务器节点所存储文件的哈希值范围,其中,所有服务器节点的哈希值将所述地址环分成n段,每一段对应的哈希值范围为对应服务器节点所存储文件的哈希值范围,其中,n为分布式文件存储系统当前包含的服务器节点的总数目;
6、路由器,用于维护路由表,所述路由表包括分布
7、文件管理器,用于维护所述所有服务器节点上的文件信息以及根据所述路由表迁移服务器节点上的文件,其中,所述文件信息包括:文件的哈希值、文件所属的目录和文件内容。
8、优选地,所述的分布式文件存储系统,其中,当有文件需要存入分布式文件存储系统时,所述文件管理器用于:
9、根据所述文件的属性信息,使用所述一致性哈希函数计算所述文件的第一哈希值;
10、判断所述第一哈希值是否在与所述文件关联的第一服务器节点所存储文件的哈希值范围之内;如是,则将所述文件存入所述第一服务器节点;否则,从所述路由表中查找所存储文件的哈希值范围包含所述第一哈希值的第二服务器节点,并将所述文件存入所述第二服务器节点。
11、优选地,所述的分布式文件存储系统,其中,当在分布式文件存储系统中检索文件时,所述文件管理器用于:
12、根据所述文件的属性信息,使用所述一致性哈希函数计算所述文件的第一哈希值;
13、判断所述第一哈希值是否在与所述文件关联的第一服务器节点所存储文件的哈希值范围之内;如是,则从所述第一服务器节点查找所述文件;否则,从所述路由表中查找所存储文件的哈希值范围包含所述第一哈希值的第二服务器节点,并从所述第二服务器节点查找所述文件。
14、优选地,所述的分布式文件存储系统,其中,
15、所述节点管理器,用于当有新增的第三服务器节点加入分布式文件存储系统时,将加入时所述第三服务器节点关联的第四服务器节点对应的所存储文件哈希范围的中间值作为所述第三服务器节点的哈希值,并将所述第四服务器节点原有的存储文件哈希范围均分第一部分和第二部分,其中,将从所述第四服务器节点的哈希值到所述第三服务器节点的哈希值之间的第一部分作为所述第四服务器节点当前所存储文件的哈希值范围,将剩余的第二部分作为所述第三服务器节点所存储文件的哈希值范围;
16、所述路由器,用于根据所述第三服务器节点的哈希值和所存储文件的哈希值范围及所述第四服务器节点所存储文件的哈希值范围更新路由表,并广播更新的路由表;
17、所述文件管理器,用于根据所述更新的路由表进行服务器节点中所存储文件的迁移。
18、优选地,所述的分布式文件存储系统,其中,
19、所述节点管理器,用于在服务器节点离开分布式存储系统时,将离开服务器节点所存储文件的哈希值范围按照预定的分配原则分配给所述离开服务器节点前后相邻的两个服务器节点,并更新所述离开服务器节点前后相邻的两个服务器节点的所存储文件的哈希值范围;
20、所述路由器,用于根据更新后所述离开服务器节点前后相邻的两个服务器节点的所存储文件的哈希值范围更新路由表,并广播更新的路由表;
21、所述文件管理器,用于根据所述更新的路由表将所述离开服务器节点中的文件迁移到所述离开服务器节点前后相邻的两个服务器节点上。
22、优选地,所述的分布式文件存储系统,其中,
23、所述节点管理器,用于当有新增的第三服务器节点加入分布式文件存储系统时,根据所述路由表确定当前存储文件数量最多的第五服务器节点,并根据所述第五服务器节点当前对应的所存储文件哈希范围来确定所述第三服务器节点的哈希值和所存储文件的哈希范围和调整所述第五服务器节点对应的所存储文件哈希范围;
24、所述路由器,用于根据所述第三服务器节点的哈希值和所存储文件的哈希值范围及所述第五服务器节点调整后所存储文件的哈希值范围更新路由表,并广播更新的路由表;
25、所述文件管理器,用于根据所述更新的路由表进行服务器节点中所存储文件的迁移。
26、优选地,所述的分布式文件存储系统,其中,根据所述第五服务器节点当前对应的所存储文件哈希范围来确定所述第三服务器节点的哈希值和所存储文件的哈希范围和调整所述第五服务器节点对应的所存储文件哈希范围包括:
27、将所述第五服务器节点对应的所存储文件哈希范围的中间值作为所述第三服务器节点的哈希值,并将所述第五服务器节点原有的存储文件哈希范围均分第一部分和第二部分,其中,将从所述第五服务器节点的哈希值到所述第三服务器节点的哈希值之间的第一部分作为所述第五服务器节点当前所存储文件的哈希值范围,将剩余的第二部分作为所述第三服务器节点所存储文件的哈希值范围。
28、另一方面,提供了一种使用上文任一项所述的分布式文件存储系统来实现分布式文件存储的方法。
29、又一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一段程序,所述至少一段程序由处理器执行以实现如上文所述的方法的步骤。
30、又一方面,提供了一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上文所述的方法的步骤。
31、上述技术方案具有如下技术效果:
32、本专利技术实施例的技术方案中,将分布式文件存储系统中所有的ip地址形成地址环,使用一致性哈希函数或算法为服务器节点生成唯一的哈希值,该哈希值对应于服务器节点的唯一标识,每一服务器节点有对应的存储文件的哈希范围,其中,所有服务器节点的哈希值将地址环分成n段,每一段对应的哈希值范围为对应服务器节点所存储文件的哈希值范围;路由器上维护的路由表存储由服务器节点的本文档来自技高网...
【技术保护点】
1.一种分布式文件存储系统,其特征在于,包括:
2.根据权利要求1所述的分布式文件存储系统,其特征在于,当有文件需要存入分布式文件存储系统时,所述文件管理器用于:
3.根据权利要求1所述的分布式文件存储系统,其特征在于,当在分布式文件存储系统中检索文件时,所述文件管理器用于:
4.根据权利要求1所述的分布式文件存储系统,其特征在于,
5.根据权利要求1所述的分布式文件存储系统,其特征在于,
6.根据权利要求1所述的分布式文件存储系统,其特征在于,
7.根据权利要求6所述的分布式文件存储系统,其特征在于,根据所述第五服务器节点当前对应的所存储文件哈希范围来确定所述第三服务器节点的哈希值和所存储文件的哈希范围和调整所述第五服务器节点对应的所存储文件哈希范围包括:
8.一种使用权利要求1-7中任一项所述的分布式文件存储系统来实现分布式文件存储的方法。
9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一段程序,所述至少一段程序由处理器执行以实现如权利要求8所述的方法的步骤。
...【技术特征摘要】
1.一种分布式文件存储系统,其特征在于,包括:
2.根据权利要求1所述的分布式文件存储系统,其特征在于,当有文件需要存入分布式文件存储系统时,所述文件管理器用于:
3.根据权利要求1所述的分布式文件存储系统,其特征在于,当在分布式文件存储系统中检索文件时,所述文件管理器用于:
4.根据权利要求1所述的分布式文件存储系统,其特征在于,
5.根据权利要求1所述的分布式文件存储系统,其特征在于,
6.根据权利要求1所述的分布式文件存储系统,其特征在于,
7.根据权利要求6所述的分布式文件存...
【专利技术属性】
技术研发人员:刘洋,卢天发,
申请(专利权)人:罗普特科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。