Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan versi Python yang berbeda dengan EMR Serverless
Selain kasus penggunaan diMenggunakan pustaka Python dengan EMR Tanpa Server, Anda juga dapat menggunakan lingkungan virtual Python untuk bekerja dengan versi Python yang berbeda dari versi yang dikemas dalam rilis EMR Amazon untuk aplikasi Amazon EMR Tanpa Server Anda. Untuk melakukan ini, Anda harus membangun lingkungan virtual Python dengan versi Python yang ingin Anda gunakan.
Untuk mengirimkan pekerjaan dari lingkungan virtual Python
-
Bangun lingkungan virtual Anda dengan perintah dalam contoh berikut. Contoh ini menginstal Python 3.9.9 ke dalam paket lingkungan virtual dan menyalin arsip ke lokasi Amazon S3.
penting
Jika Anda menggunakan Amazon EMR rilis 7.0.0 dan yang lebih tinggi, Anda harus menjalankan perintah Anda di lingkungan Amazon Linux 2023 yang mirip dengan yang Anda gunakan untuk aplikasi EMR Tanpa Server Anda.
Jika Anda menggunakan rilis 6.15.0 atau lebih rendah, Anda harus menjalankan perintah berikut di lingkungan Amazon Linux 2 yang serupa.
# install Python 3.9.9 and activate the venv yum install -y gcc openssl-devel bzip2-devel libffi-devel tar gzip wget make wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz && \ tar xzf Python-3.9.9.tgz && cd Python-3.9.9 && \ ./configure --enable-optimizations && \ make altinstall # create python venv with Python 3.9.9 python3.9 -m venv pyspark_venv_python_3.9.9 --copies source pyspark_venv_python_3.9.9/bin/activate # copy system python3 libraries to venv cp -r /usr/local/lib/python3.9/* ./pyspark_venv_python_3.9.9/lib/python3.9/ # package venv to archive. # **Note** that you have to supply --python-prefix option # to make sure python starts with the path where your # copied libraries are present. # Copying the python binary to the "environment" directory. pip3 install venv-pack venv-pack -f -o pyspark_venv_python_3.9.9.tar.gz --python-prefix /home/hadoop/environment # stage the archive in S3 aws s3 cp pyspark_venv_python_3.9.9.tar.gz s3://<path> # optionally, remove the virtual environment directory rm -fr pyspark_venv_python_3.9.9
-
Atur properti Anda untuk menggunakan lingkungan virtual Python dan kirimkan pekerjaan Spark.
# note that the archive suffix "environment" is the same as the directory where you copied the Python binary. --conf spark.archives=s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/pyspark_venv_python_3.9.9.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
Untuk informasi lebih lanjut tentang cara menggunakan lingkungan virtual Python untuk PySpark pekerjaan, lihat Menggunakan