Deepgreen数据库数据分布状态查询脚本 - DK值调整参考

本文分享了一个用于查询Deepgreen数据库分区事实表数据分布状态的脚本,通过该脚本可以为后期分布键的调整提供参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据分布是Deepgreen数据库中经常需要优化的一个点,为了将数据均匀分布,经常需要在建表初期指定一个合理的分布键。但是随着数据的增多,分区表不免会产生数据倾斜,今天分享一个脚本,用于查询分区事实表的数据分布状态,给后期分布键的调整提供参考。
脚本简单封装了运维常用的查询语句:

#!/bin/bash
# filename: distributed_status.sh
IFS=$'\n'
db=$1
echo "You will examinate database $1's distribution status!"
# 读取并生成分布状态检查语句存入变量
distributed_status_array=$(psql -p 15432 -d $db -t -c "select 'SELECT gp_segment_id,count(*) from '||schemaname||'.'||tablename||' group by gp_segment_Id;' from pg_partitions group by schemaname,tablename;")
#定义循环查询函数
function distributed_status(){
for i in $distributed_status_array
do
echo $i
echo "$(psql -h 127.0.0.1 -p 5432 -d $db -t -c "$i")"
done
}
#执行函数
distributed_status

脚本执行前,需要在deepgreen用户下赋予可执行权限;执行时,在脚本后面传入数据库名:

dgadmin@flash:~$ ./distributed_status.sh tpch

如果IP和端口号与脚本不一致,可以在创建时相应修改~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值