2017-06-16 111 views
0

令人困惑的是,每个用于数据流的Google文档都说它现在基于Apache Beam,并将我引导到Beam网站。另外,如果我寻找github项目,我会看到谷歌数据流项目是空的,只是一切都去apache梁回购。现在说我需要创建一条管道,从我从Apache Beam读取的内容中,我会这样做:from apache_beam.options.pipeline_options但是,如果我使用google-cloud-dataflow,则会出现错误:no module named 'options',事实证明我应该使用from apache_beam.utils.pipeline_options。那么,看起来谷歌云数据流是与一个较旧的波束版本,并将被弃用?google-cloud-dataflow vs apache-beam

我应该选择哪一种开发我的数据流管道?

回答

1

结束了在Google Dataflow Release Notes

The Cloud Dataflow SDK distribution contains a subset of the Apache Beam ecosystem. This subset includes the necessary components to define your pipeline and execute it locally and on the Cloud Dataflow service, such as:

  • The core SDK
  • DirectRunner and DataflowRunner
  • I/O components for other Google Cloud Platform services

The Cloud Dataflow SDK distribution does not include other Beam components, such as:

  • Runners for other distributed processing engines

  • I/O components for non-Cloud Platform services

Version 2.0.0 is based on a subset of Apache Beam 2.0.0

0

发现答案是的,我已经测试GCP之外,当最近有这个问题。这个link帮助确定你需要什么,当谈到apache梁。如果你跑下面,你将没有GCP组件。

$ pip install apache-beam

如果你运行这个,但是你将所有的云组件。

$ pip install apache-beam[gcp]

顺便说一句,我用的是蟒蛇分布,几乎所有我的Python代码和包管理。自7/20/17起,您无法使用anaconda回购安装必要的GCP组件。希望能够与Continuum人员合作,不仅为Apache Beam解决问题,还解决Tensorflow问题。

相关问题