Apache Beam字段分区

时间:2017-11-30 08:22:19

标签: python apache-beam partition dataflow

我想在特定字段中使用Python在Apache Beam中对PCollection进行分区。

我在Python SDK文档中找到了以下代码,用于对

中的PCollection进行分区
students = ...
def partition_fn(student, num_partitions):
  return int(get_percentile(student) * num_partitions / 100)

by_decile = students | beam.Partition(partition_fn, 10)

但这不是我想要做的。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

“分区”不是您需要的正确转换。

您需要使用GroupByKey吗?

请注意,为了正常工作,必须确保要处理的元素必须成对。在这样的一对中,始终将firs元素视为要用于GroupByKey变换的键。

不需要其他参数。

就我而言,我有类似

的元组
(key, < list of dictionaries >)