Apache Beam-如何从无边界的PCollection中创建有边界的PCollection?

时间:2018-07-26 19:25:08

标签: apache-beam

出于调试目的,我希望能够将无界的PCollection变成有界的PCollection。有没有简单的方法?在我看来,这样做尤其可以强制完成管道。

我认为,Sample.any()(这里的Javadoc:https://beam.apache.org/documentation/sdks/javadoc/2.5.0/org/apache/beam/sdk/transforms/Sample.html#any-long-)将是我所需要的,但是PTransform似乎并没有改变管道的边界。

编辑:我尝试了the-hbar-tender的建议,但无法使其生效。这是我尝试的方法:

BoundedReadFromUnboundedSource brfus = unbounded.withMaxNumRecords(10);

...将会像这样创建无界:

Read.Unbounded unbounded = new Read.Unbounded("some name", pubsubUnboundedSource);

...此处将创建pubsubUnboundedSource的地方:

PubsubUnboundedSource pubsubUnboundedSource = PubsubUnboundedSource(pubsubClientFactory, projectValueProvider, topicValueProvider, subscriptionValueProvider, "some timestamp attribute", "some id attribute", true)

...但是pubsubClientFactory无法实例化,因为PubsubClient不是公共的。我放弃了。也许还有另一种方法可以解决这个问题。

0 个答案:

没有答案