使用Python SDK在多个度量上运行组合器?

时间:2017-03-21 11:01:18

标签: google-cloud-dataflow

我正在努力寻找一个关于如何使用Google云数据流合并器来运行常见ETL tasl的真实世界示例,该ETL tasl聚合多个键上的记录(例如日期,位置)并对不同度量的值进行求和(例如GrossValue,NetValue ,数量)。我只能找到具有典型键/值(例如日/值)聚合的示例。关于如何使用Python SDK完成任何提示将不胜感激。

1 个答案:

答案 0 :(得分:0)

我不是100%确定我理解你的问题。您是否有试图将数据加入的单独元素,在这种情况下您可能希望使用CoGroupByKey?或者单个元素是否有多个字段?

希望这些信息有所帮助,

我建议查看windowing,这将允许您根据其各个元素的时间戳细分PCollection。如果您想查看特定日期的所有活动,这可能会有用。 Python examples of windowing。您可能想要浏览一天的数据。这个link也很有用,可以了解如何以不同的方式使用GroupByKey,

另一种选择是确定您的元素属于哪个日期,并使用按键分组来键入" [location] [date] [other]"。如果要基于多个字段加入数据,则可能需要执行此类操作。

请参阅此GroupByKey示例,但更改密钥以使用multiple fields concatenated

这是example for reducing with a custom combiner。您可以在此处添加逻辑,以便为多个不同的测量执行自定义聚合。