如何最好地在sagemaker pyspark集群中安装依赖项

ecbunoof  于 2021-05-24  发布在  Spark
关注(0)|答案(0)|浏览(373)

我正在尝试使用新的sagemaker spark容器运行机器学习的处理作业。集群启动了,但我立即遇到了一个可怕的问题——我的依赖项丢失了。
我发现spark容器没有这些依赖项,我尝试按照上面概述的步骤来安装它们—也就是说,使用pysparkprocessor.run()中的submit\u py\u files参数来提交我所有依赖项的.zip文件。但是,它似乎没有安装它们。
有没有一种方法可以在集群启动时使用sagemaker pysparkprocessor类来执行引导脚本?我当前正在尝试运行一个使用UDF的处理工作负载,并在集群尝试使用pyarrow时看到importerror:

Traceback (most recent call last):
    File "/opt/ml/processing/input/code/spark_preprocess.py", line 35 in <module>
    @pandas_udf("float", PandasUDFType.GROUPED_AGG)
    File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/udf.py", line 47, in _create_udf
    File "/usr/lib/spark/python/lib/pyspark.zip/pyspark/sql/utils.py", line 149 in require_minimum_pyarrow_version
    ImportError: PyArrow >= 0.8.0 must be installed; however, it was not found.

dependencies.zip包含pyarrow 0.16.0,我使用的是最新版本的sagemaker python sdk。
我知道用emr你可以提交一个引导动作脚本来安装依赖项-这里有类似的选项吗?谢谢!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题