GaussDB分布式数据倾斜处理

python 复制代码
常规数据倾斜巡检
在库中表个数少于1W的场景,直接使用倾斜视图查询当前库内所有表的数据倾斜情况
SELECT * FROM pgxc_get_table_skewness ORDER BY totalsize DESC;

在库中表个数非常多(至少大于1W)的场景,因PGXC_GET_TABLE_SKEWNESS涉及全库查并计算非常全面的倾斜字段,所以可能会花费比较长的时间(小时级),请根据PGXC_GET_TABLE_SKEWNESS视图定义,直接使用table_distribution()函数自定义输出,减少输出列进行计算优化,例如

SELECT schemaname,tablename,max(dnsize) AS maxsize, min(dnsize) AS minsize 
FROM pg_catalog.pg_class c 
INNER JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace 
INNER JOIN pg_catalog.table_distribution() s ON s.schemaname = n.nspname AND s.tablename = c.relname 
INNER JOIN pg_catalog.pgxc_class x ON c.oid = x.pcrelid AND x.pclocatortype = 'H' 
GROUP BY schemaname,tablename;

建议:

分布健选择:

  1. 字段的值尽量离散;
  2. 选择分布健唯一键;
  3. 根据业务场景选择多的字段作为分布健。
相关推荐
kiwixing8 小时前
GaussDB|集中式还是分布式?三把尺子选型
分布式·gaussdb
DarkAthena1 天前
【GaussDB】关于2026年11月5号直播演示的一些补充
gaussdb
DarkAthena12 天前
【GaussDB】把GaussDB开发者版本做成88MB的docker镜像
docker·gaussdb
Gauss松鼠会15 天前
GaussDB 整体架构解析
运维·服务器·网络·数据库·sql·架构·gaussdb
Gauss松鼠会15 天前
GaussDB 中 gsql 与 DBeaver(JDBC)客户端工具查询时间不一致:原因、排查与处理
运维·服务器·数据库·sql·gaussdb·经验总结
hyunbar17 天前
华为云 GaussDB(DWS) 和 PG 的谓词下推有何差异
华为云·gaussdb·dws
Gauss松鼠会22 天前
GaussDB 内存相关参数及故障诊断
运维·数据库·sql·oracle·性能优化·架构·gaussdb
Gauss松鼠会1 个月前
【GaussDB】破除gaussdb ugin索引支持中文模糊查询的迷思-字符序
java·运维·服务器·网络·数据库·gaussdb·经验总结
-madongyu-2 个月前
GaussDB 存储引擎:Ustore vs Astore、页式 vs 段页式
gaussdb
-madongyu-2 个月前
HCIE-GaussDB V2.0 笔试考点总览:模块权重、核心要点与高频数字速记
数据库·华为·gaussdb