Hive SQL, insert, Error encountered near token ''<String>''

问题描述

首先,Error encountered near token 是一个十分宽泛的报错,很多问题都可以引发它。

我的原报错是这样的。

FAILED: SemanticException 0:0 Expected 2 columns for insclause-0/default@test1; select produces 1 columns. Error encountered near token ''Tom''

我的表结构很简单,只有两个变量。

create table test1 (id int, name string) row format delimited fields terminated by ','

在我尝试 insert 一行新的数据时,出现了上述的错误。

尝试解决

我猜想,可不可能是因为关于 String 数据类型插入时,有什么语法错误。
于是,我又建了一个表,只含有两个 int 类型变量。
SQL 语法不变,再次尝试执行。

它又报错了,但和上面的不一样。是这样的:


Log file of hiveserver2
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

查了一些资料,说需要查看 YARN 的日志。
那我们再去运行 ResourceManager 的机器上查看。

Log of YARN

把它显示的三个 property 加入到 mapred-site.xml 中即可,注意配置 HADOOP_HOME

小结

集群配置有很多坑,报错提示也不精确,一环套一环,还是要静下心来多分析多尝试,一定可以解决的!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容