从Json.Serde格式化表格复制到文本文件格式的hive表格

时间:2015-08-16 04:52:47

标签: hadoop hive

我对蜂巢来说是全新的。

我使用Json.SerDe在我的json文件上创建了一个hive表,并且还加载了数据。

以下是结构

CREATE EXTERNAL TABLE JsonTable_raw (
  data array<struct<
      start_date:string,
      end_date:string,
      measures:struct<
      Visitors:int,
      Singlepagevisits:int
      >
    >
  >
) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'

我创建了另一个未使用JsonSerDe格式化的表。

CREATE EXTERNAL TABLE JsonTable (
  start_date string,
  end_date string,
  Visitors int,
  Singlepagevisits int
)

我尝试使用以下查询

INSERT INTO TABLE JsonTable select
  data.start_date,data.end_date,data.measures.Visitors,
data.measures.Singlepagevisits FROM JsonTable_raw;

但它扔了

  

NoMatchingMethodException没有类的匹配方法   带(数组)的org.apache.hadoop.hive.ql.udf.UDFToInteger。可能   选项: FUNC (bigint) FUNC (布尔) FUNC (十进制(38,18))    FUNC (double) FUNC (float) FUNC (smallint) FUNC (字符串) FUNC (timestamp) FUNC (tinyint) FUNC (void)

现在如何将数据从JsonTable_raw复制到JsonTable?

0 个答案:

没有答案