系统运维系列之greenplum常用的toolkit和catalog监控语句

琅晓琳 琅晓琳     2022-12-04     586

关键词:

1 表膨胀相关查询
-- 该视图显示了那些膨胀的(在磁盘上实际的页数超过了根据表统计信息得到预期的页数)正规的堆存储的表。
select * from gp_toolkit.gp_bloat_diag;
--所有对象的膨胀明细
select * from gp_toolkit.gp_bloat_expected_pages;

2 表倾斜的相关信息
-- 该视图通过计算存储在每个Segment上的数据的变异系数(CV)来显示数据分布倾斜。
select * from gp_toolkit.gp_skew_coefficients;
-- 该视图通过计算在表扫描过程中系统空闲的百分比来显示数据分布倾斜,这是一种数据处理倾斜的指示器。
select * from gp_toolkit.gp_skew_idle_fractions;

3 锁查询相关的信息
-- 该视图显示了当前所有表上持有锁,以及查询关联的锁的相关联的会话信息。
select * from gp_toolkit.gp_locks_on_relation;
-- 该视图显示当前被一个资源队列持有的所有的锁,以及查询关联的锁的相关联的会话信息。
select * from gp_toolkit.gp_locks_on_resqueue;

4 日志查询相关的信息
-- 该视图使用一个外部表来读取来自整个Greenplum(Master、Segment、镜像)的服务器日志文件并且列出所有的日志项。
select * from gp_toolkit.gp_log_system;
-- 该视图用一个外部表来读取在主机上的日志文件同时报告在数据库会话中SQL命令的执行时间
select * from gp_toolkit.gp_log_command_timings;
-- 该视图使用一个外部表来读取整个Greenplum系统(主机,段,镜像)的服务器日志文件和列出与当前数据库关联的日志的入口。
select * from gp_toolkit.gp_log_database;
-- 该视图使用一个外部表读取来自Master日志文件中日志域的一个子集。
select * from gp_toolkit.gp_log_master_concise;

5 资源队列相关查询信息
-- gp_toolkit.gp_resgroup_config视图允许管理员查看资源组的当前CPU、内存和并发限制。
select * from gp_toolkit.gp_resgroup_config;
-- gp_toolkit.gp_resgroup_status视图允许管理员查看资源组的状态和活动。
select * from gp_toolkit.gp_resgroup_status;
-- 该视图允许管理员查看到一个负载管理资源队列的状态和活动。
select * from gp_toolkit.gp_resqueue_status;
-- 对于那些有活动负载的资源队列,该视图为每一个通过资源队列提交的活动语句显示一行。
select * from gp_toolkit.gp_resq_activity;
-- 对于有活动负载的资源队列,该视图显示了队列活动的总览。
select * from gp_toolkit.gp_resq_activity_by_queue;
-- 资源队列的执行优先级。
select * from gp_toolkit.gp_resq_priority_backend;
-- 该视图为当前运行在Greenplum数据库系统上的所有语句显示资源队列优先级、会话ID以及其他信息。
select * from gp_toolkit.gp_resq_priority_statement;
-- 该视图显示与角色相关的资源队列。
select * from gp_toolkit.gp_resq_role;

6 查看磁盘上(database,schema,table,indexs,view)等的占用大小的相关信息
-- 外部表在活动Segment主机上运行df(磁盘空闲)并且报告返回的结果。
select * from gp_toolkit.gp_disk_free;
-- 该视图显示数据库的总大小。
select * from gp_toolkit.gp_size_of_database;
-- 该视图显示当前数据库中schema在数据中的大小。
select * from gp_toolkit.gp_size_of_schema_disk;
-- 该视图显示一个表在磁盘上的大小。
select * from gp_toolkit.gp_size_of_table_disk;
-- 该视图查看表的索引。
select * from gp_toolkit.gp_table_indexes;
-- 该视图显示了一个表上所有索引的总大小。
select * from gp_toolkit.gp_size_of_all_table_indexes;
-- 该视图显示分区子表及其索引在磁盘上的大小。
select * from gp_toolkit.gp_size_of_partition_and_indexes_disk;
-- 该视图显示表及其索引在磁盘上的大小。
select * from gp_toolkit.gp_size_of_table_and_indexes_disk;
-- 该视图显示表及其索引的总大小。
select * from gp_toolkit.gp_size_of_table_and_indexes_licensing;
-- 该视图显示追加优化(AO)表没有压缩时的大小。
select * from gp_toolkit.gp_size_of_table_uncompressed;

7 用户使用的工作空间大小信息
-- 该视图为当前在Segment上使用磁盘空间作为工作文件的操作符包含一行。
select * from gp_toolkit.gp_workfile_entries;
-- GP工作文件管理器使用的磁盘空间。
select * from gp_toolkit.gp_workfile_mgr_used_diskspace;
-- 每个查询的GP工作文件使用情况。
select * from gp_toolkit.gp_workfile_usage_per_query;
-- 每个segment在GP工作文件中的使用量。
select * from gp_toolkit.gp_workfile_usage_per_segment;

8 查看用户创建的信息(数据库,schema,,索引,函数,视图)等信息
-- gp 中所有的名字(索引、表、视图、函数)等的名字。
select * from gp_toolkit."__gp_fullname";
-- gp 中AO表的名字。
select * from gp_toolkit."__gp_is_append_only";
-- gp 中segment的个数。
select * from gp_toolkit."__gp_number_of_segments";
-- gp 中用户表的个数。
select * from gp_toolkit."__gp_user_data_tables";
-- GP用户数据表可读。
select * from gp_toolkit."__gp_user_data_tables_readable";
-- 用户自己创建的schema信息。
select * from gp_toolkit."__gp_user_namespaces";
-- 用户自己创建的表信息。
select * from gp_toolkit."__gp_user_tables";

9 系统中维护的ID信息
-- gp 本地维护的ID。
select * from gp_toolkit."__gp_localid";
-- gp master外部的log信息。
select * from gp_toolkit."__gp_log_master_ext";
-- gp segment外部的log信息。
select * from gp_toolkit."__gp_log_segment_ext";
-- gp master 的id信息。
select * from gp_toolkit."__gp_masterid";

10 系统查用的查询信息
-- 该视图显示那些没有统计信息的表,因此可能需要在表上执行ANALYZE命令。
select * from gp_toolkit.gp_stats_missing;
-- 该视图显示系统目录中被标记为down的Segment的信息。
select * from gp_toolkit.gp_pgdatabase_invalid;
-- 那些被分类为本地(local)(表示每个Segment从其自己的postgresql.conf文件中获取参数值)的服务器配置参数,应该在所有Segment上做相同的设置。
select * from gp_toolkit.gp_param_settings_seg_value_diffs;
-- 该视图显示系统中所有的角色以及指派给它们的成员(如果该角色同时也是一个组角色)。
select * from gp_toolkit.gp_roles_assigned;

参考资料:
https://blog.csdn.net/MyySophia/article/details/103226128 greenplum常用的gp_toolkit & pg_catalog监控语句

系统运维系列之clickhouse数据类型整理

Clickhouse支持的数据类型在system.data_type_families表中检查数据类型名称以及是否区分大小写,这个表中存储了ClickHouse支持的所有数据类型。select*fromsystem.data_type_familieslimit10;Int说明ClickHouse中整形分为Int8、Int16、Int32、Int64来表示... 查看详情

系统运维系列之java中实现多线程的方式补充

1介绍接本专题博客之系统运维系列之java中实现多线程的方式上篇博客提到多线程使用的4种方式,分别是:实现方式1:继承Thread类,重写该类的run方法;实现方式2:实现Runnable接口,并重写该接口的run... 查看详情

系统运维系列之mysql部分学习整理3

1存储过程语法结构:举例:无参CREATEPROCEDUREsql()SELECTVERSION();调用:CALLsql();有参IN:DELIMITER//(更改执行符号的命令)参数与语句中的字段不要重复,不要重复!如果p_id改成id,则会全部删除࿰... 查看详情

系统运维系列之mysql部分学习整理2

1字符函数使用举例:CONCAT_WS相比于CONCAT可以简化语句SELECTCONCAT(id,’-’,age)ASpathFROMuser;SELECTCONCAT_WS(’-’,id,age)ASpathFROMuser;SELECTFORMAT(id,3)ASnumFROMuser;SELECTLEFT(‘abcdef’,2);—>ab举例:SELECT 查看详情

系统运维系列之mysql部分学习整理4

1存储引擎查看数据库表创建命令:SHOWCREATETABLEtab1;支持的存储引擎:MylSAM:快速存储;InnoDB:带有事务回滚机制;MemorycsvArchive修改存储引擎的方式:通过修改MySQL配置文件实现default-storage-engine=engine... 查看详情

系统运维系列之mysql部分学习整理1

1前言本部分对于MySQL数据库工作机制及其语法做一个整理,用于之后重点内容的查询和交流。2包含内容数据库工作机制、语法基础、重要内容整理、语句优化、效率提升等。3MySQL的字段约束3.1其中AUTO_INCREMENT必须和PRIMARYKEY一... 查看详情

系统运维系列之greenplumvacuum清理删除数据命令(代码片段)

...m完成清理工作后,那些空间并没有真正被释放给操作系统,只能被vacuum清理过的表和索引所利用 查看详情

系统运维系列之kafka配置分析及参数含义

补充:kafkamanager中lag的正数、0、负数的含义:正数:就是kafka数据积压了,消费速度小于生产速度;0:生产者和消费者速率基本相当,说明2者都工作正常;负数:说明kafka的消费者干活很快,分... 查看详情

系统运维系列之异常抛出后代码执行问题(java应用)

1问题描述thrownewExcpetion()之后,程序并没有向下继续运行,抛出异常后直接跳出,后面的功能不再执行。//抛出异常:Exceptioninthread"main"java.lang.NumberFormatException//不会执行后面的输出语句publicstaticvoidmain(String[]args) S... 查看详情

系统运维系列之list实现深拷贝(java应用)

浅拷贝调用方法:遍历循环复制:List<String>destList=newArrayList<String>(srcList.size());for(Stringp:srcList)destList.add(p);使用list.addAll()方法:List<String>destList=newAr 查看详情

系统运维系列之mysql联合索引的使用分析(代码片段)

1前言日常优化中可能会遇到相同的数据在本地执行很快但是在服务器上执行很慢的问题,或者无论是在本地还是在服务器上都执行的很慢,可以分为两个方面排查2第一部分本地执行速度>服务器执行速度一般这种情况... 查看详情

系统运维系列之mysql部分学习整理5(代码片段)

1应用场景在mysql数据库中查找数据,要求是数据为日期不连续数据,输入一个日期查询日期所在周指定周几的数据和上几周对应时间段数据(一个月内)。关于此问题网上资料未曾有明确的解决方案,本篇博... 查看详情

系统运维系列之socket和serversocket的简单介绍(java应用)

Socket类代表一个客户端套接字,即任何时候连接到一个远程服务器应用时构建所需的socket。现在,要实现一个服务器应用,需要不同的做法。服务器需随时待命,因为不知道客户端什么时候会发来请求,此时&#... 查看详情

系统运维系列之堆栈理解(java应用)(代码片段)

1概述java虚拟机内存分为:堆(heap)、栈(stack)、方法区(methodarea)等,整体来说:堆:new出来的数组或者对象;栈:存储局部变量;方法区:代码区;寄存器࿱ 查看详情

系统运维系列之ip地址和子网划分介绍(代码片段)

1简介接上一篇博客:关于A类,B类,C类IP地址的网段和主机数的计算方法2详细内容(1)子网掩码IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相同的主... 查看详情

系统运维系列之记载一次windows系统下tomcat启动报错的问题(代码片段)

1问题简介最近遇到一个问题,在windows系统下部署tomcat项目,cmd命令启动时频繁报错,比如Unsupportedmajor.minorversion52.0,且cmd界面上打印出来的日志为乱码;最后在关闭tomcat时发现关不掉,出现项目挂起但是... 查看详情

系统运维系列之clickhouse数据库学习集锦(增删改查操作)(代码片段)

1简介本篇内容涉及一些增删改查操作,包括数据库、表,重点介绍字段的增加/删除操作,其中包含的内容均实际测试通过。2Clickhouseclickhouse是一款MPP架构的列式存储数据库,它拥有完备的管理功能,所以它称... 查看详情

自动化运维系列之ansible的简介与安装持续更新···(代码片段)

自动化运维系列之Ansible的简介与安装自动化运维工具简介由于互联网的快速发展导致产品更新换代的速度逐渐加快,这就导致运维人员的日常工作会大大增加,如果还是按照传统方式进行维护工作会使工作效率低下。此时,就... 查看详情