[发明专利]只附加分布式数据库的读写协议有效
申请号: | 201680057996.7 | 申请日: | 2016-09-26 |
公开(公告)号: | CN108140043B | 公开(公告)日: | 2022-05-24 |
发明(设计)人: | J·D·库库伊特;J·施瓦兹;S·Y·加鲁佐 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华;杜波 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 附加 分布式 数据库 读写 协议 | ||
1.一种用于更新由分布式数据库系统存储的数据的方法,所述方法包括:
在所述分布式数据库系统处接收分布式事务;
定义所述分布式数据库系统的可见更改集合ID边界,所述可见更改集合ID边界指示由所述分布式数据库系统的多个碎片存储的数据的版本;
定义所述分布式事务的更改集合ID,其中所述更改集合ID递增地大于所述可见更改集合ID边界;
将来自所述分布式事务的数据并行地写入到所述多个碎片中的一个或多个碎片,其中所述一个或多个碎片是仅附加的;以及
在确定来自所述分布式事务的所述数据已被成功写入到所述一个或多个碎片中的每一个碎片时,将所述可见更改集合ID边界推进到新的可见更改集合ID边界,所述新的可见更改集合ID边界包括针对所述分布式事务的所述更改集合ID,使得由所述多个碎片存储的、包括来自所述分布式事务的所述数据的数据的新的版本是可访问的。
2.根据权利要求1所述的方法,还包括:
允许用户仅读取被定义为处于所述可见更改集合ID边界内的存储数据。
3.根据权利要求1所述的方法,其中所述更改集合ID至少部分地基于与写入所述分布式事务相关联的日期和时间。
4.根据权利要求1所述的方法,其中所述更改集合ID在所述分布式数据库系统中的中央数据库处被定义。
5.根据权利要求1所述的方法,还包括:
基于与每个存储的分布式事务相关联的相应更改集合ID来组织所述一个或多个碎片中的每一个碎片内的所有数据。
6.根据权利要求1所述的方法,其中所述可见更改集合ID边界在中央数据库处被定义并被维护。
7.根据权利要求1所述的方法,其中确定所述数据已被成功写入到所述一个或多个碎片中的每一个碎片包括:从所述一个或多个碎片中的每一个碎片接收成功通知。
8.根据权利要求1所述的方法,还包括:
在确定所述数据已被成功写入到所述一个或多个碎片中的每一个碎片之前,接收对所述分布式数据库系统的读取请求;以及
仅提供由所述可见更改集合ID边界定义的存储数据。
9.一种用于更新由分布式数据库系统存储的数据的方法,所述方法包括:
定义可见更改集合ID边界,所述可见更改集合ID边界指示由所述分布式数据库系统中的多个碎片存储的数据的版本;
接收第一分布式事务和第二分布式事务以包含在所述分布式数据库系统中;
定义所述第一分布式事务和所述二分布式事务中的每一个分布式事务的单独的更改集合ID;
以并行速率将来自所述第一分布式事务和所述第二分布式事务的数据写入到所述分布式数据库系统中的所述多个碎片中的一个或多个碎片;以及
在确定来自所述第一分布式事务和所述第二分布式事务的所述数据已经被成功写入所述一个或多个碎片中的每一个碎片时,将所述可见更改集合ID边界推进到新的可见更改集合ID边界,所述新的可见更改集合ID边界包括针对所述第一分布式事务和所述二分布式事务中的每一个分布式事务的所述单独的更改集合ID,使得由所述多个碎片存储的、包括来自所述第一分布式事务和所述第二分布式事务的所述数据的数据的新的版本是可访问的。
10.根据权利要求9所述的方法,其中所述第一分布式事务和所述第二分布式事务包括用于地图应用的地理数据项,所述地图应用由所述分布式数据库系统服务。
11.根据权利要求9所述的方法,其中所述第一分布式事务的所述更改集合ID递增地大于所述可见更改集合ID边界。
12.根据权利要求11所述的方法,其中所述第二分布式事务的所述更改集合ID递增地大于所述第一分布式事务的所述更改集合ID。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680057996.7/1.html,转载请声明来源钻瓜专利网。