详解自定义类型的PCollection汇总的管道性能-属性的均值和中位数
来源:爱站网时间:2021-11-08编辑:网友分享
最近有不少小伙伴要爱站技术小编详解自定义类型的PCollection汇总的管道性能-属性的均值和中位数,小编今天花了半天的时间整理出了一份资料给大家参考,希望能帮助到大家。
最近有不少小伙伴要爱站技术小编详解自定义类型的PCollection汇总的管道性能-属性的均值和中位数,小编今天花了半天的时间整理出了一份资料给大家参考,希望能帮助到大家。
问题描述
我的Apache-Beam / Dataflow管道通过pub / sub事件构建自定义类型的键控PCollection。现在,预汇总输出为PCollection
。接下来,我需要汇总这些数据以用于报告。结构化对象的集合可能很大,因此如果我不小心的话,可能会发生内存不足的异常。
我在文档中看到可以使用Combine(Combine.globally with CombineFn)和CombineWithContext实用程序。但是,文档和代码示例仍然很少。
在我的管道的最后一步-我需要总结这些大的PCollection,但是它们是复杂的结构化对象,我不仅在计算均值。我还想计算某些属性的中位数。
我可以想象样本如何在N个工作实例之间工作。例如,框架必须在工作人员实例之间计算某种“加权平均值”。但这不适用于中位数。这是CombineWithContext的目的吗?是否应该使用带有侧面输入/输出的上下文来保持中值数组的状态?还是可以仅使用Combine.global来通过其他方式实现?
任何代码示例将不胜感激。
思路:
听起来好像需要ApproximateQuantile变换,如果可以确定近似中值。
还有另一种变换here,其提供的功能与基于更高级算法的功能相同。
以上内容就是爱站技术频道小编为大家分享的详解自定义类型的PCollection汇总的管道性能-属性的均值和中位数,看完以上分享之后,大家应该都知道均值和中位数是什么了吧。