Hive-1.1.0在将数据插入创建的表时显示错误(使用hadoop-2.5.1)

时间:2015-03-25 05:27:07

标签: mysql hadoop hive

使用以下方法成功创建了表:

CREATE  TABLE movie_example 
   (title STRING, id BIGINT, director STRING, 
    year BIGINT, genres ARRAY<STRING>) 
    ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' 
        COLLECTION ITEMS TERMINATED BY '$' MAP KEYS 
    TERMINATED BY '#' LINES 
   TERMINATED BY '\n' STORED AS TEXTFILE;

当我尝试使用以下方法将数据插入此表时

LOAD DATA LOCAL INPATH '/<path>/hiveExample.txt' 
   OVERWRITE INTO TABLE movie_example;

它抛出一个错误:

 java.lang.NoSuchMethodError: org.apache.hadoop.hdfs.DFSClient.getKeyProvider()Lorg/apache/hadoop/crypto/key/KeyProvider;
    at org.apache.hadoop.hive.shims.Hadoop23Shims$HdfsEncryptionShim.<init>(Hadoop23Shims.java:1152)
    at org.apache.hadoop.hive.shims.Hadoop23Shims.createHdfsEncryptionShim(Hadoop23Shims.java:1279)
    at org.apache.hadoop.hive.ql.session.SessionState.getHdfsEncryptionShim(SessionState.java:392)
    at org.apache.hadoop.hive.ql.metadata.Hive.moveFile(Hive.java:2418)
    at org.apache.hadoop.hive.ql.metadata.Hive.replaceFiles(Hive.java:2747)
    at org.apache.hadoop.hive.ql.metadata.Table.replaceFiles(Table.java:640)
    at org.apache.hadoop.hive.ql.metadata.Hive.loadTable(Hive.java:1582)
    at org.apache.hadoop.hive.ql.exec.MoveTask.execute(MoveTask.java:297)
    at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:160)

1 个答案:

答案 0 :(得分:2)

当我进行搜索时,似乎这是一个错误。

Hive 1.1.0 not compatible with Hadoop 2.4.0