将 Pig 输出转换为 JSON 格式

Posted

技术标签:

【中文标题】将 Pig 输出转换为 JSON 格式【英文标题】:Converting Pig output into JSON Format 【发布时间】:2015-01-19 05:28:20 【问题描述】:

我在 Pig 中有以下输出存储在一个变量中:

("Keyword",

(data1, data2, data3, data4),
(data1, data2, data3, data4)

)

期望以 JSON 格式输出:


    "keyword": [
        
            "val_1": "data1",
            "val_2": "data2",
            "val_3": "data3",
            "val_4": "data4"
        ,
        
            "val_1": "data1",
            "val_2": "data2",
            "val_3": "data3",
            "val_4": "data4"
        
    ]

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

如果你已经定义了一个模式,你所要做的就是 -

store yourRelation into 'file_location_in_hdfs' using JsonStorage();

这将使用架构、变量名作为 json 标记。

【讨论】:

是的,您需要指定模式才能使用此存储,尝试使用模式加载示例数据,在其上进行全部分组并使用 JSONStorage 存储,数据将具有类似于的输出格式你的。

以上是关于将 Pig 输出转换为 JSON 格式的主要内容,如果未能解决你的问题,请参考以下文章

使用 Pig 将 Json 数据转换为特定的表格格式

使用 Java 将 Json 对象转换为 Parquet 格式而不转换为 AVRO(不使用 Spark、Hive、Pig、Impala)

Java & Pig - 是不是可以将 pig 脚本的输出转换为 Java 变量?

Pig 脚本到日期转换问题导致不同的输出

如何将JSON字符串格式化输出

将 ctree 输出转换为 JSON 格式(用于 D3 树布局)