GaussDB(DWS) 资源监控系列一:作业级别的监控(TopSQL)

网友投稿 579 2022-05-28

总体介绍

GaussDB(DWS)资源监控的作业级别监控,分为实时级别监控(实时TopSQL)与历史级别监控(历史TopSQL)。实时TopSQL可以完成对于运行中的SQL进行资源监控,其可以通过查询gs_wlm_sesssion_statistics查询得到。历史TopSQL可以对运行结束之后的SQL进行监控其可以通过查询gs_wlm_session_history得到相应的资源消耗信息。如图1所示,在设置enable_resource_track为on,resource_track_level为query的时候,当该SQL的执行代价大于设定的resource_track_cost的时候,就可以在实时TopSQL中查到相应的SQL执行信息,当该SQL执行结束之后对于其执行时间大于resource_track_duration的SQL即可以在历史TopSQL中查询到。在设置enable_resource_record为on的时候,每过三分钟会将gs_wlm_session_history中的数据落盘存到gs_wlm_session_info中。对于存入到gs_wlm_session_info中的数据可以通过设定topsql_rentention_time对其中的数据进行老化处理。

图1TopSQL功能总体关系图

GaussDB(DWS) 资源监控系列一:作业级别的监控(TopSQL)

实时TopSQL

系统提供了query级别和算子级别的资源监控实时视图用来查询实时TopSQL。资源监控实时视图记录了查询作业运行时的资源使用情况(包括内存、下盘、CPU时间和IO等)以及性能告警信息,这里相关的视图如图3.1所示。

图2实时TopSQL相关的视图

对于实时TopSQL而言,其中的资源数据的更新在这个SQL执行的过程中每10s会更新收集一次。

历史TopSQL

系统提供了query级别和算子级别的资源监控历史视图来查询历史TopSQL。资源监控历史视图记录了查询作业运行结束时的资源使用情况(包括内存、下盘、CPU时间、IO等)和运行状态信息(包括报错、终止、异常等)以及性能告警信息。但对于由于FATAL、PANIC错误导致查询异常结束时,状态信息列只显示aborted,无法记录详细的异常信息。这里需要开启参考手册开启相应的GUC参数。这里相关的视图与表如图4.1所示。

图3历史TopSQL相关的视图与表

这里以query当前CN查询为例说一下这个整体的流程,当作业执行完之后就会从实时static那个视图里存储到gs_wlm_session_history这个视图当中,默认三分钟之后数据就会转存到gs_wlm_session_info这个表中,存到数据库当中。在这里需要注意的是gs_wlm_session_history是一个视图,而gs_wlm_session_info是一个实际的表。另外在配置相关的GUC时,要注意有可能会配置的hash表大小过小导致数据存储不下的情况。

对于TopSQL能够支持记录的规格请详见对应版本手册中的描述。

数据仓库服务 GaussDB(DWS) Gauss AP EI企业智能

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【C语言—零基础第十一课】旋转大转盘之指针
下一篇:《神经网络与PyTorch实战》——1初识神经网络
相关文章