2016-08-18 6 views
0

ビーラインを使用してHDFSファイルからテーブルをロードしようとしています。 StagingSchema.hqlファイルを入力してロードするためのシェルスクリプトを作成しました。ロード・ステートメントでハイブ(ビーライン・テーブル)を 'inpath'の近くにロードできません

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

内部シェルスクリプト

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) 

の下に、この上の任意のポインタを取得していますか?

+0

bashスクリプトの[hiveコマンドで重複する可能性のあるファイルがテーブルにロードされない](https://stackoverflow.com/questions/26663858/hive-command-in-bash-script-wont-load-file-into) - テーブル) – sdikby

答えて

0

あなたは、負荷の声明の中で、単一引用符で

負荷データINPATH '$ {hivevar:DATALOCATIONを}' INPATHをカバーしようとすることができ、テーブル$ {hivevar:sourceTable}に。

+0

ありがとう...それは働いた。 – Shashi

関連する問題