我们通过实验发现,在数据流/Apache Beam管道中设置明确的输出碎片会导致性能更差。我们的证据表明,数据流最终会秘密地执行另一个GroupBy。 我们已经开始让数据流自动选择#个碎片(碎片=0)。但是,对于某些管道,这会导致大量相对较小的输出文件(约15K个文件,每个<1MB)。
是否可以向数据流发送关于输出的预期大小的提示,以便它可以相应地扩展?我们注意到,这个问题主要发生在输入数据集非常大而输出小得多的情况下。
我们正在使用Apache Beam Python 2.2。
Dataflow/Apache Beam中不支持这种类型的提示。一般来说,Dataflow和Apache Beam被设计为尽可能“无旋钮”,原因如下: