无法在load语句中的'inpath'附近加载hive(直线表)| StringLiteral

时间:2016-08-18 19:21:02

标签: hadoop hive beeline

我正在尝试使用beeline从HDFS文件加载表。我为它编写了shell脚本,它将StagingSchema.hql文件作为输入并加载表。

load data  inpath ${hivevar:dataLocation} into table ${hivevar:sourceTable};

Inside Shell脚本

HIVE_DATA_LOCATION="hdfs:///app/data/empRecord.csv"

beeline -u $BEELINE_JDBC_URL -n $BEELINE_USERNAME -p $BEELINE_PASSWORD --hivevar sourceTable=$SOURCE_TABLE --hivevar dataLocation=$HIVE_DATA_LOCATION --silent=true -f StagingSchema.hql

在上面的脚本上运行时,我遇到了异常

    WARNING: Use "yarn jar" to launch YARN applications.

Error: Error while compiling statement: FAILED: ParseException line 1:23 mismatched input 'hdfs' expecting StringLiteral near 'inpath' in load statement (state=42000,code=40000)

关于此的任何指示?

1 个答案:

答案 0 :(得分:0)

您可以尝试在load语句中用单引号覆盖inpath,

在路径中加载数据' $ {hivevar:dataLocation}'到表$ {hivevar:sourceTable};