人大金仓学习之二_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})

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

人大金仓学习之二_ksh和kddm的学习的更多相关文章

  1. 通过ODBC接口访问人大金仓数据库

      国产化软件和国产化芯片的窘境一样,一方面市场已经存在性能优越的同类软件,成本很低,但小众的国产化软件不仅需要高价买入版权,并且软件开发维护成本高:另一方面,国产软件目前普遍难用,性能不稳定,Bug ...

  2. DBeaver连接达梦|虚谷|人大金仓等国产数据库

    前言 工作中有些项目可能会接触到「达梦.虚谷.人大金仓」等国产数据库,但通常这些数据库自带的连接工具使用并不方便,所以这篇文章记录一下 DBeaver 连接国产数据库的通用模版,下文以达梦为例(其他国 ...

  3. QT 之 ODBC连接人大金仓数据库

    QT 之 使用 ODBC 驱动连接人大金仓数据库 获取数据库驱动和依赖动态库 此操作可在人大金仓官网下载与系统匹配的接口动态库,或者从架构数据库的源码中获取驱动和依赖动态库 分别为: 驱动动态库:kd ...

  4. 教你10分钟对接人大金仓EF Core 6.x

    前言 目前.NET Core中据我了解到除了官方的EF Core外,还用的比较多的ORM框架(恕我孤陋寡闻哈,可能还有别的)有FreeSql.SqlSugar(排名不分先后).FreeSql和SqlS ...

  5. 通过jmeter连接人大金仓数据库

    某项目用的人大金仓数据库,做性能测试,需要用jmeter来连接数据库处理一批数据.jmeter连接人大金仓,做个记录. 1. 概要 在"配置元件"中添加"JDBC Con ...

  6. 人大金仓KCI

    #include "bin/libkci.h" static void exit_nicely(KCIConnection *conn) { KCIConnectionDestor ...

  7. Quartz定时任务学习(二)web应用/Quartz定时任务学习(三)属性文件和jar

    web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...

  8. 轻松学习JavaScript二十七:DOM编程学习之事件模型

    在介绍事件模型之前,我们先来看什么是事件和什么是event对象. 一事件介绍 JavaScript事件是由訪问Web页面的用户引起的一系列操作,使我们有能力创建动态页面.事件是能够被 JavaScri ...

  9. Rplidar学习(二)—— SDK库文件学习

    SDK头文件介绍 1.头文件简介: rplidar.h //一般情况下开发的项目中仅需要引入该头文件即可使用 RPLIDAR SDK 的所有功能. rplidar_driver.h //定义了 SDK ...

  10. jFinal 2.2入门学习之二:使用sqlserver数据库学习搭建jfinal-demo框架(MySQL的话就不需要看这个了)

    1.去官网下载最新的jfinal_Demo(我这是JFinal-2.2) 2.解压demo源码,eclipse导入项目 3.本地创建数据库,修改信息,(注意:如果sqlserver端口号冲突,需要配置 ...

随机推荐

  1. Provider 四种消费者

    Provider.of Provider.of 方法是 Provider 库中最常用的获取共享数据的方法之一.它接收一个 BuildContext 对象和一个泛型类型参数 T,会查找 Widget 树 ...

  2. nginx 超时

    知识点小记,nginx默认1min超时返回,nginx.conf->http中添加: proxy_read_timeout 600; *600就是10分钟,理论上后台接口不应该这么搞,但实际上项 ...

  3. 神经网络基础篇:详解向量化逻辑回归(Vectorizing Logistic Regression)

    向量化逻辑回归 讨论如何实现逻辑回归的向量化计算.这样就能处理整个数据集,甚至不会用一个明确的for循环就能实现对于整个数据集梯度下降算法的优化 首先回顾一下逻辑回归的前向传播步骤.所以,如果有 \( ...

  4. 中秋国庆花式玩法,用低代码DIY假日大屏“Vlog”

    ​​本文分享自华为云社区 <[云享热点]中秋国庆花式玩法,用低代码DIY假日大屏"Vlog"(内附节日福利)>,作者:华为云社区精选. 中秋.国庆双节将至,你的八天小长 ...

  5. 海量监控数据处理如何做,看华为云SRE案例分享

    摘要:openGemini的设计和优化都是根据时序数据特点而来,在面对海量运维监控数据处理需求时,openGemini显然更加有针对性. IT运维诞生于最早的信息化时代.在信息化时代,企业的信息化系统 ...

  6. OLAP分析型应用场景中,数仓中vacuum为何对列存表无效

    摘要:对列存表执行vacuum为什么是无效的呢?其实这与列存表的存储结构以及数据写入方式有关. 本文分享自华为云社区<GaussDB(DWS)中vacuum为何对列存表无效?[这次高斯不是数学家 ...

  7. 一文读懂火山引擎A/B测试的实验类型(1)——编程实验

    一. 概述 编程实验:指的是通过代码编程进行AB实验,广泛使用于前端优化.策略优化和后端算法优化多种实验场景,包含客户端和服务端实验. 前置条件:接入客户端SDK或者服务端SDK,详见:应用接入 二. ...

  8. 火山引擎 DataTester:如何用 A/B 测试做产品增长?

    技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 随着如今越来越高的获客成本,用户拉新变得不再容易:而且由于获客成本的增高,让用户留存也变得更加重要.同时,一个产品的使 ...

  9. Java 获取当前天是一年中的第几天

    Java 获取当前天是一年中的第几天 @Test void dayofweed() throws Exception { System.out.println("2023-01-01 第 & ...

  10. Kubernetes(K8S) 安装 Metrics-Server kubectl top (metrics-server) node NotFound

    kubectl top (metrics-server) node NotFound components.yaml 网上的各种方法都有问题,找到了一个完整版的 yaml apiVersion: v1 ...