GreenPlum版本:4.3
问题:ERROR: number of workfiles per query limit exceeded 1.可能导致文件溢出过多的原因包括: 1>数据倾斜太严重 2>可供分配内存太低
2.可用的解决方法: 1>改变SQL查询语句、优化 2>改变数据分布,避免倾斜太严重 3>调整系统memory配置 3.具体步骤: 3.1查看数据分布的方法,然后借此来进行SQL优化或者数据重分布 1>查看分布键: \d+meta-command 2>查看数据分布:
1 | SELECT gp_segment_id, count(*) |
---|
2 | FROM table_name GROUP BY gp_segment_id; |
---|
3>查看对于单个query的数据倾斜
1 | SELECT gp_segment_id, count(*) FROM table_name |
---|
2 | WHERE column='value' GROUP BY gp_segment_id; |
---|
3.2如果你确定你的SQL确实需要创建更多的溢出文件,那么可考虑修改gp_workfile_limit_files_per_query参数
1 | $ gpconfig -c gp_workfile_limit_files_per_query -v 256GB |
---|
修改后需要重启gp
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。