【技术实现步骤摘要】
【国外来华专利技术】具有数据库引擎和独立分布式存储服务的数据库系统
技术介绍
在一些情况下,软件堆栈的各种部件的分布可提供(或支持)容错性(例如,通过复制)、较高耐久性、和较不昂贵的解决方案(例如,通过使用许多较小的、较不昂贵的部件,而不是较少大型的、昂贵的部件)。然而,在历史上数据库已经是至少服从分布的软件堆栈的部件。例如,可能难以分布数据库同时仍确保期望它们提供的所谓ACID特性(例如,原子性、一致性、隔离性、和耐久性)。尽管大部分现存的相关数据库未被分布,使用两个常用模型中的一个来“向外扩展”(与通过仅采用较大单片系统的“向上扩展”相反)一些现存的数据库:“无共享”模型和“共享磁盘”模型。一般来说,在“无共享”模型中,接收的查询分解成数据库碎片(其中的每一个包括查询部件),这些碎片被发送至不同的计算机节点用于查询处理,并且在它们返回前收集和集合结果。一般来说,在“共享磁盘”模型中,群集中的每个计算机节点访问相同的基础数据。在采用这个模型的系统中,必须非常小心以便管理高速缓存一致性。在这两个模型中,在多个节点(包括单机数据库实例的所有功能性)上复制大型、单片数据库,并且添加“胶合”逻辑以便将它们缝合在一起。例如,在“无共享”模型中,胶合逻辑可提供分配器的功能性,所述分配器使查询细分、将它们发送至多个计算机节点、以及随后组合结果。在“共享磁盘”模型中,胶合逻辑可用来将多个节点的高速缓存融合在一起(例如,以便管理在高速缓存层处的一致性)。部署这些“无共享”和“共享磁盘”数据库系统可能花费较大,并且维持起来较复杂,以及它们可能过度服务许多数据库使用情况。在传统数据库系统中,由数据库系 ...
【技术保护点】
一种计算系统,其包括:多个计算节点,其中的每一个包括至少一个处理器和存储器;其中所述多个计算节点中的一个或多个被配置来实施数据库服务,并且其中所述数据库服务包括数据库引擎头节点;其中所述多个计算节点中的两个或更多的其他节点被配置来实施分布式存储服务的服务器节点,所述分布式存储服务存储数据库表格的部分作为在一个或多个存储装置上的各自数据页面;其中所述数据库引擎头节点被配置来:从所述数据库服务的客户端接收指向数据库表格中的给定数据记录的写入请求,其中所述写入请求指定将对所述给定数据记录进行的修改;产生代表将对所述给定数据记录进行的所述修改的重做日志记录;将所述重做日志记录,但非包括所述给定数据记录的数据页面,发送至存储包括所述给定数据记录的版本的所述数据页面的所述分布式存储服务的特定服务器节点;其中所述分布式存储服务的所述特定服务器节点被配置来:从所述数据库引擎头节点接收所述重做日志记录;将所述重做日志记录写入至一个或多个存储装置;将所述重做日志记录被写入的确认返回至所述数据库引擎头节点;以及在返回所述确认之后:产生包括所述给定数据记录的当前版本的所述数据页面,其中为产生所述当前版本的所述 ...
【技术特征摘要】
【国外来华专利技术】2013.03.15 US 61/794,572;2014.03.07 US 14/201,4931.一种计算系统,包括:多个计算节点,其中的每一个包括至少一个处理器和存储器;其中所述多个计算节点中的一个或多个被配置来实施数据库服务,并且其中所述数据库服务包括数据库引擎头节点;其中所述多个计算节点中的两个或更多的其他节点被配置来实施分布式存储服务的服务器节点,所述分布式存储服务存储数据库表格的部分作为在一个或多个存储装置上的各自数据页面;其中所述数据库引擎头节点被配置来:从所述数据库服务的客户端接收指向数据库表格中的给定数据记录的写入请求,其中所述写入请求指定将对所述给定数据记录进行的修改;产生代表将对所述给定数据记录进行的所述修改的重做日志记录;将所述重做日志记录,但非包括所述给定数据记录的数据页面,发送至存储包括所述给定数据记录的版本的所述数据页面的所述分布式存储服务的特定服务器节点;其中所述分布式存储服务的所述特定服务器节点被配置来:从所述数据库引擎头节点接收所述重做日志记录;将所述重做日志记录写入至一个或多个存储装置;将所述重做日志记录被写入的确认返回至所述数据库引擎头节点;以及在返回所述确认之后:产生包括所述给定数据记录的当前版本的所述数据页面,其中为产生所述当前版本的所述数据页面,所述分布式存储服务的所述特定服务器节点被配置来将所接收的所述重做日志记录和代表对所述数据页面的修改的一个或多个先前接收的重做日志记录应用至先前存储版本的所述数据页面;以及将所述当前版本的所述数据页面写入至一个或多个存储装置。2.如权利要求1所述的计算系统,其中所述数据库引擎头节点被进一步配置来:从数据库客户端接收对读取包括所述给定数据记录的所述数据页面的请求;以及响应于接收对读取所述数据页面的所述请求,将用于当前版本的所述数据页面的请求发送至所述分布式存储服务的所述特定服务器节点。3.如权利要求1所述的计算系统,其中所述数据库引擎头节点包括用于所述分布式存储系统的客户端侧驱动器;以及其中为将所述重做日志记录发送至所述分布式存储系统的所述特定服务器节点,所述客户端侧驱动器被配置来:确定存储包括所述给定数据记录的版本的所述数据页面的所述分布式存储服务的所述特定服务器节点;以及将所述重做日志记录发送至代表所述数据库服务的所述分布式存储系统的所述特定服务器节点。4.一种计算系统,包括:一个或多个计算节点,其中的每一个包括至少一个处理器和存储器,其中所述一个或多个计算节点被配置来共同实施数据库服务,并且其中所述数据库服务包括数据库引擎头节点和针对分布式存储系统的接口;其中所述数据库引擎头节点被配置来:从所述数据库服务的客户端接收指向数据库表格中的给定数据记录的写入请求,其中所述写入请求指定将对所述给定数据记录进行的修改;产生代表将对所述给定数据记录进行的所述修改的重做日志记录;将所述重做日志记录,但非包括所述给定数据记录的数据页面,通过所述接口发送至存储包括所述给定数据记录的版本的所述数据页面的所述分布式存储服务的特定服务器节点;通过所述接口接收所述重做日志记录已经被写入至所述分布式存储服务的确认;以及将指示所述请求的写入已被执行的响应返回至所述数据库客户端。5.如权利要求4所述的计算系统,其中所述数据库引擎头节点被进一步配置来:从所述数据库服务的客户端接收对读取包括所述给定数据记录的所述数据页面的请求;以及响应于接收对读取所述数据页面的所述请求:通过所述接口将用于当前版本的所述数据页面的请求发送至所述分布式存储服务的所述特定服务器节点;通过所述接口接收所述当前版本的所述数据页面;以及将所述当前版本的所述数据页面返回至从其接收对读取所述数据页面的所述...
【专利技术属性】
技术研发人员:A·W·古普塔,N·法罕,S·J·麦凯尔维,L·D·伯彻尔,C·R·纽科姆,P·J·马德哈瓦拉普,B·托布勒,J·M·科里,
申请(专利权)人:亚马逊科技公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。