事务定序的制作方法_6

文档序号:9635167阅读:来源:国知局
的第一节点被配置来:
[0098] 接收指向数据库表中特定数据页的特定数据记录的写请求,其中所述写请求指定 要对所述特定数据记录做出的修改,并为所述写请求指定落实时间,其中所述落实时间指 示要落实所述修改的时间;以及
[0099] 其中所述多个计算节点的第二节点被配置来:
[0100] 接收在所述数据库表中读取所述特定数据页的读请求,并为所述读请求指定读一 致性点时间,其中所述读一致性点时间指示读的一致性点,确定所述读一致性点时间在所 述落实时间的精确度窗口内,并促使所述读请求的执行在所述写请求指定的所述修改被落 实之后执行,而无论所述读一致性点时间是否指示早于所述落实时间的时点。
[0101] 2.如条款1所述的系统,其中所述多个计算节点的所述第二节点还被配置来:
[0102] 确定与所述写请求关联的写开锁时间在与所述读请求关联的读锁存时间的精确 度窗口内,
[0103] 其中所述促使所述读请求的执行在所述写请求指定的所述修改被落实之后执行 包括:
[0104] 将所述读锁存时间移到较晚的时点,并且
[0105]自所述读一致性时点起重试所述读请求。
[0106] 3.如条款2所述的系统,其中所述促使所述读请求的执行在所述写请求指定的所 述修改被落实之后执行还包括:
[0107] 确定所移动的读锁存时间不在所述写开锁时间的所述精确度窗口内。
[0108] 4.如条款1所述的系统,其中所述第一和第二节点中的每一个被配置来维护相应 的时钟,所述相应的时钟被保持在彼此所述精确度窗口内,其中所述落实时间由所述第一 节点确定并且其中所述读一致性时点由所述第二节点确定。
[0109] 5. -种方法,其包括:
[0110] 由多个计算节点执行:
[0111] 从一个或多个客户端接收执行读所存储的记录的读请求以及执行对所述记录更 新的更新请求;
[0112] 将第一和第二时间指示分别与所述读和所述更新关联;以及
[0113] 至少部分地基于所述第一时间指示在所述第二时间指示的阈值内的确定来检测 潜在的读异常。
[0114] 6.如条款5所述的方法,其还包括:
[0115] 响应所述检测到所述潜在的读异常,促使所述读请求指定的所述读在所述更新请 求指定的所述更新之后执行,而无论所述第一时间指示是否指示比所述第二时间指示早的 时点。
[0116] 7.如条款5所述的方法,其还包括:
[0117]自所述第一时间指示起重试所述读,以使与重试所述读关联的重试时间指示指示 比所述第一时间指示晚的时间;以及
[0118] 确定对于所重试的读没有发生读异常。
[0119] 8.如条款5所述的方法,其中所述第二时间指示指示所述更新落实的时间。
[0120] 9.如条款5所述的方法,其中所述检测所述潜在的读异常还基于第三时间指示, 其中所述第三时间指示也与所述更新请求关联。
[0121] 10.如条款9所述的方法,其中所述检测所述潜在的读异常还基于所述第三时间 指示在第四时间指示的阈值内的确定,其中所述第四时间指示也与所述读请求关联。
[0122] 11.如条款5所述的方法,其中所述读请求被所述多个节点中的第一节点接收到, 其中所述更新请求被所述多个节点中的第二不同节点接收到,其中所述第一和第二节点每 一个均维护相应时钟,其中与所述读关联的所述第一时间指示由所述第一节点的所述相应 时钟确定,并且其中与所述更新关联的所述第二时间指示由所述第二节点的所述相应时钟 确定。
[0123] 12.如条款5所述的方法,其中所述潜在的读异常是潜在的不可重复读。
[0124] 13.如条款5所述的方法,其中所述潜在的读异常是潜在的读偏斜。
[0125] 14.如条款5所述的方法,其还包括:
[0126] 至少部分地基于重试的频度修改所述阈值。
[0127] 15.如条款5所述的方法,其中对包括读所述记录以及读另一个记录或第二次读 所述记录的读请求执行所述检测。
[0128] 16. -种存储程序指令的非暂态计算机可读存储介质,其中所述程序指令是计算 机可执行的以实施数据库服务的数据库节点,其中所述数据库节点被配置来:
[0129] 将第一时间指示与读请求指定的读关联,其中所述读请求指定读所述数据库服务 存储的记录;
[0130] 确定所述第一时间指示在第二时间指示的阈值内,其中所述第二时间指示与事务 请求指定的事务关联,其中所述事务请求被不同的数据库节点接收到,其中所述事务请求 指定要修改所述记录的事务;以及
[0131] 促使所述读请求的执行在所述事务请求指定的所述修改被落实之后执行,而无论 所述第一时间指示是否指示比所述第二时间指示早的时点。
[0132] 17.如条款16所述的非暂态计算机可读存储介质,其中所述数据库节点还被配置 来:
[0133] 将第三时间指示与所述读关联;
[0134] 确定所述第三时间指示在第四时间指示的阈值内,其中所述第四时间指示与所述 事务关联;以及
[0135] 其中所述促使所述读请求的执行在所述事务请求指定的所述修改被落实之后执 行包括:
[0136] 以更晚的时点替代所述第三时间指示,以及
[0137]自所述第一时间指示起重试所述读请求。
[0138] 18.如条款17所述的非暂态计算机可读存储介质,其中所述数据库节点还被配置 来:
[0139] 确定所述更晚的时点不在所述第四时间指示的阈值内。
[0140] 19.如条款16所述的非暂态计算机可读存储介质,其中所述第一和第二时间指示 是单调增加的时间指示符。
[0141] 20.如条款16所述的非暂态计算机可读存储介质,其中所述读请求是包括所述记 录的多次记录检索请求。
[0142] 在各种实施方案中,可通过使用包括与所述Web服务请求关联的参数和数据的消 息来请求或调用Web服务。可以根据如可扩充标记语言(XML)的特定标记语言将此类消息 格式化和/或可以使用如简单对象访问协议(SOAP)的协议将其封装。为了执行Web服务 请求,Web服务客户端可以使用如超文本传输协议(HTTP)的基于因特网的应用层传输协议 来组装包括该请求的消息,并将该消息送达到与该Web服务对应的可寻址端点(例如,统一 资源定位器(URL))。
[0143] 在一些实施方案中,可以使用表示状态传输("RESTful")技术而非基于消息的技 术来实施Web服务。例如,可以通过如PUT、GET或DELETE的HTTP方法内包括的参数而非 SOAP消息内封装的参数来调用根据RESTful技术实施的Web服务。
[0144] 如在图中所示和本文所描述的各种方法表示方法的示例性实施方案。所述方法可 以在软件、硬件或其组合中实施。任何方法的顺序可以改变,并且各个元素可以被添加、重 新排序、组合、省略、修改等。
[0145] 虽然上文的实施方案已相当详细地予以描述,但是可以实施大量变体和修改,正 如本领域技术人员充分地了解上文公开内容后将显见到的。所附权利要求旨在解释为涵盖 所有此类修改和更改,并且相应地,上文描述应视为说明性的而非限制性的。
【主权项】
1. 一种系统,其包括: 多个计算节点,所述多个计算节点中的每一个包括至少一个处理器和存储器,其中所 述多个计算节点被配置来统一地实施数据库服务; 其中所述多个计算节点的第一节点被配置来: 接收指向数据库表中特定数据页的特定数据记录的写请求,其中所述写请求指定要对 所述特定数据记录做出的修改,以及 对所述写请求指定落实时间,其中所述落实时间指示要落实所述修改的时间;以及 其中所述多个计算节点的第二节点被配置来: 接收在所述数据库表中读取所述特定数据页的读请求, 为所述读请求指定读一致性点时间,其中所述读一致性点时间指示读的一致性点, 确定所读一致性点时间在所述落实时间的精确度窗口内,以及 促使所述读请求的执行在所述写请求指定的所述修改被落实之后执行,而无论所述读 一致性点时间是否指示比所述落实时间早的时点。2. 如权利要求1所述的系统,其中所述多个计算节点的所述第二节点还被配置来: 确定与所述写请求关联的写解锁时间在与所述读请求关联的读锁存时间的精确度窗 口内, 其中所述促使所述读请求的执行在所述写请求指定的所述修改被落实之后执行包 括: 将所述读锁存时间移到更晚的时点,以及 自所述读一致性时点起重试所述读请求。3. 如权利要求2所述的系统,其中所述促使所述读请求的执行在所述写请求指定的所 述修改被落实之后执行还包括: 确定所移动的读锁存时间不在所述写开锁时间的所述精确度窗口内。4. 如权利要求1所述的系统,其中所述第一和第二节点中的每一个被配置来维护相应 的时钟,所述相应的时钟被保持在彼此所述精确度窗口内,其中所述落实时间由所述第一 节点确定并且其中所述读一致性时点由所述第二节点确定。5. -种方法,其包括: 由多个计算节点执行: 从一个或多个客户端接收执行读所存储的记录的读请求以及执行对所述记录更新的 更新请求; 将第一和第二时间指示分别与所述读和所述更新关联;以及 至少部分地基于所述第一时间指示在所述第二时间指示的阈值内的确定来检测潜在 的读异常。6. 如权利要求5所述的方法,其还包括: 响应所述检测到所述潜在的读异常,促使所述读请求指定的所述读在所述更新请求 指定的所述更新之后执行,而无论所述第一时间指示是否指示比所述第二时间指示早的时 点。7. 如权利要求5所述的方法,其还包括: 自所述第一时间指示起重试所述读,以使与重试所述读关联的重试时间指示指示比所 述第一时间指示晚的时间;以及 确定对于所重试的读没有发生读异常。8. 如权利要求5所述的方法,其中所述第二时间指示指示所述更新落实的时间。9. 如权利要求5所述的方法,其中所述检测所述潜在的读异常还基于第三时间指示, 其中还将所述第三时间指示与所述更新请求关联。10. 如权利要求9所述的方法,其中所述检测所述潜在的读异常还基于所述第三时间 指示在第四时间指示的阈值内的确定,其中还将所述第四时间指示与所述读请求关联。11. 如权利要求5所述的方法,其中所述读请求被所述多个节点中的第一节点接收到, 其中所述更新请求被所述多个节点中的第二不同节点接收到,其中所述第一和第二节点每 一个均维护相应的时钟,其中与所述读关联的所述第一时间指示由所述第一节点的所述相 应时钟确定,并且其中与所述更新关联的所述第二时间指示由所述第二节点的所述相应时 钟确定。12. 如权利要求5所述的方法,其中所述潜在的读异常是潜在的不可重复读。13. 如权利要求5所述的方法,其还包括: 至少部分地基于重试的频度修改所述阈值。14. 如权利要求5所述的方法,其中对包括读所述记录以及读另一个记录或第二次读 所述记录的读请求执行所述检测。15. -种系统,其包括: 一个或多个处理器;以及 一个或多个存储器,所述存储器具有存储在其上的程序指令,其中所述程序指令通过 所述一个或多个处理器是计算机可执行的以实施数据库服务的数据库节点,其中所述数据 库节点被配置来: 将第一时间指示与读请求指定的读关联,其中所述读请求指定读所述数据库服务存储 的记录; 确定所述第一时间指示在第二时间指示的阈值内,其中将所述第二时间指示与事务请 求指定的事务关联,其中所述事务请求被不同的数据库节点接收到,其中所述事务请求指 定要修改所述记录的事务;以及 促使所述读请求的执行在所述事务请求指定的所述修改被落实之后执行,而无论所述 第一时间指示是否指示比所述第二时间指示早的时点。
【专利摘要】数据库服务的节点可以接收执行读该数据库服务存储的记录的读请求和对该记录执行事务的事务请求。第一时间和第二时间指示可以分别与该读和事务关联。可以至少部分地基于该第一时间指示在该第二时间指示的阈值内的确定来检测潜在的读异常(例如,不可重复读(fuzzy?read)、读偏斜(read?skew)等)。响应检测到潜在的读异常,可以在该事务请求指定的事务之后执行读,而无论第一时间指示是否指示比第二时间指示早的时点。
【IPC分类】G06F17/00
【公开号】CN105393243
【申请号】CN201480039678
【发明人】L·D·伯彻尔, P·J·马德哈瓦拉普, C·R·纽科姆, A·W·古普塔
【申请人】亚马逊科技公司
【公开日】2016年3月9日
【申请日】2014年5月13日
【公告号】CA2912392A1, EP2997490A1, US20140337393, WO2014186396A1
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1