[发明专利]一种一致性级别可控的自适应数据同步方法和系统有效
| 申请号: | 201910903210.4 | 申请日: | 2019-09-24 |
| 公开(公告)号: | CN110855737B | 公开(公告)日: | 2020-11-06 |
| 发明(设计)人: | 黄涛;唐震;王伟;魏峻;郑莹莹;宋傲 | 申请(专利权)人: | 中国科学院软件研究所 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08 |
| 代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 余长江 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 一致性 级别 可控 自适应 数据 同步 方法 系统 | ||
本发明提供一种一致性级别可控的自适应数据同步方法和系统,本方法包括接收集群中节点基本特征与场景特征;计算节点失效概率分布和用户请求概率分布,并与节点基本特征与场景特征一同送入至环境特征模型,结合排除规则集合获取算法的选择范围;根据算法的选择范围与场景特征,结合收益规则集合确定算法以及算法参数,并生成算法决策并同步到每个节点;每个节点根据接收到的算法决策确定算法以及算法参数,以响应用户请求并实现数据同步。本发明解决了大规模集群的数据同步过程中针对不同类型数据的时效性需求,增强了数据同步的性能,保障了水平扩展能力且适用于大规模集群,提供了动态调整和插拔的能力。
技术领域
本发明涉及软件技术领域,尤其涉及一种一致性级别可控的自适应数据同步方法和系统。
背景技术
分布式键值对(Key-Value)存储系统在集群中维护了数据的多份副本并保障了一致性,在很多领域得到广泛应用,一种典型的适用场景是在集群中共享具有指定主题(Topic)的相关数据(如应用共享的配置信息等),并基于发布-订阅机制,在对应Topic更新时通知所有已订阅这一Topic的节点获取最新数据,节点响应这些数据改变并进行相应的操作以实现集群管理、负载均衡、故障转移等目标。这一系统中包含两个集群,分别由客户端节点和服务器节点组成,客户端节点会向服务器集群中的某个服务器节点发出请求以订阅指定的Topic,服务器节点会将这一信息在服务器集群内同步,当对应Topic的数据有更新时,所有服务器节点上的所有数据副本以及所有订阅这一Topic的客户端节点上的数据副本都会收到更新,从而实现数据同步。
目前广泛使用的分布式Key-Value存储系统包括ZooKeeper及etcd等,都依赖底层的一致性保障机制确保针对特定Key的更新可以正确、高效地应用在所有数据副本上。但在云计算的大环境下,主流的云服务提供商所管理的虚拟机和容器等计算资源实例的规模日益增大,达到百万乃至千万的规模。现有的在ZooKeeper及etcd等系统中使用的Paxos变种或Raft等数据同步和一致性保障方法需要依赖选举机制得到唯一的Leader作为协调者以保障顺序一致性,这一过程会带来大量的节点间网络交互,在集群规模超过数百节点时选举的开销急剧增加,对性能影响巨大;另一方面,Leader节点需要处理所有客户端发起的读写请求以保障一致性,这也导致在集群规模增大时Leader节点的负载增加,最终限制了集群的横向扩展能力。而在实际场景中,大规模集群中需要在所有节点间共享的信息也存在一定比例的节点级别的标注与配置数据等,这些数据只与节点和应用相关,与应用中实际承载的用户业务无关。对这类数据而言,通常在运维层面只存在“正确”与“不正确”的差异,因此Paxos变种算法以及Raft算法等保障的顺序一致性对这个场景而言过强。因此,现有的保障顺序一致性的方法和系统并不适用于大规模集群的场景。
其次,相比数据副本一致性而言,大规模集群场景下的数据同步更关注性能以及方法的可靠性,针对不同类型的数据更新,会存在不同的最大可容忍的数据副本不一致窗口。例如,客户端节点订阅了分布式Key-Value存储系统中维护的某一个服务的可用地址列表,当地址列表变化时客户端节点将收到更新,从而保证服务可以被正常调用。在这一例子中,针对服务的可用地址列表的不同类型的修改操作的最大可容忍不一致窗口存在差异。向地址列表中添加一个新节点的操作的最大可容忍不一致窗口较大,因为这一更新数据未及时同步可能导致短时间内新加入的节点的计算资源未充分利用,但不会导致服务中断;相比较而言从地址列表中移除一个失效节点的操作的最大可容忍不一致窗口较小,因为未及时更新地址列表的客户端节点有可能访问失效节点以调用服务,从而导致服务中断。然而,现有的保障顺序一致性的方法和系统未能考虑一致性级别需要随着数据类型变化的情形,难以适用于大规模集群数据同步的场景。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910903210.4/2.html,转载请声明来源钻瓜专利网。





