2017-08-11 5 views
0

mysqlからハイブにデータをインポートするためのoozie sqoopタスクを作成しました。私は、namenodeと3つのdatanodesを持っています。これはまた、ハイブ、oozie、およびsqoopがnamenodeにインストールされています。Oozie sqoopタスクエラー:プログラム "ハイブ"を実行できません:エラー= 2そのようなファイルまたはディレクトリがありません。

sqoopのインポートのcoommandはnamenodeでvar CLIでテストされていますが、oozie sqoopタスクを作成するたびにそれも失敗します。以下は詳細なエラーです。ここ

2017-08-11 11:27:40,787 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 0% reduce 0% 2017-08-11 11:27:40,787 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 0% reduce 0% 2017-08-11 11:27:44,833 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 25% reduce 0% 2017-08-11 11:27:44,833 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 25% reduce 0% 2017-08-11 11:27:45,837 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 75% reduce 0% 2017-08-11 11:27:45,837 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 75% reduce 0% 2017-08-11 11:27:46,844 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 100% reduce 0% 2017-08-11 11:27:46,844 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - map 100% reduce 0% 2017-08-11 11:27:46,856 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - Job job_1502360348741_0041 completed successfully 2017-08-11 11:27:46,856 [uber-SubtaskRunner] INFO org.apache.hadoop.mapreduce.Job - Job job_1502360348741_0041 completed successfully ... 2017-08-11 11:27:46,932 [uber-SubtaskRunner] INFO org.apache.sqoop.mapreduce.ImportJobBase - Transferred 625 bytes in 12.0595 seconds (51.8263 bytes/sec) 2017-08-11 11:27:46,936 [uber-SubtaskRunner] INFO org.apache.sqoop.mapreduce.ImportJobBase - Retrieved 14 records. 2017-08-11 11:27:46,951 [uber-SubtaskRunner] INFO org.apache.sqoop.manager.SqlManager - Executing SQL statement: SELECT t.* FROM UserRole AS t WHERE 1=0 2017-08-11 11:27:46,952 [uber-SubtaskRunner] INFO org.apache.sqoop.manager.SqlManager - Executing SQL statement: SELECT t.* FROM UserRole AS t WHERE 1=0 2017-08-11 11:27:46,953 [uber-SubtaskRunner] WARN org.apache.sqoop.hive.TableDefWriter - Column updatedDate had to be cast to a less precise type in Hive 2017-08-11 11:27:46,960 [uber-SubtaskRunner] INFO org.apache.sqoop.hive.HiveImport - Loading uploaded data into Hive 2017-08-11 11:27:46,963 [uber-SubtaskRunner] ERROR org.apache.sqoop.tool.ImportTool - Encountered IOException running import job: java.io.IOException: Cannot run program "hive": error=2,

マッパージョブが生成されるので、このスクリプトを提出しなければならないと名前ノード上で実行する私の考え

  1. です。これは正しいです?
  2. 私はすべてenv varsをうまく設定しているので、ハイブテーブルにデータをインポートするためのインポートツールをdatanodeの1つで起動する必要があります。

クラスタのすべてのデータノードにハイブをインストールする必要がありますか?またはこの問題を解決するために私ができる設定がありますか?

+0

あなたのクラスタのhive-siteをlibフォルダにコピーする – TKHN

+0

oozie 'workflow.xml'を投稿できますか? –

答えて

0
  1. hive-site.xmlがhdfsの所定の場所にあることを確認します。
  2. すべてのハイブの共有フォルダをsqoopの共有フォルダにコピーします。
関連する問題