我正在尝试创建聚合器来计算满足所有输入数据条件的值 . 我查看了文档,发现了下面的创建 .
https://cloud.google.com/dataflow/java-sdk/JavaDoc/com/google/cloud/dataflow/sdk/transforms/Aggregator ..
我正在使用:google-cloud-dataflow-java-sdk-all - 2.4.0(基于apache beam)
但是我无法在新的光束api中找到相应的类 . 我查看了org.apache.beam.sdk.transforms包 .
能告诉我如何在新api中使用带有dataflow runner的聚合器 . ?
您拥有的链接是旧SDK(1.x) .
在SDK 2.x中,您应该参考 apache-beam SDK . 对于你提到的 Aggregators ,如果我理解正确,那就是在处理过程中添加计数器 . 我猜相应的package应该是 org.apache.beam.sdk.metrics .
apache-beam
Aggregators
org.apache.beam.sdk.metrics
包org.apache.beam.sdk.metrics指标允许导出有关管道执行的信息 .
和 org.apache.beam.sdk.metrics.Counter 界面:
org.apache.beam.sdk.metrics.Counter
报告单个长值并可递增或递减的度量标准 .
截至目前,似乎没有替代Apache Beam SDK 2.X中的Aggregator类 . 计算关于条件的值的替代解决方案是Transforms . 通过使用GroupBy变换来收集满足条件的数据,然后使用Combine变换,您可以获得关于条件的输入数据的计数 .
2 回答
您拥有的链接是旧SDK(1.x) .
在SDK 2.x中,您应该参考
apache-beam
SDK . 对于你提到的Aggregators
,如果我理解正确,那就是在处理过程中添加计数器 . 我猜相应的package应该是org.apache.beam.sdk.metrics
.和
org.apache.beam.sdk.metrics.Counter
界面:截至目前,似乎没有替代Apache Beam SDK 2.X中的Aggregator类 . 计算关于条件的值的替代解决方案是Transforms . 通过使用GroupBy变换来收集满足条件的数据,然后使用Combine变换,您可以获得关于条件的输入数据的计数 .