[发明专利]分布式计算机数据存储系统中多副本一致性的控制方法有效

专利信息
申请号: 201410165580.X 申请日: 2014-04-23
公开(公告)号: CN103986694B 公开(公告)日: 2017-02-15
发明(设计)人: 王建民;黄向东 申请(专利权)人: 清华大学
主分类号: H04L29/06 分类号: H04L29/06;H04L29/08;H04L12/24;G06F17/30
代理公司: 北京清亦华知识产权代理事务所(普通合伙)11201 代理人: 罗文群
地址: 100084*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 分布式 计算机 数据 存储系统 副本 一致性 控制 方法
【权利要求书】:

1.一种计算机数据分布式存储系统中多副本一致性的控制方法,该方法包括以下步骤:

(1)记分布式存储系统的节点集合为S,在S中的节点A到节点B的实现通信的转发队列记做SQAB,该转发队列能同时进行转发操作的转发操作数量N_SQAB,S中节点C的用于执行写请求的执行队列记做MQc,该执行队列能同时进行写操作的写操作数量N_MQA,记用户期望的分布式存储系统的同一数据项的不同副本间差异度小于k;

(2)对于一个写请求,设定节点A为协调者节点,集合SA为非协调者节点集合,对于每一个非协调者节点B∈SA,设定协调者节点A与非协调者节点B实现通信的转发队列SQAB的队列长度阈值为L_SQAB,协调者节点A的所有转发队列集合为SQA,节点A执行写请求的执行队列MQA的队列长度阈值为L_MQA,其中L_SQAB=α×k×N_SQAB,L_MQA=β×k×N_MQA,其中α和β取值为任意正整数;

(3)分布式存储系统中的协调者节点A接收到客户端的写请求后,协调者节点A从分布式存储系统中找到存储与该写请求对应的数据副本的所有非协调者节点B∈SA,协调者节点将该写请求插入到本节点的用于与包含该数据项副本的所有非协调者节点实现通信的转发队列SQAB∈SQA中,插入过程包括以下步骤:

(3-1)对协调者节点A中用于与非协调者节点实现通信的所有转发队列SQAB∈SQA的长度分别进行判断,若该转发队列SQAB的长度小于该转发队列长度阈值L_SQAB,则将写请求插入到该转发队列末尾,等待转发,若该转发队列SQAB的长度大于或等于该转发长度阈值L_SQAB,则该写请求暂时不进入转发队列,进入阻塞状态,直到转发队列长度小于L_SQAB,从阻塞状态转换为工作状态,将写请求插入到该转发队列末尾,等待转发;

(3-2)对协调者节点A中的数据副本进行判断,若协调者节点A中不存在与写请求对应的数据副本,则写请求不进入协调者节点A的执行队列,若协调者节点A中存在与写请求对应的数据副本,则当协调者节点A的执行队列MQA的队列长度小于上述执行队列的长度阈值L_MQA时,协调者节点A将写请求插入到执行队列MQA中,等待执行,当协调者节点A的执行队列长度大于或等于上述执行队列的长度阈值L_MQA时,写请求暂时不进入执行队列,进入阻塞状态,直到执行队列长度小于L_MQA时,从阻塞状态转换为工作状态,将写请求插入到执行队列中,等待执行;

(4)协调者节点A依次将所有转发队列SQAB∈SQA中的写请求转发给对应的非协调者节点B∈SA

(5)非协调者节点B∈SA接收到协调者节点A转发的写请求后,对本节点B的用于写请求的执行队列MQB的长度进行判断,若执行队列MQB的长度小于上述长度阈值L_MQB,则本节点B将写请求插入到执行队列MQB中,等待执行;若执行队列的长度大于或等于长度阈值L_MQB,则写请求不进入执行队列MQB,进入阻塞状态,直到执行队列长度小于L_MQB,从阻塞状态转换为工作状态,将写请求插入到执行队列中MQB,等待执行;

(6)上述步骤(3-2)中插入了该写请求的协调者节点A与上述步骤(5)中的非协调者节点B∈SA执行本节点中执行队列中的写请求,若写请求操作失败,则减小执行队列长度L_MQ的值,减小方法为:使上述β=β-1,根据公式L_MQ=β×k×N_MQ,重新计算L_MQ,若写请求操作成功,则该节点向协调者节点返回写入成功信息;

(7)设定协调者节点需要接收到成功信息次数的阈值,在设定时间内,对协调者节点收集到成功信息的次数进行判断,若成功信息次数大于或等于成功信息次数阈值,则保持所有的L_SQAB(其中B∈SA)不变,若成功信息次数小于成功信息次数阈值,则减小所有的L_SQAB(其中B∈SA)的值,减小方法为:使上述α=α-1,根据公式L_SQAB=α×k×N_SQAB并重新计算所有的L_SQAB,其中B∈SA

(8)对步骤(6)中执行写请求的节点的重新计算得到的执行队列长度L_MQ进行判断,若重新计算得到的执行队列长度L_MQ与该节点原有执行队列长度L_MQ不等,则使用该节点重新计算得到的执行队列长度L_MQ代替该节点原有的执行队列长度L_MQ;若若重新计算得到的执行队列长度L_MQ与该节点原有执行队列长度L_MQ相等,则保持L_MQ不变;

(9)分别对步骤(7)中协调者节点A和非协调者节点B(A∈S,B∈SA)重新计算得到的转发队列长度L_SQAB进行判断,若重新计算得到的转发队列长度L_SQAB与协调者节点A原转发队列长度L_SQAB不等,则使用步骤(7)中重新计算得到的转发队列长度L_SQAB代替步骤(2)中的协调者节点A的转发队列长度L_SQAB,若重新计算得到的转发队列长度L_SQAB与协调者节点A原转发队列长度L_SQAB相等,则保持步骤(2)中的协调者节点A的转发队列长度L_SQAB不变;

(10)以步骤(8)和步骤(9)中的得到的转发队列长度和执行队列长度作为设定值,返回步骤(3)。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410165580.X/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top