【发布时间】:2012-03-23 22:04:34
【问题描述】:
关于 PIG 中 JSON 处理的快速问题。
我尝试了一些名为 Elephant-Bird 的 JsonLoader 来加载和处理 JSON 数据,如下所示:
{
"SV":1,
"AD":[
{
"ID":"46931606",
"C1":"46",
"C2":"469",
"ST":"46931",
"PO":1
},
{
"ID":"46721489",
"C1":"46",
"C2":"467",
"ST":"46721",
"PO":5
}
]
}
加载器适用于简单字段,但不适用于任何数组字段。我不知道如何使用此 UDF 或以任何其他方式访问数组中的元素(上面的“AD”字段)?请指教。
【问题讨论】:
-
我创建了自己的 UDF 来专门处理这种情况(虽然不是通用方式),以防其他人遇到类似的需求。
-
你试过用点或散列来做吗?我记得使用其中一个从通过 Elephant Bird 加载的 json 数组中访问散列中的内容。
标签: json hadoop user-defined-functions apache-pig