从 Hive 访问 Oracle NoSQL

Accessing Oracle NoSQL from Hive

我正在关注 this (pretty old) tutorial 使用 StorageHandler 从 Hive 访问本地 Oracle NoSQL DB。

我已经成功了:

但是,当我 运行 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;

显然,似乎是与 SerDe 组件有关的错误。

我也尝试过使用 Hive 2.0,但它也不起作用。

有什么线索吗?

这是一个已知问题,与 HIVE-9500 introducing an incompatible change to LazySimpleSerDe public interface 相关。 切换到 Hive 1.0.1 已解决问题。