最近在全权负责的一款数据产品,基于Hive-JDBC执行用户提交的Impala SQL,实现数据集,数据监控,数据推送等功能。Hive-JDBC版本:
之前CDH版本执行无误的SQL,在CDH集群升级到7.1.7版本后执行失败,具体报错信息如下:
即,enable是一个敏感关键词,报语法错误。解决方法:加上反单引号,即:enable
SQL里面包含函数,SQL执行失败。如图,非hive-jdbc问题,在可视化查询界面执行也是失败的:
具体报错信息如下:
通过hive-jdbc提交到大数据平台的SQL执行报错:,没有更多报错日志。原因:大数据平台节点资源紧张,直接抛弃任务。
区别于下面的Cancelled from Impala’s debug web interface报错。
解决方法:重试,优化SQL。貌似没有更好的方法。
具体报错信息如下:
解决方法:重试,优化SQL。貌似没有更好的方法。
报错信息如下:
报错代码片段:
发生在处。
任务超时被kill。大数据平台资源有限,不可能让用户的查询SQL无限期执行下去。任务查杀规则综合考虑3方面因素(查询数据量 + 执行时间 + 完成度):
针对数据块这一问题,非常不建议使用,而列出具体的查询字段,另外加上字句限制条数。
具体的报错信息如下:
有时候重试成功,有时候失败。登录到Hadoop集群机器里,查看任务调度执行日志:
发现这个SQL,居然要全表扫描一张1.2W+分区,扫描20.1TB数据。
解决方法:重试,优化SQL。貌似没有更好的方法。
任务执行失败,具体的报错信息如下:
报错原因:数据表不存在。尝试方法:或
解决方法:重试,优化SQL。貌似没有更好的方法。
具体报错信息:
提交到大数据平台的SQL需要排队,排队超过3分钟被抛弃。
具体报错信息:
大数据平台设置SQL提交数量,最多运行150个,排队200个,排队超时时间为5分钟。后续提交的SQL,排队连接超时,报错。
有两类报错信息:
- Table does not exist:
- Could not resolve table reference
区别是什么???
待执行的查询SQL依赖于表rhino_man_checked_hitrule,而表的存储文件损坏,需要重新生成表。
待执行的查询SQL依赖于表rhino_man_checked_hitrule,而表的存储文件损坏,需要重新生成表。