尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Python 库与 EMR Serverless 结合使用

Python 库与 EMR Serverless 结合使用 此篇章归属于借助机器进行翻译而得来的版本, 要是当前翻译而成的内容相较于英文原本的内容存有不同之处, 那么一概是以英文原本的内容作为标准的。将 库与 EMR 结合使用运行作业于EMR无服务器应用程序之上时, 要把各类库打包成依赖项。为达成此目的所采用的方式有, 运用原生功能, 构建虚拟环境, 或者直接把作业配置成使用库。本页将这每一种方法都涵盖了。使用 原生功能在进行如下配置的设置期间, 运用 将 文件.py、经压缩的包.zip以及 Egg 文件.egg上传至 Spark 执行器中。--conf spark.submit.pyFiless3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/.py|.egg|.zip file如需了解, 关于怎样运用虚拟环境来开展作业所具备的更多详尽信息, 可进行查阅。在使用EMR之际, 你能够借由去执行下面这般代码, 从而致使依赖项于其中变得可用:%%configure -f { conf: { spark.submit.pyFiles:s3:///amzn-s3-demo-bucket/EXAMPLE-PREFIX/.py|.egg|.zip file} }构建 虚拟环境要为一项 作业打包多个 库请创建隔离的 虚拟环境。想构建虚拟环境, 那就得运用以下命令。所展示的示例会把scipy以及包安装至虚拟环境包里头, 并且会把存档拷贝到S3位置。您得在如同的Linux 2环境里运行下面这些命令, 且要使用跟EMR里所运用版本一样的, 也就是适配于EMR 6.6.0的3.7.10。您能够在EMR无服务器示例存储库里找到示例。# initialize a python virtual environment python3 -m venv pyspark_venvsource source pyspark_venvsource/bin/activate # optionally, ensure pip is up-to-date pip3 install --upgrade pip # install the python packages pip3 install scipy pip3 install matplotlib # package the virtual environment into an archive pip3 install venv-pack venv-pack -f -o pyspark_venv.tar.gz # copy the archive to an S3 location aws s3 cp pyspark_venv.tar.gz s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/ # optionally, remove the virtual environment directory rm -fr pyspark_venvsource提交 Spark 作业并将属性设置为使用 虚拟环境。--conf spark.archivess3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/pyspark_venv.tar.gz#environment --conf spark.emr-serverless.driverEnv.PYSPARK_DRIVER_PYTHON./environment/bin/python --conf spark.emr-serverless.driverEnv.PYSPARK_PYTHON./environment/bin/python --conf spark.executorEnv.PYSPARK_PYTHON./environment/bin/python要留意, 倘若不把原始的二进制文件给覆盖掉, 那么在前面所设置出来的序列当中, 第二个配置将会是 --..。关于怎样运用虚拟环境来开展作业的更多资讯, 敬请查阅。关于怎样递交Spark作业的更多范例, 敬请查阅在运行EMR作业之时运用Spark配置这一参考内容。将 作业配置为使用 库在EMR 6.12.0这个版本以及比其更高的版本当中, 您能够直接把EMR无服务器作业配置成去使用类似这样流行的数据科学库, 并不需要采取任何其他的设置。以下示例演示如何为 作业打包每个 库。NumPy旨在进行科学计算的库是 NumPy, 它针对数学、排序、随机模拟以及基本统计, 提供多维数组与运算, 若要运用 NumPy, 需运行如下命令:import numpy存在着一个以它作为基础的库, NumPy熊猫图书馆为数据科学家供给了数据结构以及数据分析工具, 若要进行使用, 需运行以下命令:import pandas它是一种专门的库, 该库的作用在于内存中对列式数据予以管理, 以此来提升工作性能。它是依照Arrow跨语言开发规范构建的, 而这一规范, 是一种将数据以列式格式去呈现以及交换的标准方式。若要针对其进行使用, 那么请运行下面这条命令:import pyarrow
返回列表