你好杰米 2018-04-16 00:37 采纳率: 87.5%
浏览 2095
已采纳

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

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

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

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

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

  • 写回答

4条回答

  • qdf_csdn 2018-04-16 06:58
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图