doris进行join操作的时候报错:memory exceed limit hash join,while constructing the hash table

提问者:帅平 问题分类:大数据

在使用doris进行join操作的时候,直接报错了,提示:Memory exceed limit .Hash join while constructing the hash table. Backend:xxx,具体错误信息如图:

2 个回答
忆雪
忆雪

这种需要考虑下数据倾斜的问题,同时join的时候可以使用Runtime Filter等join优化参数进行优化下join的sql语句。

发布于:2周前 (11-25)
曾经多难忘
曾经多难忘

在提示里面已经有提示了:

you can change the limit by session variable exec_mem_limit

所以可以尝试下设置这个值即可:

SET GLOBAL exec_mem_limit = 8589934592;
show variables like "exec_mem_limit";

此时再执行一下就可以了

发布于:2周前 (11-25)
帅平
帅平提问者

又重新执行了一遍这个sql,没有更改这个配置,居然成功了。

发布于:2周前 (11-25)
相视而笑
相视而笑
@帅平

这种问题建议设置一下,因为重新跑一遍又成功了,下次跑的时候也可能再次遇到。出现这种问题一般是数据倾斜的问题,在设计表的时候要充分考虑数据倾斜的问题

发布于:2周前 (11-25)
我来回答