云数据流Python:未能安装包:未能ins

2024-06-17 15:47:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试在DataflowRunner上测试我的数据流管道。我的代码总是在1小时1分钟时卡住,然后说:数据流似乎卡住了。在挖掘Dataflow stackdriver的堆栈跟踪时,我遇到了一个错误,即Failed to install packages: failed to install workflow: exit status 1。我看到其他堆栈溢出消息说,这可能是由于pip包不兼容造成的。这导致我的worker启动总是失败。在

这是我的电流设置.py. 有人能帮我理解我缺少什么吗。作业id为2018-02-09_08_22_34-6196858167817670597。在

设置.py

from setuptools import setup, find_packages


requires = [
            'numpy==1.14.0',
            'google-cloud-storage==1.7.0',
            'pandas==0.22.0',
            'sqlalchemy-vertica[pyodbc,turbodbc,vertica-python]==0.2.5',
            'sqlalchemy==1.2.2',
            'apache_beam[gcp]==2.2.0',
            'google-cloud-dataflow==2.2.0'
            ]

setup(
    name="dataflow_pipeline_dependencies",
    version="1.0.0",
    description="Beam pipeline for flattening ism data",
    packages=find_packages(),
    install_requires=requires
)

Tags: installtopycloudpipelinesqlalchemy堆栈packages
3条回答

我不是处理很多Python包以及如何管理所有版本、不兼容以及每个包的需求和需求的天才。在

但是,我可以读取错误消息。在

在您的例子中,消息显示“failed to install workflow”。在谷歌上快速搜索之后,我发现“workflow”实际上是一个Python包。在

因此,错误只是抱怨您没有安装workflow,并且它的尝试失败了。在

要解决此问题

  • 从这个PyPI链接安装workflow。这是谷歌给我看的最新版本。在

  • 做常规的pip install workflow。在

任何一种方法都应该安装所需的包。 一旦安装好,那个特定的错误信息就会消失。在

我希望这个答案对你有帮助!在

因此,我发现在本例中,工作流不是一个pypi包,而是由包含源代码的Dataflow创建的.tar的名称。数据流将压缩源代码并创建工作流.tar文件,然后它将尝试运行pip install工作流.tar. 如果这个安装过程中出现任何问题,它将无法将包安装到工人上。在

我的问题通过以下几点解决了:1)我在我的需求中添加了6==1.10.0,正如我从中发现的:工作流失败。原因:(35af2d4d3e5569e4):数据流似乎卡住了,最新版本的six有问题。2) 我意识到sqlalchemy vertica和sqlalchemy不同步,并且存在依赖版本问题。因此,我不再需要这两个,而是找到了一个不同的vertica客户。在

setup.py所需的包中包含“workflow”包。包含错误后解决。在

from setuptools import setup, find_packages


requires = [
            'numpy==1.14.0',
            'google-cloud-storage==1.7.0',
            'pandas==0.22.0',
            'sqlalchemy-vertica[pyodbc,turbodbc,vertica-python]==0.2.5',
            'sqlalchemy==1.2.2',
            'apache_beam[gcp]==2.2.0',
            'google-cloud-dataflow==2.2.0',
            'workflow' # Include this line
            ]

setup(
    name="dataflow_pipeline_dependencies",
    version="1.0.0",
    description="Beam pipeline for flattening ism data",
    packages=find_packages(),
    install_requires=requires
)

相关问题 更多 >