管道代码跨越Apache Beam / Dataflow中的多个文件

时间:2017-12-15 17:48:45

标签: python google-cloud-dataflow apache-beam

经过漫长的搜索,我还没有找到一个跨越多个文件的数据流/光束管道示例。 Beam文档执行suggest a file structure(在"多文件依赖关系"部分下),但他们提供的Juliaset示例实际上是a single code/source文件(以及调用它的main file )。基于Juliaset示例,我需要一个类似的文件结构:

juliaset/__init__.py
juliaset/juliaset.py # actual code
juliaset/some_conf.py
__init__.py
juliaset_main.py
setup.py

现在我希望来自import .some_conf的{​​{1}},它在本地运行时有效,但在Dataflow上运行时会出现错误

juliaset/juliaset.py

非常感谢一个完整的工作示例!

1 个答案:

答案 0 :(得分:1)

您可以验证包含以下结构的setup.py

import setuptools

setuptools.setup(
    name='My Project',
    version='1.0',
    install_requires=[],
    packages=setuptools.find_packages(),
)

导入您的模块,例如from juliaset.juliaset import SomeClass

当您调用Python脚本时,请使用python -m juliaset_main(不带.py)

不确定您是否已经尝试过此操作,但只是为了确定。