我有两个csv文件-我想在数据流中完全连接
我读作PCollection的两个csv文件
csv1型
列A | B | C | D | E
csv2型
列A | B | C | F | G
我需要根据键A,B
加入两个p集合,得到如下所示的p集合
列A | B | C | D | E | F | G
试验1
{'left': P_collection_1, 'right': P_collection_2}
| ' Combine' >> beam.CoGroupByKey()
| ' ExtractValues' >> beam.Values()
这基本上类似于sql中的完全联接
我相信您确实可以使用CoGroupBykey:
将Apache Beam Programming guide的电话和电子邮件示例应用到您的案例中,您可以尝试为CoGroupByKey提供一个PCollection“C,D,E”,键入“a,B”和“F,G”的PCollection,同时键入“a,B”
为了更清楚一点,每个PCollection中的元素必须是元组,第一个元素是'a,B'键,第二个元素是'C,D,E'或'F,G'值:
(PCollection符号仅用于说明)
然后我们会申请:
^{pr2}$根据编程指南,结果应为:
^{3}$如果A和B在同一个文件中多次取值2,4,这应该不是问题,我们应该在CDE或FG中有多个值。在
相关问题 更多 >
编程相关推荐