2013-05-08 77 views
1

我们对Hadoop和Hive非常新颖。我们也创建了普通的Hive表和加载数据。但是,当我们使用JSON格式在Hive中创建表时,我们正面临着问题。我还添加了serde jar。我们得到以下错误:无法使用SERDE创建JSON格式的HIVE表格

create table airline_tables(Airline string,Airlineid string,Sourceairport string,Sourceairportid string,Destinationairport string,`Destinationairportid string,Codeshare string,Stop string,Equipment String)` ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde'`location '/home/hduser/part-000';` 

FAILED: Error in metadata: java.lang.NullPointerException 
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask 

位置是HDFS。 我使用的是Hive-0.9.0和hadoop 1.0.1。

+0

您是否将'hive-contrib - *。jar'添加到'hive.aux.jars.path'? – pensz 2013-05-09 16:13:42

+0

我也添加了jar路径。HIVE_AUX_JARS_PATH =/usr/local/hadoop/hive-0.9.0/lib – user2361032 2013-05-13 04:41:01

回答

2

正如我所见。您正在使用配置单元的本地表。所以在这种情况下,你需要在表格中加载数据。如果您不想加载数据,那么您只需将该特定位置的路径放在表创建脚本中即可。所以,我想你错过了关键字“EXTERNAL”再次创建这样的表。创建外部表airline_tables(等等等等.....)