有什么方法可以让Cloud Dataflow输出像stream一样?

时间:2016-07-15 09:30:59

标签: java google-bigquery google-cloud-platform google-cloud-dataflow

我使用Google Cloud Dataflow处理绑定数据并输出到BigQuery,我希望它可以处理某些内容并编写内容(如流,而不是批处理),我有什么方法可以做到这一点?

目前,Dataflow会等待工作进程没有所有数据,并写入BigQuery,我尝试添加FixedWindow并使用Log Timestamp参数作为window_timestamp,但它不起作用。

我想知道:

  1. 是否正确处理此问题?
  2. BigQueryIO是真的写批处理还是只是不显示在我的仪表板上(后台写入流?)
  3. 我需要任何方式吗?
  4. 我的源代码在这里:http://pastie.org/10907947

    非常感谢!

1 个答案:

答案 0 :(得分:3)

您需要在streaming中将true属性设置为PipelineOptions

有关详细信息,请参阅"streaming execution"

此外,您还需要使用可生成/使用无界数据的源/接收器。 BigQuery已经可以在两种模式下编写,但目前TextIO只能读取有界数据。但是,编写一个自定义的无限制源来扫描目录中的新文件绝对是可能的。