检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
语句、查询状态、排队状态、dn最小内存峰值、dn最大内存峰值、dn每秒最大io峰值、dn每秒最小io峰值和内存使用平均值等信息。 根据“dn最大内存峰值”和“内存使用平均值”查询结果,值较大的就是消耗内存较多的语句。 如果已确认所查询的占用内存高的语句需要被终止,勾选指定的查询ID后,单击“终止查询”按钮,终止查询。
内存 介绍与内存相关的参数设置。 本节涉及的参数仅在数据库服务重新启动后生效。 enable_memory_limit 参数说明:启用逻辑内存管理模块。 参数类型:POSTMASTER 取值范围:布尔型 on表示启用逻辑内存管理模块。 off表示不启用逻辑内存管理模块。 默认值:on
20 其中各字段分别为:输出顺序号、线程内分配内存上下文的顺序号、当前内存上下文的名称、父内存上下文的输出顺序号、父内存上下文的名称、内存上下文树形层次级别号、当前内存上下文使用的内存峰值、当前内存上下文及其所有子内存上下文使用的内存峰值、当前线程所在query的plannodeid。
的情况。 设置异常规则及时终止高内存语句。 防止极端场景下某些语句使用内存过多,导致其他语句由于内存分配不足而出现算子下盘执行缓慢或者申请不到内存而执行失败的情况,可创建与内存资源相关的异常规则,具体操作可参考异常规则,对超过异常规则阈值的SQL进行及时终止拦截,保持集群稳定。 分析计划,优化语句。
监控页面。 在左侧导航栏选择“工具 > SQL诊断”,进入SQL诊断页面,其中包括: 查询ID 数据库 模式名 用户名称 客户端 客户端IP地址 运行时间(ms) CPU时间(ms) 开始时间 完成时间 详情 在SQL诊断页面您可查看SQL的诊断信息。在所指定查询ID行的“详情”
内存管理函数 内存管理函数仅9.1.0及以上集群版本支持。 pg_shared_chunk_detail(contextname char(64)) 描述:查询指定共享内存下内存上下文申请的所有chunk信息。 参数contextname,表示内存上下文名称。 使用该函数需先使用
内存 介绍与内存相关的参数设置。 本节涉及的参数仅在数据库服务重新启动后生效。 enable_memory_limit 参数说明:启用逻辑内存管理模块。 参数类型:POSTMASTER 取值范围:布尔型 on表示启用逻辑内存管理模块。 off表示不启用逻辑内存管理模块。 默认值:on
执行SQL语句 执行普通SQL语句 应用程序通过执行SQL语句来操作数据库的数据(不用传递参数的语句),需要按以下步骤执行: 调用Connection的createStatement方法创建语句对象。 1 Statement stmt = con.createStatement();
20 其中各字段分别为:输出顺序号、线程内分配内存上下文的顺序号、当前内存上下文的名称、父内存上下文的输出顺序号、父内存上下文的名称、内存上下文树形层次级别号、当前内存上下文使用的内存峰值、当前内存上下文及其所有子内存上下文使用的内存峰值、当前线程所在query的plannodeid。
=或<>操作符、null值判断、or连接、参数隐式转换。 对复杂SQL语句进行拆分。 对于过于复杂并且不易通过以上方法调整性能的SQL可以考虑拆分的方法,把SQL中某一部分拆分成独立的SQL并把执行结果存入临时表,拆分常见的场景包括但不限于: 作业中多个SQL有同样的子查询,并且子查询数据量较大。 Plan
SQL诊断场景 问题现象 用户的SQL语句执行时间长,消耗资源多。 定位思路 如果用户的SQL语句在执行时存在效率问题,内核执行后给出优化建议。用户通过查询SQL语句的执行历史,检索出优化建议,进一步优化SQL语句的编写,提高集群的查询效率。 解决步骤 查看“SQL诊断”页面,选择可疑的时间段。
MySQL SQL迁移 工具支持从MySQL到GaussDB(DWS)的迁移,包括模式、DML、查询、系统函数、PL/SQL等。 在LINUX中执行MySQL迁移 在Linux中执行以下命令开始迁移。用户需指定源数据库、输入和输出文件夹路径和日志路径;应用程序语言类型是SQL。
检查当前集群业务是否占用内存过高。 在“专属集群 > 集群列表”界面找到集群,在所在行操作列单击“监控面板”进入监控界面。 在监控面板的页面中选择“监控 > 实时查询”,选择“实时查询”,单击,选择“dn最大内存峰值(mb)”,查看使用内存最多的查询信息。 图3 查看内存信息 和业务侧
检查当前集群业务是否占用内存过高。 在“专属集群 > 集群列表”界面找到集群,在所在行操作列单击“监控面板”进入监控界面。 在监控面板的页面中选择“监控 > 实时查询”,选择“实时查询”,单击,选择“dn最大内存峰值(mb)”,查看使用内存最多的查询信息。 图3 查看内存信息 和业务侧
SQL诊断 GaussDB(DWS)集群提供了SQL诊断功能,支持通过多种条件检索出符合条件的SQL查询(如慢查询),并完整展示执行计划。 SQL诊断功能使用方式: 登录GaussDB(DWS) 管理控制台。 在“专属集群 > 集群列表”页面,找到需要查看监控的集群。 在指定集群
实时TopSQL 系统提供了不同级别的资源监控实时视图用来查询实时TopSQL。资源监控实时视图记录了查询作业运行时的资源使用情况(包括内存、下盘、CPU时间等)以及性能告警信息。 实时视图具体的对外接口如下表所示: 表1 资源监控实时视图 视图级别 节点范围 查询视图 query级别/perf级别
显示为unknown,其记录的监控信息会导致不准确。 历史TopSQL能够记录的SQL语句的规格与实时TopSQL能够记录的SQL语句的规格一致。请参考实时TopSQL中能够记录的SQL语句的规格。 历史TopSQL侧重于查询性能的定位定界辅助分析,不作为审计功能使用,不记录语法分析报错类语句。
PL/SQL 本节主要介绍Oracle PL/SQL的迁移语法。迁移语法决定了关键字/功能的迁移方式。 PL/SQL是SQL和编程语言过程特性的集合。 SQL命令 GaussDB(DWS)暂不支持set define off/on、spool off,经过DSC工具转换后,在目标数据库中将相关命令注释掉。
实时TopSQL 系统提供了不同级别的资源监控实时视图用来查询实时TopSQL。资源监控实时视图记录了查询作业运行时的资源使用情况(包括内存、下盘、CPU时间等)以及性能告警信息。 实时视图具体的对外接口如下表所示: 表1 资源监控实时视图 视图级别 节点范围 查询视图 query级别/perf级别
历史TopSQL能够记录的SQL语句的规格与实时TopSQL能够记录的SQL语句的规格一致。请参考实时TopSQL中能够记录的SQL语句的规格。 历史TopSQL只有在GUC参数enable_resource_record开启时才会记录数据。 查询历史TopSQL Query以