[发明专利]一种针对分布式查询执行的性能数据收集方法在审
申请号: | 201710946082.2 | 申请日: | 2017-10-12 |
公开(公告)号: | CN107885780A | 公开(公告)日: | 2018-04-06 |
发明(设计)人: | 孙旭 | 申请(专利权)人: | 北京人大金仓信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京纽乐康知识产权代理事务所(普通合伙)11210 | 代理人: | 秦月贞 |
地址: | 100083 北京市朝阳区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 分布式 查询 执行 性能 数据 收集 方法 | ||
技术领域
本发明涉及数据库技术领域,具体来说,涉及一种针对分布式查询执行的性能数据收集方法。
背景技术
在基于分布式的集群DBMS系统中,数据库管理节点和计算节点分布在多台物理机器,实际应用的数据特点不同,计算节点的数据分配可能会出现不均匀,再加上每台物理机器实际执行的硬件资源的不同,每个计算节点的实际执行情况会有很大不同。因此需要收集分布式集群 DBMS 系统中查询执行的性能,根据收集结果判断哪些节点执行出现瓶颈,并对查询语句进行调优。
现有技术中,通常将查询运行性能状态收集从原来的单机行为转换为集群行为。单机数据库系统中,查询执行器会记录每个计划算子执行的状态信息,包括:
1)BUFFERS:用来显示实际执行时,缓冲区的使用情况;
2)COST:数据库系统的优化器做出的预估执行时间代价;
3)TUPLES:实际执行时,计划算子返回的元组条数;
4)节点特殊参数:排序方法及内外存使用情况。
SQL 语句 EXPLAIN ANALYZE 会根据查询依次展示计划算子的运行性能信息。
分布式的集群DBMS系统的每个计算节点类似于一个单机数据库实例。执行 EXPLAIN ANALYZE 时,计算节点也可以收集每个计划算子的状态信息,但管理节点并没有收集每个计算节点的信息。因此,EXPLAIN ANALYZE 无法展示集群行为的查询运行状态信息。
针对相关技术中的问题,目前尚未提出有效的解决方案。
本发明中可能会涉及的一些关键术语如下:
SQL处理服务进程:在数据库系统中处理具体的SQL业务的进程,在本文中简称服务进程,或者服务器进程。
事务管理节点:处理和管理事务请求,主要工作包含:事务号申请,快照申请,记录事务提交等。
管理节点:分布式数据库系统中,接受客户端连接,并解释SQL,返回结果集。在本发明中,此节点会收集计算节点实际执行的性能数据。
计算节点:存储和进行SQL计算的节点。在本发明中,此节点会向管理节点发送查询实际执行的性能相关数据。
计划算子:优化器根据 SQL 语句做出在数据库内部实际执行的查询计划,查询计划中的每个步骤为计划算子,如扫描节点、排序节点等。
发明内容
针对相关技术中的上述技术问题,本发明提出一种针对分布式查询执行的性能数据收集方法,能够弥补现有系统的缺陷,更易于用户进行 SQL 调优。
为实现上述技术目的,本发明的技术方案是这样实现的:
一种针对分布式查询执行的性能数据收集方法,包括以下步骤:
S1 管理节点优化器生成查询计划,并下发到计算节点上运行;
S2 计算节点根据收到的查询计划依次执行,并收集运行状态信息,包括BUFFERS、COST、TUPLES及特殊计划算子执行参数;
S3 计算节点把收集的查询运行状态信息发送给管理节点;
S4 管理节点收集到计算节点发送的运行状态信息,整理后展示给用户。
进一步的,计算节点收集本地查询执行性能数据具体包括:
S21 按照查询计划执行查询;
S22 每个计划算子开始执行前记录当前状态,包括开始时间和缓冲区数;
S23计划算子执行结束后,计算该计划算子状态,包括结束时间和缓冲区数;
S24 计划算子执行完成后,把执行状态信息发送给管理节点。
作为优选,S4中管理节点收集系统中所有计算节点的运行态性能信息,按照计划算子实际执行时间和处理元组条数排序,使分布式集群 DBMS 系统可以收集和展示查询执行性能信息。
进一步的,管理节点收集计算节点查询执行性能数据具体包括:
S41 计算节点收集查询执行性能数据;
S42 根据查询计划,计算节点顺序发送每个计划算子的性能数据;
S43 管理节点收集所有的计算节点发来的数据,查询计划中每个计划算子数据放在同一个链表中;
S44 展示用户执行数据时,会遍历计算算子的链表,按照执行时间和返回条数时间排序,显示出查询时间最长和最短,及返回数据条数最长和最短的计算节点执行性能数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京人大金仓信息技术股份有限公司,未经北京人大金仓信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710946082.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种自动洗车装置顶架
- 下一篇:一种自动洗车装置支撑架