我想在特定字段中使用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)
但这不是我想要做的。有没有办法做到这一点?
答案 0 :(得分:0)
“分区”不是您需要的正确转换。
您需要使用GroupByKey吗?
请注意,为了正常工作,必须确保要处理的元素必须成对。在这样的一对中,始终将firs元素视为要用于GroupByKey变换的键。
不需要其他参数。
就我而言,我有类似
的元组(key, < list of dictionaries >)