Hive支持使用JSON建表,方便我們將JSON格式的數據快速導入到Hive中進行分析。
JSON格式的數據通常包含多層嵌套,建表時需要根據數據結構定義表的schema。
CREATE TABLE example_json( id STRING, name STRUCT< first_name:STRING, last_name:STRING>, age INT, address ARRAY>, phone_numbers MAP ) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' STORED AS TEXTFILE;
上面的例子展示了一個包含多層嵌套的JSON的建表過程。結合數據結構定義了表的字段特征。
建好表之后可以使用load語句將JSON數據導入到表中。
LOAD DATA INPATH '/path/to/example.json' INTO TABLE example_json;
完成導入后使用select語句查詢即可。
SELECT * FROM example_json;
實際使用中,我們可以使用授權命令,將表授權給其他用戶。
GRANT SELECT ON example_json TO user1;
JSON建表提供了一種靈活的方式導入和查詢復雜的JSON數據結構,這在數據分析及ETL處理時非常有用。