Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menjalankan pekerjaan Spark ETL dengan waktu startup yang berkurang
AWS Glueversi 2.0 dan yang lebih baru menyediakan infrastruktur yang ditingkatkan untuk menjalankan pekerjaan Apache Spark ETL (ekstrak, transformasi, dan muat) AWS Glue dengan waktu startup yang berkurang. Dengan berkurangnya waktu tunggu, insinyur data dapat lebih produktif dan meningkatkan interaktivitas mereka dengan AWS Glue. Varians yang berkurang dalam waktu mulai tugas dapat membantu Anda memenuhi atau melampaui SLA Anda dalam membuat data tersedia untuk analitik.
Untuk menggunakan fitur ini dengan pekerjaan AWS Glue ETL Anda, pilih 2.0
atau versi yang lebih baru untuk Glue version
saat membuat pekerjaan Anda.
Fitur baru yang didukung
Bagian ini menjelaskan fitur baru yang didukung dengan AWS Glue versi 2.0 dan yang lebih baru.
Support untuk menentukan modul Python tambahan di tingkat pekerjaan
AWS Glueversi 2.0 dan yang lebih baru juga memungkinkan Anda menyediakan modul Python tambahan atau versi berbeda di tingkat pekerjaan. Anda dapat menggunakan --additional-python-modules
dengan daftar modul Python yang dipisahkan koma untuk menambahkan modul baru atau mengubah versi dari modul yang ada.
Misalnya untuk memperbarui atau menambahkan modul scikit-learn
baru menggunakan nilai/kunci berikut: "--additional-python-modules", "scikit-learn==0.21.3"
.
Selain itu, dalam opsi --additional-python-modules
Anda dapat menentukan path Amazon S3 ke modul roda Python. Misalnya:
--additional-python-modules s3://aws-glue-native-spark/tests/j4.2/ephem-3.7.7.1-cp37-cp37m-linux_x86_64.whl,s3://aws-glue-native-spark/tests/j4.2/fbprophet-0.6-py3-none-any.whl,scikit-learn==0.21.3
AWS Glue menggunakan Python Package Installer (pip3) untuk menginstal modul tambahan. Anda dapat melewati opsi tambahan yang ditentukan oleh python-modules-installer-option
ke pip3 untuk memasang modul. Ketidakcocokan atau batasan apa pun dari pip3 akan berlaku.
Modul Python sudah disediakan di versi 2.0 AWS Glue
AWS Glue versi 2.0 mendukung modul python berikut secara siap pakai:
setuptools—45.2.0
subprocess32—3.5.4
ptvsd—4.3.2
pydevd—1.9.0
PyMySQL—0.9.3
docutils—0.15.2
jmespath—0.9.4
six—1.14.0
python_dateutil—2.8.1
urllib3—1.25.8
botocore—1.15.4
s3transfer—0.3.3
boto3—1.12.4
certifi—2019.11.28
chardet—3.0.4
idna—2.9
requests—2.23.0
pyparsing—2.4.6
enum34—1.1.9
pytz—2019.3
numpy—1.18.1
cycler—0.10.0
kiwisolver—1.1.0
scipy—1.4.1
pandas—1.0.1
pyarrow—0.16.0
matplotlib—3.1.3
pyhocon—0.3.54
mpmath—1.1.0
sympy—1.5.1
patsy—0.5.1
statsmodels—0.11.1
fsspec—0.6.2
s3fs—0.4.0
Cython—0.29.15
joblib—0.14.1
pmdarima—1.5.3
scikit-learn—0.22.1
tbats—1.0.9
Perilaku logging
AWS Glueversi 2.0 dan yang lebih baru mendukung perilaku logging default yang berbeda. Perbedaannya meliputi:
Pencatatan log terjadi secara realtime.
Ada pengaliran terpisah untuk driver dan pelaksana.
Untuk setiap driver dan pelaksana ada dua pengaliran, yanitu pengaliran output dan pengaliran kesalahan.
Aliran driver dan eksekutor
Pengaliran driver diidentifikasi berdasarkan ID eksekusi tugas. Pengaliran pelaksana diidentifikasi berdasarkan <id eksekusi tugas
>_<id pelaksana tugas
>. Misalnya:
"logStreamName": "jr_8255308b426fff1b4e09e00e0bd5612b1b4ec848d7884cebe61ed33a31789..._g-f65f617bd31d54bd94482af755b6cdf464542..."
Aliran keluaran dan kesalahan
Pengaliran output memiliki output standar (stdout) dari kode Anda. Pengaliran kesalahan memiliki pesan log dari kode/perpustakaan Anda.
Pengaliran log:
Pengaliran log driver memiliki <
jr
>, dimana <jr
> adalah ID eksekusi tugas.Pengaliran log pelaksana memiliki <
jr
>_<g
>, dimana <g
> adalah ID tugas untuk pelaksana. Anda dapat mencari ID tugas pelaksana di log kesalahan driver.
Grup log default untuk AWS Glue versi 2.0 adalah sebagai berikut:
/aws-glue/jobs/logs/output
untuk output/aws-glue/jobs/logs/error
untuk kesalahan
Ketika konfigurasi keamanan disediakan, nama grup log berubah menjadi:
/aws-glue/jobs/<
security configuration
>-role/<Role Name
>/output/aws-glue/jobs/<
security configuration
>-role/<Role Name
>/error
Pada konsol, tautan Log mengarahkan ke grup log output dan tautan Kesalahan mengarahkan ke grup log kesalahan. Ketika pencatatan log terus menerus diaktifkan, tautan Log mengarahkan ke grup log terus menerus, dan tautan Output mengarahkan ke grup log output.
Aturan pencatatan
catatan
Nama grup log default untuk pencatatan log terus-menerus adalah /aws-glue/jobs/logs-v2
.
Di AWS Glue versi 2.0 dan yang lebih baru, logging berkelanjutan memiliki perilaku yang sama seperti di AWS Glue versi 1.0:
Grup log default:
/aws-glue/jobs/logs-v2
Pengaliran log driver: <
jr
>-driverPengaliran log pelaksana: <
jr
>-<ID pelaksana
>Nama grup log dapat diubah dengan mengatur
--continuous-log-logGroupName
Nama pengaliran log dapat menggunakan prefiks dengan mengatur
--continous-log-logStreamPrefix
Fitur tidak didukung
Fitur AWS Glue berikut tidak didukung:
Titik akhir pengembangan
AWS Glueversi 2.0 dan yang lebih baru tidak berjalan di Apache YARN, jadi pengaturan YARN tidak berlaku
AWS Glueversi 2.0 dan yang lebih baru tidak memiliki Hadoop Distributed File System (HDFS)
AWS Glueversi 2.0 dan yang lebih baru tidak menggunakan alokasi dinamis, oleh karena itu ExecutorAllocationManager metrik tidak tersedia
Untuk AWS Glue versi 2.0 atau pekerjaan yang lebih baru, Anda menentukan jumlah pekerja dan jenis pekerja, tetapi tidak menentukan
maxCapacity
.-
AWS Glueversi 2.0 dan yang lebih baru tidak mendukung di
s3n
luar kotak. Kami merekomendasikan penggunaans3
ataus3a
. Jika tugas perlu menggunakans3n
untuk alasan apapun, Anda dapat memberikan argumen tambahan berikut:--conf spark.hadoop.fs.s3n.impl=com.amazon.ws.emr.hadoop.fs.EmrFileSystem