代码为:
select videoId,category
from gulivideo_orc
where videoId in (
select *
from (
select relatedId_name
from (
select relatedId, `views`
from gulivideo_orc
order by `views` desc
limit 50
) t1--找到top50
lateral view explode(relatedId) tmp as relatedId_name
) t2 --找出top50对应的相关视频Id
)
原因:大表join大表时内存不足导致初始化失败,自动默认的大表join小表,查看设置:

解决方法:

将大表join小表设置为false即可
最后记得运行完,将改值改为true;
优化大数据查询:解决大表JOIN内存不足问题
本文探讨了一种在大数据查询中遇到的问题,即大表JOIN大表导致内存不足。通过分析,发现系统默认使用了大表JOIN小表的方式。为了解决这个问题,建议将设置调整为禁止大表JOIN小表,完成查询后再恢复原设置。这种方法能有效避免初始化失败,优化大数据处理效率。
689





