论文部分内容阅读
随着云计算时代的到来,越来越多的数据被放在云端统一向用户提供相应的服务,如何保证数据实时在线、可服务已经成为一个重要的研究方向。目前,服务高可用性的研究仍处在初级阶段,往往需要根据实际需求进行设计和实现,不具有通用性和扩展性。为解决数据存储的可用性问题,提高系统的可靠性和通用性,以多学科虚拟实验为应用需求,设计并实现了高可用、分布式、可扩展的数据存储系统。高可用分布式的数据存储系统结合了目前主流的数据可用性保证技术,并在此基础上对多方面的技术细节进行改进和创新。系统使用键值对的方式实现对数据的持久化存储,使用读写控制机制和异常处理方法保证系统服务的可用性。系统具有以下的一些特点:(1)采用一致性哈希和虚节点的数据分布模型使数据请求合理的分布到多个物理节点,使系统的存储负载均衡化,提高系统吞吐能力;(2)设计了分布式系统中进行数据传输和持久化的二进制协议和接口模型,定义系统内所有类型的消息和数据实体的通信和处理规范;(3)使用最终一致性和数据可用性模型控制数据读写过程,使可用性能够根据实际的需求进行调整,提高系统的适应能力,同时对系统可能产生的各种异常情况进行及时处理,尽可能保证数据存取操作的成功;(4)提供节点间进行状态同步和信息交换的相关协议和机制,使得系统内多个物理节点之间能够协同服务,避免部分节点失效对系统服务的可用性造成影响,同时也对系统提供扩展性方面的支持。在充分研究可用性理论和调研开源高可用存储解决方案的基础上,实现了该系统。实际运行状况和相关测试表明,系统至少能保证98%的数据存储服务可用性,并且提供良好的扩展能力。