我有一张这样的table:
CREATE EXTERNAL TABLE IF NOT EXISTS test_to_json
(
field1 string,
field2 string,
field3 string,
field4 string
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION '/path';
我想从上表生成一个json。最好的方法是什么?
预期输出:
CREATE EXTERNAL TABLE IF NOT EXISTS json_table
(
field1 string,
json_field json -- contain field2, field3, field4 in json
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION '/path';
Pig或Hive的解决方案将是伟大的。我只能看到相反的例子(从json读取数据)
感谢您提前回复
2条答案
按热度按时间6kkfgxo01#
您可以使用brickhouse(http://github.com/klout/brickhouse )创建格式良好的json输出。在“named_struct”自定义项中使用它来定义输出json的模式。更多信息请访问http://brickhouseconfessions.wordpress.com/2014/02/07/hive-and-json-made-simple/ . 在您的示例中,您将创建一个
mf98qq942#
udf将是实现这一目标的更好方法。