【技术实现步骤摘要】
【国外来华专利技术】查询处理下推中的架构和数据修改并发
技术介绍
[0001]典型的分布式数据库系统在多个分布式组件之间划分存储和计算工作负载。这样的系统可以包括例如一个或多个计算节点/服务器、页面服务器和存储组件。这样的系统在计算与存储之间划分系统功能,从而计算节点处理所有传入用户查询和查询处理活动,而页面服务器耦合到存储组件,以提供横向扩展的存储引擎,其中每个页面服务器负责数据库页面的子集。在这样的配置中,页面服务器仅限于为计算节点提供页面并且基于正在进行的事务活动更新相应的页面。
[0002]这样的体系结构支持扩展到100+太字节大小的数据库、快速数据库恢复、近乎即时的备份,以及快速向上和向下扩展的能力。上述配置为需要高事务吞吐量同时还支持实时分析的在线事务处理和/或混合分析处理工作负载提供了灵活性、可扩展性和性能。
[0003]然而,此类系统可能无法证明对于在非常大的数据集上扫描密集型的纯分析工作负载是最优的,因为所有查询处理都是在(多个)计算节点上执行的,这需要将大量数据从页面服务器移动到计算节点进行处理。
技术实现思路
[00 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种分布式数据库系统的第一页面服务器中的方法,所述分布式数据库系统还包括计算节点,所述第一页面服务器被配置为存储数据库的数据页面,所述页面包括数据对象,为这些数据对象维护这些对象的多个版本,并且其中每个版本对应于与版本事务标识符和版本提交时间戳相关联的版本事务,所述方法包括:从所述计算节点接收查询和对应于所述查询的事务上下文;确定所述第一页面服务器上存储的哪些数据对象满足查所述询;针对每个这样确定的数据对象确定相应确定的数据对象的哪个版本应当包括在第一查询子结果中,从而过滤掉不应当被包括的版本,所述确定基于所述事务上下文;在所述第一查询子结果中包括每个确定版本的副本;以及将所述第一查询子结果返回到所述计算节点。2.根据权利要求1所述的方法,其中所述事务上下文由所述计算节点响应于接收到所述查询而被生成,所述事务上下文包括:提交历史表和中止事务图中的每个的快照,其中所述提交历史表包括先前提交到所述数据库的一个或多个事务中的每个事务的事务标识符和事务提交时间戳,并且其中所述中止事务图包括先前中止并且未提交到所述数据库的一个或多个事务中的每个事务的事务标识符;与所述快照被拍摄的所述时间相对应的快照时间戳;以及最大有用事务标识符。3.根据权利要求2所述的方法,其中基于所述事务上下文来确定所述相应确定的数据对象的哪个版本应当被包括在所述第一查询子结果中包括,针对所述相应确定的数据对象的每个版本:基于所述提交历史表,确定对应于相应版本的所述版本事务的所述版本提交时间戳;以及确定所述相应确定的数据对象的所述相应版本仅在以下情况下应当被包括在结果集中:与所述相应版本相对应的所述版本事务标识符不被包括在所述中止事务图中;与所述相应版本相对应的所述版本事务标识符小于所述最大可用事务标识符;以及所述快照时间戳大于所述版本提交时间戳。4.根据权利要求1所述的方法,还包括:在所述计算节点处接收所述第一查询子结果;以及所述计算节点基于所述第一查询子结果来提供查询结果,而不对所述第一查询子结果进行进一步过滤。5.根据权利要求1所述的方法,其中所述分布式数据库系统还包括第二页面服务器,所述方法还包括:在所述第二页面服务器处接收所述查询和事务上下文,所述第二页面服务器被配置为执行所述查询以生成第二查询子
‑
结果;在所述计算节点处接收所述第二查询子结果;以及所述计算节点然后基于所述第一查询子结果和所述第二查询子结果的组合来提供查询结果。
6.一种分布式数据库系统,包括存储页面的分布式数据库,所述页面包括关系表,至少一个关系表能够维护相应的所述表中至少一行的多个版本,每个版本对应于与版本事务事务标识符和版本提交时间戳相关联的版本事务,所述分布式数据库系统包括:第一页面服务器,被配置为存储所述分布式数据库的所述页面的子集;以及主要计算节点,维护表架构集,所述表架构集的子集对应于所述页面的子集的所述关系表,所述主要计算节点被配置为:接收第一查询;收集针对由所述第一查询引用的每个表的第一查询表架构;针对所收集的每个第一查询表架构,将相应的所述架构的标识符修改为全局唯一的,从而生成第一修改查询表架构;生成对应于所述第一查询的事务上下文;以及将所述第一修改查询表架构、所述事务上下文和所述第一查询下推至所述第一页面服务器;所述第一页面服务器还被配置为:从所述主要计算节点接收所述第一修改查询表架构、所述事务上下文和所述第一查询;使用所述第一修改查询表架构来执行接收的所述第一查询以生成第一查询结果;以及将所述第一查询结果返回给所述主要计算节点。7.根据权利要求6所述的分布式数据库系统,其中所述相应架构的标识符包括以下一项或多项:表名;表标识符;对象标识符;以及行集标识符;并且其中所述事务上下文包括:提交历史表和中止事务图中的每个的快照,其中所述提交历史表包括先前提交到所述数据库的一个或多个事务中的每个事务的事务标识符和事务提交时间戳,并且其中所述中止事务包括针对先前中止并且未提交到所述数据库的一个或多个事务中的每个事务的事务标识符;与所述快照被拍摄的所述时间相对应的快照时间戳;以及最大有用事务标识符。8.根据权利要求6所述的分布式数据库系统,其中所述第一页面服务器还被配置为通过以下方式执行接收的所述第一查询:标识满足所述第一查询的行,并且针对维护了多个版本的每个这样的行,过滤掉不应在所述第一查询结果中被返回的相应的所述行的所述版本,所述过滤...
【专利技术属性】
技术研发人员:C,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。