hive表数据太多,普通的查询语句都用不了,求解决【应该很简单】

之前做项目用的hive,本来功能什么的都好了,但是测试的时候不知道王里面加了多少数据,可能有5000W条,一张表。
然后我现在用select * from tablename,或者select count(1) from tablename,根本就没有反映,一直在loding

用select * from tablename limit 1,1,就可以出来结果

请问这是杂回事情,怎么优化?是不是内存不足???
求帮忙,今天我一定得解决这个问题阿

我是用java 的jdbc来操作的,换到beeline上执行也是一样,一直loading


慕尼黑5688855
浏览 1785回答 1
1回答

一只斗牛犬

select *是将所有数据load到内存,5000万数据量还是比较大的,加载到内存都是一个比较漫长的过程了。你可以试一下在该表建分区。查询的时候建议指定分区,或者像select * from tablename limit 1,1这样做分页,并且建议用where条件过滤出需要的数据(如果有过滤条件的情况下),尽量避免全表查询。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java