hadoop - apache pig 中 Union 和 Join 的组合

标签 hadoop apache-pig

我在 hdfs 中有两个文件,其中包含如下数据,File1:

id,name,age
1,x1,15
2,x2,14
3,x3,16

文件2:

id,name,grades
1,x1,A
2,x2,B
4,y1,A
5,y2,C

我想产生以下输出:

id,name,age,grades
1,x1,15,A
2,x2,14,B
3,x3,16,
4,y1,,A
5,y2,,C

我正在使用Apache Pig来执行操作,是否可以在pig.txt中获得上述输出。这是一种联合和加入。

最佳答案

由于您可以在 Pig 中进行联合和加入,这当然是可能的。

无需深入研究确切的语法,我可以告诉您这应该可行(过去使用过类似的解决方案)。

  1. 假设我们有 A 和 B。
  2. 取A和B的前两列为A2和B2
  3. 将 A2 和 B2 合并为 M2
  4. 独特的 M2

现在您已经有了“索引”矩阵,我们只需添加额外的列即可。

  • 将 M2 与 A 和 B 左连接
  • 生成相关列
  • 就是这样!

    关于hadoop - apache pig 中 Union 和 Join 的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39221873/

    相关文章:

    java - 比较 MapReduce 性能

    scala - 如何从Spark中的Hbase表读取数据?

    hadoop - Druid 批量索引 inputSpec 类型粒度,错误为 "no input paths specified in job"

    hadoop - 处理 pig 中的刺分隔符

    java - Avro Schema Evolution With GenericData.Record - Mapreduce 过程

    java - 在 Pig 中运行 UDF 时出错

    hadoop - 使用 Flume 将数据从 kafka 摄取到 HDFS::ConfigurationException:必须指定 Bootstrap 服务器

    hadoop - Google Cloud Platform 杀死 MapReduce 作业容器 [错误代码 :143]

    python - 元组中的元素到 Bag Pig 中的元组

    hadoop - 处理来自Apache Pig的PST文件