分布式存储系统和方法技术方案

技术编号:15520514 阅读:155 留言:0更新日期:2017-06-04 10:03
本发明专利技术提出一种分布式存储系统和方法,涉及大数据存储领域。其中,本发明专利技术的一种分布式存储系统,包括:主服务器,用于处理数据和存储数据,并将数据发送给副主服务器和从服务器;副主服务器,用于存储来自主服务器的数据,且当主服务器宕机时根据从服务器的选举结果切换为主服务器;和,从服务器,用于存储来自主服务器的数据,为用户提供不可靠数据,且当主服务器宕机时从副主服务器中选举出新的主服务器。这样的系统中由多种服务器为用户提供数据服务,提高了访问效率;当主服务器故障时,会存在副主服务器及时切换为主服务器,提高了故障解决效率,提高了系统的稳定性和可靠性。

Distributed storage system and method

The invention provides a distributed storage system and method, which relates to the field of large data storage. Among them, including a distributed storage system, the invention of the main server for data processing and storing data, and transmits the data to the server from the server and vice principal; vice principal server is used for storing data to the home server, and when the main server downtime when switching from the server according to the election results as the main server; and, from the server for storing data to the home server, providing reliable data for the user, and when the main server is down from the main server side to elect a new master. By multiple servers to provide data service users in this system, improve the access efficiency; when the primary server failure, there will be deputy main server timely switch server, improve troubleshooting efficiency, improve the stability and reliability of the system.

【技术实现步骤摘要】
分布式存储系统和方法
本专利技术涉及大数据存储领域,特别是一种分布式存储系统和方法。
技术介绍
随着社交网络,移动互联网,及电子商务技术的不断发展,以网络为基础经营的互联网企业越来越受到人们的喜爱。人们在频繁使用互联网的同时,也创造了大量的内容。这些内容就是数据,每一家互联网公司在后端基本上都会有一套成熟稳定的分布式系统用于数据的存储、计算及分析,提取数据价值。同时也需要一套高效、可靠的数据缓存系统用于互联网应用的快速反应,一个反应缓慢的应用,肯定得不到用户青睐。现有技术中多采用基于Multi-Paxos算法的设计方法,但由于这样的算法较为难以理解,工程师在程序编写时容易出错,造成了系统的不稳定;而另外一种基于Raft算法的设计方法在读取速度和故障处理速度上差强人意。
技术实现思路
本专利技术的一个目的在于提出一种稳定高效的分布式数据存储方案。根据本专利技术的一个方面,提出一种分布式存储系统,包括:主服务器Main-Leader,用于处理数据和存储数据,并将数据发送给副主服务器和从服务器;副主服务器Deputy-Leader,用于存储来自主服务器的数据,且当主服务器宕机时根据从服务器的选举结果切换为主服务器;和,从服务器Follower,用于存储来自主服务器的数据,为用户提供不可靠数据,且当主服务器宕机时从副主服务器中选举出新的主服务器。可选地,分布式存储系统中包括一个主服务器,至少一个副主服务器和至少两个从服务器。可选地,主服务器与从服务器通过心跳消息保持连接;主服务器还用于在宕机时重启并切换为从服务器;从服务器具体用于:当无法接收到来自主服务器的心跳消息时,确定主服务器宕机;通过从服务器间的交互,基于第一预定策略从副主服务器中选举出新的主服务器;副主服务器还用于在被从服务器选举为新的主服务器时,切换为主服务器。可选地,从服务器还用于:当从副主服务器中选举出新的主服务器后,通过从服务器间的交互,基于第二预定策略从从服务器中选举出新的副主服务器;当被选举为新的副主服务器时切换为副主服务器。可选地,主服务器具体用于:接收来自用户的写入数据,存储写入数据并生成日志信息;将写入数据基于可靠数据传输方式发送给副主服务器;将写入数据通过不可靠数据传输方式发送给从服务器;副主服务器还用于当写入数据时生成日志信息。可选地,副主服务器还用于在切换为主服务器时,基于日志信息更新存储数据。这样的系统中采用主服务器、副主服务器、从服务器结构进行分布式存储,由多种服务器为用户提供数据服务,提高了访问效率;当主服务器故障时,会存在副主服务器及时切换为主服务器,提高了故障解决效率,提高了系统的稳定性和可靠性。根据本专利技术的另一个方面,提出一种分布式存储方法,包括:当主服务器宕机时从服务器从副主服务器中选举出新的主服务器,其中,主服务器处理数据和存储数据,并将数据发送给副主服务器和从服务器;副主服务器存储来自主服务器的数据;从服务器存储来自主服务器的数据并为用户提供不可靠数据;根据从服务器的选举结果,副主服务器切换为主服务器。可选地,主服务器的数量为1个,副主服务器的数量为1个以上,从服务器的数量为2个以上。可选地,还包括:主服务器与从服务器之间通过心跳消息保持连接;当主服务器宕机时,主服务器重启并切换为从服务器;从服务器从副主服务器中选举出新的主服务器包括:当从服务器无法接收到来自主服务器的心跳消息时,确定主服务器宕机;从服务器通过从服务器间的交互,基于第一预定策略从副主服务器中选举出新的主服务器;根据从服务器的选举结果,副主服务器切换为主服务器包括:当被从服务器选举为新的主服务器时,副主服务器切换为主服务器。可选地,还包括:当从服务器从副主服务器中选举出新的主服务器后,通过从服务器间的交互,基于第二预定策略从从服务器中选举出新的副主服务器;当被选举为新的副主服务器时,从服务器切换为副主服务器。可选地,还包括:主服务器接收来自用户的写入数据,存储写入数据并生成日志信息;将写入数据基于可靠数据传输方式发送给副主服务器;将写入数据通过不可靠数据传输方式发送给从服务器;副主服务器存储写入数据,并生成日志信息。可选地,还包括:当副主服务器切换为主服务器时,基于日志信息更新存储数据。通过这样的方法,能够采用主服务器、副主服务器、从服务器结构进行分布式存储,由多种服务器为用户提供数据服务,提高了访问效率;当主服务器故障时,会存在副主服务器及时切换为主服务器,提高了故障解决效率,提高了系统的稳定性和可靠性。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术的分布式存储系统的一个实施例的示意图。图2为本专利技术的分布式存储系统中服务器切换的一个实施例的示意图。图3为本专利技术的分布式存储系统中数据写入的一个实施例的信令图。图4为本专利技术的分布式存储系统中数据读取的一个实施例的信令图。图5为本专利技术的分布式存储方法的一个实施例的流程图。图6为本专利技术的分布式存储方法的另一个实施例的流程图。图7为本专利技术的分布式存储方法中数据写入的一个实施例的流程图。具体实施方式下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。本专利技术的分布式存储系统的一个实施例的示意图如图1所示。其中,主服务器101能够处理数据和存储数据,并将数据发送给副主服务器和从服务器;副主服务器111、副主服务器112能够分别存储来自主服务器的数据,且当主服务器宕机时根据从服务器的选举结果切换为主服务器,系统中可以包括多个副主服务器;从服务器121、122能够存储来自主服务器的数据,为用户提供不可靠数据,且当主服务器宕机时从副主服务器中选举出新的主服务器,系统中可以包括多个从服务器。这样的系统中采用主服务器、副主服务器、从服务器结构进行分布式存储,由多种服务器为用户提供数据服务,提高了访问效率;副主服务器和从服务器存储来自主服务器的数据,从而保证了多个服务器的数据一致性;当主服务器故障时,会存在副主服务器及时切换为主服务器,提高了故障解决效率,提高了系统的稳定性和可靠性。在一个实施例中,当初始启动时,系统中可以包括多个平行服务器,启动完成后,分布式存储系统中生成一个主服务器,至少一个副服务器,以及多个从服务器。分布式存储系统的结构可以分为两层,其中主服务器和副主服务器位于主动层,执行用户数据处理、数据备份和分布式网络心跳处理的功能;从服务器位于被动层,执行同步主动层数据的操作。在一个实施例中,系统维护人员可以根据需要指定副主服务器的数量。在一个实施例中,可以配置系统中各个服务器的权重,按照权重的大小确定主服务器、副主服务器,将系统中其他的服务器作为从服务器。这样的系统能够迅速生成由主服务器、副主服务及从服务器的结构,提高系统生成的效率。在一个实施例中,分布式存储系统中至少存在三台服务器,其中,一台为主服务器,一台既为副主服务器又为从服务器,还有一台为从服务器。这样的分布式存储系统既能够满足采用主、副主、从服务器的结构,又能够保证从服务器进行选举时能够达成一致性意见,保证了系统的正常运行。在一个实施例中,多个服务器角色的确定可以分为两个阶段:主服务器角色确定和副主服务器角色确定。从服务本文档来自技高网...
分布式存储系统和方法

【技术保护点】
一种分布式存储系统,其特征在于,包括:主服务器,用于处理数据和存储数据,并将所述数据发送给副主服务器和从服务器;所述副主服务器,用于存储来自所述主服务器的数据,且当所述主服务器宕机时根据所述从服务器的选举结果切换为所述主服务器;和,所述从服务器,用于存储来自所述主服务器的数据,为用户提供不可靠数据,且当所述主服务器宕机时从所述副主服务器中选举出新的所述主服务器。

【技术特征摘要】
1.一种分布式存储系统,其特征在于,包括:主服务器,用于处理数据和存储数据,并将所述数据发送给副主服务器和从服务器;所述副主服务器,用于存储来自所述主服务器的数据,且当所述主服务器宕机时根据所述从服务器的选举结果切换为所述主服务器;和,所述从服务器,用于存储来自所述主服务器的数据,为用户提供不可靠数据,且当所述主服务器宕机时从所述副主服务器中选举出新的所述主服务器。2.根据权利要求1所述的系统,其特征在于,所述分布式存储系统中包括一个所述主服务器,至少一个所述副主服务器和至少两个所述从服务器。3.根据权利要求1所述的系统,其特征在于,所述主服务器与所述从服务器通过心跳消息保持连接;所述主服务器还用于在宕机时重启并切换为从服务器;所述从服务器具体用于:当无法接收到来自所述主服务器的所述心跳消息时,确定所述主服务器宕机;通过所述从服务器间的交互,基于第一预定策略从所述副主服务器中选举出新的主服务器;所述副主服务器还用于在被所述从服务器选举为新的所述主服务器时,切换为所述主服务器。4.根据权利要求3所述的系统,其特征在于,所述从服务器还用于:当从所述副主服务器中选举出新的所述主服务器后,通过所述从服务器间的交互,基于第二预定策略从所述从服务器中选举出新的所述副主服务器;当被选举为新的所述副主服务器时切换为所述副主服务器。5.根据权利要求1所述的系统,其特征在于,所述主服务器具体用于:接收来自用户的写入数据,存储所述写入数据并生成日志信息;将所述写入数据基于可靠数据传输方式发送给所述副主服务器;将所述写入数据通过不可靠数据传输方式发送给所述从服务器;所述副主服务器还用于当写入数据时生成所述日志信息。6.根据权利要求1所述的系统,其特征在于,所述副主服务器还用于在切换为所述主服务器时,基于所述日志信息更新存储数据。7.一种分布式存储方法,其特征在于,包括:当主服务器宕机时从服务器从副主...

【专利技术属性】
技术研发人员:朱欣灿
申请(专利权)人:浙江省公众信息产业有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1