我使用Google Cloud Dataflow处理绑定的数据并输出到BigQuery,我希望它可以处理某些内容并编写一些内容(例如流,而不是批处理),有什么办法可以做到这一点?
当前,Dataflow将等待工作进程不处理所有数据,并写入BigQuery,我尝试添加FixedWindow并使用Log Timestamp参数作为window_timestamp,但是它不起作用。
我想知道:
窗口化是解决此问题的正确方法吗?
BigQueryIO是真正写批处理还是只是不显示在我的仪表板上(后台写流?)
有什么需要的吗?
我的源代码在这里:http://pastie.org/10907947
非常感谢你!
最佳答案
您需要在streaming
中将true
属性设置为PipelineOptions
。
有关更多信息,请参见"streaming execution"。
另外,您将需要使用可以生成/使用无限制数据的源/接收器。 BigQuery已经可以在两种模式下写入,但是当前TextIO仅读取有界数据。但是绝对有可能编写一个自定义的无界源,该源将扫描目录中的新文件。