2016-03-22 4 views
0

Я следую this (pretty old) tutorial для доступа к локальной базе данных Oracle NoSQL из Hive с помощью StorageHandler.Доступ к Oracle NoSQL из Hive

Я успешно:

  • Извлеченные Hadoop 2.7.2 под /home/hadoop/hadoop
  • Извлеченные Hive 1.2.1 под /home/hadoop/hive
  • Установите следующие переменные окружения:

    export HADOOP_HOME=/home/hadoop/hadoop 
    export HADOOP_COMMON_HOME=$HADOOP_HOME 
    export HADOOP_HDFS_HOME=$HADOOP_HOME 
    export HADOOP_MAPRED_HOME=$HADOOP_HOME 
    export HADOOP_YARN_HOME=$HADOOP_HOME 
    export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native" 
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
    export KVHOME=/home/hadoop/kv 
    export KVROOT=/tmp/kv-metadata 
    export HIVE_HOME=/home/hadoop/hive/ 
    export HIVE_AUX_JARS_PATH=$KVHOME/lib/kvclient.jar 
    export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:$HIVE_HOME/bin 
    
  • Запуск базы данных Oracle NoSQL:

    java -jar $KVHOME/lib/kvstore.jar kvlite -root $KVROOT -host localhost & 
    
  • Создал MOVIE таблицу в БД Oracle

Однако, когда я бегу hive и типа

hive> CREATE EXTERNAL TABLE IF NOT EXISTS MOVIE(id INT, original_title 
STRING, overview STRING, poster_path STRING, release_date STRING, 
vote_count INT,  runtime INT, popularity DOUBLE, genres STRING) 
STORED BY 'oracle.kv.hadoop.hive.table.TableStorageHandler' 
TBLPROPERTIES ("oracle.kv.kvstore"="kvstore",  
"oracle.kv.hosts"="localhost:5000", 
"oracle.kv.hadoop.hosts"="localhost",   
"oracle.kv.tableName"="MOVIE"); 

Я получаю следующее сообщение об ошибке:

FAILED: Execution Error, return code 1 from 
org.apache.hadoop.hive.ql.exec.DDLTask. 
org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe.initSerdeParams 
(Lorg/apache/hadoop/conf/Configuration;Ljava/util/Properties;Ljava  
/lang/String;)Lorg/apache/hadoop/hive/serde2  
/lazy/LazySimpleSerDe$SerDeParameters; 

Видимо , это кажется ошибкой, связанной с Сер De.

Я тоже пробовал с Hive 2.0, но он тоже не работает.

Любая подсказка о том, что происходит?

ответ