Google cloud dataflow 数据流工作:组合函数

Google cloud dataflow 数据流工作:组合函数,google-cloud-dataflow,Google Cloud Dataflow,我有多个自定义联合收割机功能,我将其称为: e、 g.我有之前在管道中计算的“数据” cd1 = data | customCombFn1() cd2 = data | customCombFn2() cd3 = data | customCombFn3() 在上述情况下,管道是如何工作的?是否反复评估“数据”?或者将cd1、cd2和cd3作为管道的副产品进行评估?您的数据对象是一个PCCollection。在PCollection上应用组合转换将创建另一个PCollection,通常包含的元

我有多个自定义联合收割机功能,我将其称为:

e、 g.我有之前在管道中计算的“数据”

cd1 = data | customCombFn1()
cd2 = data | customCombFn2()
cd3 = data | customCombFn3()

在上述情况下,管道是如何工作的?是否反复评估“数据”?或者将
cd1
cd2
cd3
作为管道的副产品进行评估?

您的
数据
对象是一个PCCollection。在PCollection上应用组合转换将创建另一个PCollection,通常包含的元素要少得多

不会有你所说的“重新评估”。PCollection通常由多个工作人员生成,并立即被需要它的转换使用。如果在给定情况下不可能这样做,则通常会存储PCollection以供稍后处理


一般来说,云数据流服务会自动对用户的管道进行优化。在大多数情况下,包括本例,它允许用户关注其业务逻辑,而不是底层的执行注意事项。

您的
数据
对象是一个PCollection。在PCollection上应用组合转换将创建另一个PCollection,通常包含的元素要少得多

不会有你所说的“重新评估”。PCollection通常由多个工作人员生成,并立即被需要它的转换使用。如果在给定情况下不可能这样做,则通常会存储PCollection以供稍后处理


一般来说,云数据流服务会自动对用户的管道进行优化。在大多数情况下,包括本例,它允许用户关注其业务逻辑,而不是底层的执行考虑。

因此,作为dict聚合器,club customCombFn1、customCombFn2和customCombFn3没有固有的优化,对吗?是否有任何报纸或博客对此进行了描述?我假设上面的代码类似于遍历完整数据三次,因为我有三个联合操作。它比这更复杂。数据流服务根据管道结构应用几种类型的优化。有时,联合收割机转换的一部分被“提升”到管道的前面部分,或者重新排序,或者以其他方式进行优化。一般来说,我们会尝试尽快执行合并转换,因为这会减少数据量,并通常会加快管道速度。因此,作为dict聚合器,club customCombFn1、customCombFn2和customCombFn3没有固有的优化,对吗?是否有任何报纸或博客对此进行了描述?我假设上面的代码类似于遍历完整数据三次,因为我有三个联合操作。它比这更复杂。数据流服务根据管道结构应用几种类型的优化。有时,联合收割机转换的一部分被“提升”到管道的前面部分,或者重新排序,或者以其他方式进行优化。通常,我们会尝试尽快执行合并转换,因为这样可以减少数据量,并通常加快管道的速度。