阿里云服务器做盗版电影网站,网站建设外包服务,什么网站可以做pie chart,电信公司网络维护一、通过gp_segment_id查看数据倾斜
gp_segment_id是表中的隐藏列#xff0c;用来标记该行属于哪个segment节点。因此可以基于该隐藏列进行分组查询#xff0c;获取每个segment的记录数#xff0c;从而判断表数据的分布是否均匀或有倾斜。
qb#select gp_segment_id, count…一、通过gp_segment_id查看数据倾斜
gp_segment_id是表中的隐藏列用来标记该行属于哪个segment节点。因此可以基于该隐藏列进行分组查询获取每个segment的记录数从而判断表数据的分布是否均匀或有倾斜。
qb#select gp_segment_id, count(*) from call_center group by 1 order by 1;gp_segment_id | count
----------------------0 | 41 | 22 | 63 | 44 | 55 | 3
(6 rows)二、查看segment配置和状态
gp_segment_configuration是一张系统表它维护包括master、standby在内的所有节点信息。是DBA了解集群最直观的方式。
qb# select * from gp_segment_configuration order by 1;dbid | content | role | preferred_role | mode | status | port | hostname | address | datadir
--------------------------------------------------------------------------------------------------------------------1 | -1 | p | p | n | u | 5432 | n208 | n208 | /var/lib/qb-data/master/qbseg-12 | 0 | p | p | n | u | 40000 | n208 | n208 | /var/lib/qb-data/primary/qbseg03 | 1 | p | p | n | u | 40001 | n208 | n208 | /var/lib/qb-data/primary/qbseg14 | 2 | p | p | n | u | 40000 | n209 | n209 | /var/lib/qb-data/primary/qbseg25 | 3 | p | p | n | u | 40001 | n209 | n209 | /var/lib/qb-data/primary/qbseg36 | 4 | p | p | n | u | 40000 | n210 | n210 | /var/lib/qb-data/primary/qbseg47 | 5 | p | p | n | u | 40001 | n210 | n210 | /var/lib/qb-data/primary/qbseg5三、查看表的大小
查看表的大小有两种方式一种是\d一种是pg_size_pretty。 如果是在一个schema下直接执行\d可以一次性看到所有表的size如下
qb# \dList of relationsSchema | Name | Type | Owner | Storage | Size | Description
-----------------------------------------------------------------------------------------------------tpcds | call_center | table | qb| ao_column | 1039 kB | tpcds | catalog_page | table | qb| ao_column | 2575 kB | tpcds | catalog_returns | partitioned table | qb| ao_column | 0 bytes | tpcds | catalog_returns_1_prt_10 | table | qb| ao_column | 1092 kB | tpcds | catalog_returns_1_prt_100 | table | qb| ao_column | 2197 kB | tpcds | catalog_returns_1_prt_101 | table | qb| ao_column | 2216 kB | tpcds | catalog_returns_1_prt_102 | table | qb| ao_column | 2192 kB | tpcds | catalog_returns_1_prt_103 | table | qb| ao_column | 2190 kB | tpcds | catalog_returns_1_prt_104 | table | qb| ao_column | 2175 kB | tpcds | catalog_returns_1_prt_105 | table | qb| ao_column | 2174 kB | tpcds | catalog_returns_1_prt_106 | table | qb| ao_column | 2136 kB | tpcds | catalog_returns_1_prt_107 | table | qb| ao_column | 2119 kB | tpcds | catalog_returns_1_prt_108 | table | qb| ao_column | 2091 kB | tpcds | catalog_returns_1_prt_109 | table | qb| ao_column | 2072 kB |如果想查看某一张表的size可以使用pg_size_pretty如下
qb# select pg_size_pretty(pg_relation_size(catalog_returns_1_prt_158));pg_size_pretty
----------------929 kB
(1 row)除此之外还有以下一系列函数可以查看数据库、表占用空间大小。
函数说明pg_database_size(‘znids_dc’)数据库大小不计算索引pg_total_size(‘znids_dc’)数据库大小包含索引pg_indexes_size(‘alert_log_sm’)表中索引大小pg_relation_size(‘alert_log_sm’)表大小不包括索引pg_total_relation_size(‘alert_log_sm’)表大小包括索引pg_tablespace_size(‘alert_log_sm’)表空间大小
四、explain相关用法
如果是仅查看执行计划可直接使用explain select xxx。 如果是希望查看执行计划并输出语句执行耗时可使用explain analyze select xxx。
qb# explain analyze select cc_call_center_sk,count(*) from call_center group by 1;QUERY PLAN
---------------------------------------------------------------------------------------------------------------------------Gather Motion 6:1 (slice1; segments: 6) (cost0.00..431.00 rows24 width12) (actual time3.223..4.193 rows24 loops1)- GroupAggregate (cost0.00..431.00 rows4 width12) (actual time0.519..0.528 rows6 loops1)Group Key: cc_call_center_sk- Sort (cost0.00..431.00 rows4 width4) (actual time0.504..0.509 rows6 loops1)Sort Key: cc_call_center_skSort Method: quicksort Memory: 150kBExecutor Memory: 152kB Segments: 6 Max: 26kB (segment 2)- Seq Scan on call_center (cost0.00..431.00 rows4 width4) (actual time0.459..0.470 rows6 loops1)Optimizer: ORCA Optimizer (QBORCA)Planning Time: 15.128 ms(slice0) Executor memory: 27K bytes.(slice1) Executor memory: 159K bytes avg x 6 workers, 159K bytes max (seg0). Work_mem: 26K bytes max.Memory used: 128000kBExecution Time: 5.362 ms
(14 rows)五、使用show显示某个参数的值
可以在命令行使用show xxx来显示某个参数的值。如
qb# show max_connections ;max_connections
-----------------250
(1 row)六、通过gpconfig修改参数
通过gpconfig配置Master和所有Segment的postgresql.conf中参数。 查询gpconfig -s 修改gpconfig -c
比如
gpconfig -c work_mem -v 120MB –masteronly
修改master上的work_mem 120MB
gpconfig -c max_connections -v 100 -m 10
修改Master上max_connections10Segment上修改成100
gpconfig -r default_statistics_target
注释参数使用缺省参数
gpconfig –l
列出所有的参数
gpconfig -s max_connections
显示某个参数
最大连接数show max_connections;
最大事务数show max_prepared_transactions;