我是dataflow的新手,我正在尝试使用pubsubIO.writeStrings()的apply方法向pub / sub写一些消息(" projects / market-place-sql / topics / emisiones")它说: []
答案 0 :(得分:1)
错误只是类型不匹配。 apply()
类的Pipeline
方法接受PTransform<? super PBegin,OutputT>
类型的第二个参数。
PubSubIO.writeStrings().to()
会返回PTransform<PCollection<T>,PDone>
类型。因此,类型不匹配。
根据错误的屏幕截图,p
似乎是Pipeline
个对象。您需要首先将输入转换应用于Pipeline
对象,该对象将返回PCollection
。然后拨打apply()
上的PCollection
。
示例:
p.apply("read from Pub/Sub", PubsubIO.readMessages().fromSubscription("subscription/path"))
.apply("write to Pub/Sub", PubsubIO.writeStrings().to("topic/path"));
p.run();