人大金仓学习之二_ksh和kddm的学习

人大,学习,之二,ksh,kddm · 浏览次数 : 32

小编点评

## ksh 和 kddm 学习摘要 **ksh** * ksh 配置文件修改:`shared_preload_libraries = 'sys_kwr,sys_ksh,sys_stat_statements,liboracle_parser'` * ksh 扩展:`CREATE EXTENSION sys_kwr;` * ksh 数据可查看: * `SELECT * FROM perf.session_history` * `SELECT * FROM perf.ksh_history` * `SELECT * FROM perf.ksh_report({start_ts}, {duration}, {slot_width}, {format})` **kddm** * kddm 配置文件修改:`CREATE EXTENSION sys_kwr;` * kddm 数据可查看: * `SELECT * FROM perf.kddm_report(1,2)` * `SELECT * FROM perf.kddm_report_to_file(1, 2, 'e:\\zhaobsh_kddm.txt')` * `SELECT * FROM perf.kddm_guc_advisor()` * kddm 使用之二可保存成 txt 文件: * `SELECT * FROM perf.kddm_report_to_file(1, 2, 'e:\\zhaobsh_kddm.txt')` **总结** * ksh 是用于收集和分析性能监控数据的功能工具。 * kddm 是 ksh 的扩展,可以用于保存 kddm 报告成 txt 文件。 * kddm 可以用于保存 kddm 报告成 txt 文件。

正文

人大金仓学习之二_ksh和kddm的学习


摘要

承接上一篇文章
主要是这里总结一下ksh相关的文档. 

这里学习了很多文档:
https://help.kingbase.com.cn/v8/perfor/performance-optimization/performance-optimization-6.html#sys-kddm
https://help.kingbase.com.cn/v8/perfor/sql-optimization/index.html

说明

安装和还是用不在阐述
快速学习一下ksh相关的内容等. 
注意上一篇仅是kwr,这边会完整一些. 

配置文件修改

# 新增获取修改为: 
shared_preload_libraries = 'sys_kwr,sys_ksh,sys_stat_statements,liboracle_parser'

# 性能计数器相关为:
track_activities = on
track_sql = on
track_instance = on
track_wait_timing = on
track_counts = on
track_io_timing = on
track_functions = 'all'
sys_stat_statements.track = 'top'
sys_stat_statements.track_parse = on
sys_stat_statements.track_plan = on
sys_stat_statements.max = 10000
sys_kwr.ringbuf_size = 200000
sys_kwr.enable = on
sys_kwr.history_days = 14
sys_kwr.interval = 30

sys_kwr.collect_ksh = on 

ksh的相关使用

# 注意如果没有需要创建extension
与 kwr的命令类似: CREATE  EXTENSION sys_kwr;
需要创建ksh的扩展. 
create  extension sys_ksh;
# 内存内的数据可以如此查看
SELECT * FROM perf.session_history;
# 数据库的历史视图
SELECT * FROM perf.ksh_history;
# 生成报告
SELECT * FROM perf.ksh_report({start_ts}, {duration}, {slot_width}, {format});

start_ts: 报告开始时间,默认:当前时间-15分钟
duration: 报告时长,默认:15分钟,最大不超过60
slot_width: 报告最小区间,输入0时系统自动计算合适的宽度,默认:0
format: 报告生成格式,可选择 ’html’和’text’两种格式,默认 TEXT 格式

select * from perf.ksh_report('2023-07-01 09:00:00',15,0,'text');

# 生成报告到文件
select * from perf.ksh_report_to_file('2023-07-01 09:00:00',15,0,'E:\zhaobsh_ksh.html','html');

# 根据kwr的快照生成报告
select * from perf.ksh_report_to_file_by_snapshots(1,2,'e:\zhaobsh_kwr_toksh.html','html');

很多学习文档其实是在:
https://help.kingbase.com.cn/v8.6.7.12/development/sql-plsql/ref-extended-plug-in/sys_stat_statements.html
中. 

kddm的使用

Study from :
https://help.kingbase.com.cn/v8/perfor/performance-optimization/performance-optimization-6.html#sys-kddm

# 如果不存在则创建, 需要修改配置文件如上一节
CREATE EXTENSION sys_kwr;
SELECT * FROM perf.create_snapshot();
create table t1 (nametest varchar(30));
INSERT INTO t1 SELECT generate_series(1, 1000000);
SELECT * FROM perf.create_snapshot();
SELECT * FROM perf.kddm_report(1,2);

可以查看一个文本样式的 kddm 报告. 

kddm的使用之二

# 可以保存成 txt文件进行查看
SELECT * FROM perf.kddm_report_to_file(1, 2, 'e:\zhaobsh_kddm.txt');

# 注意当参数如此时 可以进行更加详细的结果
sys_stat_statements.track = 'all'

# 可以使用  如下语句获取参数优化使用说明
SELECT * FROM perf.kddm_guc_advisor();

kwrdiff 的使用

select * from perf.kwr_diff_report({snap_1}, {snap_2}, {snap_3}, {snap_4}) 
可以在 data/sys_log 下面生成一个结果文件
文件名字为: kwr_diff_1_2_3_4_20220531_140633.html,即前缀kwr_diff_4个快照ID_年月日_时分秒.html。

如果保存文件为:
perf.kwr_diff_report_to_file({snap_1}, {snap_2}, {snap_3}, {snap_4}, {file_path}) 

谢谢关注我的公众号一起学习进步

image

与人大金仓学习之二_ksh和kddm的学习相似的内容:

人大金仓学习之二_ksh和kddm的学习

# 人大金仓学习之二_ksh和kddm的学习 ## 摘要 ``` 承接上一篇文章 主要是这里总结一下ksh相关的文档. 这里学习了很多文档: https://help.kingbase.com.cn/v8/perfor/performance-optimization/performance-opt

人大金仓学习之三-表空间与跨磁盘存储和分区表

# 人大金仓学习之三-表空间与跨磁盘存储和分区表 ## 背景 ``` 最近在用人大金仓的数据库. 前期学习了 kwr和ksh等工具. 今天想验证一下性能相关的情况. 因为机器正好有多个磁盘的分区. 想着能够将所有的硬盘都用上. 提高性能, 感觉总体还不错, 所以想总结一下. 注意这里只考虑 OLTP

人大金仓学习之一_kwr的简单学习

# 人大金仓学习之一_kwr的简单学习 ## 摘要 ``` 周末在家想着学习一下数据库相关的内容. 网上找了不少资料, 想着直接在本地机器上面进行一下安装与验证 理论上linux上面应该更加简单. windows 上面可能不如linux方便 主要是记录一下使用和注意事项. ``` ## ISO下载

人大金仓学习之四-kmonitor

# 人大金仓学习之四-kmonitor ## 背景 ``` kmonitor 其实时一个很好的工具和思路 开元的软件封装一下, 减轻技术复杂度,提高部署效率 并且能够更加快速的定位解决问题. 能够极大的提升客户体验. 并且界面比较好看, 比kwr 看起来高大上多了. 不仅可以解决部分实际问题, 也可

Jmeter学习之五_跟踪被测试服务器的performance

# Jmeter学习之五_跟踪被测试服务器的performance ## 背景 ``` 这几天简单学习了一些基本的测试过程. 可以实现一些简单基本的功能了. 今天晚上继续进行了jmeter的一些学习. 想着可以在测试人大金仓的同时可以查看一下本地的机器性能. ``` ## 用到的工具以及资料 ```

Jmeter学习之四_kingbaseV8R6数据库的简单验证

# Jmeter学习之四_kingbaseV8R6数据库的简单验证 ## 背景 ``` 周一没去报道, 因为我忘记体检了... 继续在家进行学习提高自己. jmeter周末时开始看的. 今天想着继续研究一下对数据库的处理 突然发现人大金仓的官方csdn有一个文档, 所以想着偷师,并且总结学习一下.

人大金仓备份恢复的简单学习

人大金仓备份恢复的简单学习 背景 最近公司里要适配人大金仓 想着最快的办法是将自己的数据库备份恢复到现场 发现备份很简单. 理论上恢复应该也类似. 想着能够模仿PG数据库的模式进行相关的操作. 备份操作 cd /opt/Kingbase/ES/V8/Server/bin/ ./sys_dump -h

[转帖]人大金仓数据库分区表

分区表 声明式创建分区 按列创建分区(PARTITION BY LIST) 将学员表student按所在城市使用partition by list创建分区 创建分区表(基表) 创建格式 create table 表名(字段名 数据类型)PARTITION BY LIST(要分区的字段名) 创建子分区

[转帖]人大金仓数据库的备份与还原

人大金仓数据库的备份与还原 文章目录 人大金仓数据库的备份与还原前言备份sys_dump 命令 还原ksql 命令sys_restore 一. 从人大金仓数据库备份还原到人大金仓数据库二 从postgresql数据库备份还原到人大金仓数据库 后记 前言 本文记录一次使用人大金仓数据库(Kingbas

人大金仓数据库连接异常简单分析查看的方法

# 人大金仓数据库连接异常简单分析查看的方法 ## 背景 ``` 这边一个测试环境,人大金仓4000的连接池 最近出现多次 连接池用光的问题. 想着简单分析一下. 给研发同事进行问题定位. 这里简单记录一下 ``` ## 问题流程 ``` 研发反馈数据库无法连接. 我这边之前部署了一套 kmonit