hadoop - Pig:访问内部元组的字段进行过滤

我有这样的a custom Pig loader:

A = LOAD 'myfile' USING myudf_loader()
A包含:
((key1, val1), (key2, val2), (key3, val3), ...)

也就是说A具有一个外部元组,其中包含存储在内部元组中的键值对。

我不使用 map ,因为 map 需要key values within a relation must be unique。我拥有的键不一定必须是唯一的。

键为chararrays,而值可以为chararraysintsfloats

我想访问A的内部元组,以及这些元组中的(键,值)对。

例如,我想FILTER A的键,以便剩下的唯一字段是key = "city"value = "New York City"

输入示例:
DUMP A;
(("city", "New York City"), ("city", "Boston"),
 ("city", "Washington, D.C."), ("non-city-key", "non-city-value"),
 ("city", "New York City"), ("non-city-key", "non-city-value"))

过滤的示例输出,存储在B中:
DUMP B;
("city", "New York City")
("city", "New York City")

最佳答案

我没有完整的 pig 拉丁文字。

但是您可以使用以下思路实现

grouped_records = GROUP records By Key;

filtered_records = FILTER grouped_records By group='CITY'

Dump filtered_records

干杯
唠叨

https://stackoverflow.com/questions/24337117/

相关文章:

docker - 运行openshift/origin docker时出错:运行 'chcon'来设

docker - Docker:对apache虚拟主机进行Docker化

amazon-web-services - 如何为Docker注册日志记录驱动程序?

amazon-web-services - 我可以安排Docker在特定时间在Amazon ECS上

amazon-web-services - 如何使用 Amazon ECS 从 Tutum 私有(p

docker - 是 "docker start"完全恢复由 "docker run"启动的所有正在

nginx - 为什么Docker https-portal的 “See It Work”部分给我一

spring - Docker-compose从链接迁移到网络MongoDB数据库问题

makefile - 获取刚刚生成的图像的ID

logging - Dockerized Kibana外部化日志