# 新增jar包hive> add jar /home/heyuan.lhy/develop/wanke_http_test/hive-json-serde-0.2.jar;hive> # 建立hive表CREATE TABLE test_json( id BIGINT, text STRING,)ROW FORMAT SERDE "org.apache.hadoop.hive.contrib.serde2.JsonSerde"STORED AS TEXTFILE;LOAD DATA LOCAL INPATH "test.json" OVERWRITE INTO TABLE test_json;之後,就可以使用 SELECT等語句進行操作了。 備註:這個SerDe雖然比較老,但經過測試,支援到0.12的版本無壓力。
方法: 1、將json以字串的方式整個入Hive表,然後使用LATERAL VIEW json_tuple的方法,獲取所需要的列名。 2、將json拆成各個欄位,入Hive表。這將需要使用第三方的SerDe,例如:
https://code.google.com/p/hive-json-serde/
本文將主要使用第二種方法。wgethttps://hive-json-serde.googlecode.com/files/hive-json-serde-0.2.jar
# 新增jar包hive> add jar /home/heyuan.lhy/develop/wanke_http_test/hive-json-serde-0.2.jar;hive> # 建立hive表CREATE TABLE test_json( id BIGINT, text STRING,)ROW FORMAT SERDE "org.apache.hadoop.hive.contrib.serde2.JsonSerde"STORED AS TEXTFILE;LOAD DATA LOCAL INPATH "test.json" OVERWRITE INTO TABLE test_json;之後,就可以使用 SELECT等語句進行操作了。 備註:這個SerDe雖然比較老,但經過測試,支援到0.12的版本無壓力。