

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan parameter pekerjaan dalam pekerjaan AWS Glue
<a name="aws-glue-programming-etl-glue-arguments"></a>

Saat membuat pekerjaan AWS Glue, Anda menetapkan beberapa bidang standar, seperti `Role` dan`WorkerType`. Anda dapat memberikan informasi konfigurasi tambahan melalui `Argument` bidang (**Parameter Pekerjaan** di konsol). Di bidang ini, Anda dapat memberikan pekerjaan AWS Glue dengan argumen (parameter) yang tercantum dalam topik ini. 

 Untuk informasi selengkapnya tentang AWS Glue Job API, lihat[Lowongan](aws-glue-api-jobs-job.md). 

**catatan**  
 Argumen Job memiliki batas ukuran maksimum 260KB. Pemeriksaan validasi akan memunculkan kesalahan jika ukuran argumen lebih besar dari 260KB. 



## Mengatur parameter pekerjaan
<a name="w2aac37c11b8c11"></a>

Anda dapat mengonfigurasi pekerjaan melalui konsol di tab **Detail pekerjaan**, di bawah judul **Parameter Pekerjaan**. Anda juga dapat mengonfigurasi pekerjaan AWS CLI melalui pengaturan `DefaultArguments` atau `NonOverridableArguments` pekerjaan, atau pengaturan `Arguments` pada pekerjaan. Argumen yang ditetapkan pada pekerjaan akan diteruskan setiap kali pekerjaan dijalankan, sedangkan argumen yang ditetapkan pada job run hanya akan diteruskan untuk menjalankan individu tersebut. 

Misalnya, berikut ini adalah sintaks untuk menjalankan pekerjaan menggunakan `--arguments` untuk menetapkan parameter pekerjaan.

```
$ aws glue start-job-run --job-name "CSV to CSV" --arguments='--scriptLocation="s3://my_glue/libraries/test_lib.py"'
```

## Mengakses parameter pekerjaan
<a name="w2aac37c11b8c13"></a>

Saat menulis skrip AWS Glue, Anda mungkin ingin mengakses nilai parameter pekerjaan untuk mengubah perilaku kode Anda sendiri. Kami menyediakan metode pembantu untuk melakukannya di perpustakaan kami. Metode ini menyelesaikan nilai parameter job run yang mengesampingkan nilai parameter pekerjaan. Saat menyelesaikan parameter yang ditetapkan di beberapa tempat, job `NonOverridableArguments` akan menggantikan job run`Arguments`, yang akan menggantikan job. `DefaultArguments`

**Dengan Python:**

Dalam pekerjaan Python, kami menyediakan fungsi bernama. `getResolvedParameters` Untuk informasi selengkapnya, lihat [Mengakses parameter menggunakan `getResolvedOptions`](aws-glue-api-crawler-pyspark-extensions-get-resolved-options.md). Parameter Job tersedia dalam `sys.argv` variabel.

**Dalam Scala:**

Dalam pekerjaan Scala, kami menyediakan objek bernama`GlueArgParser`. Untuk informasi selengkapnya, lihat [AWS GlueScala GlueArgParser APIs](glue-etl-scala-apis-glue-util-glueargparser.md). Parameter Job tersedia dalam `sysArgs` variabel.

## Referensi parameter Job
<a name="job-parameter-reference"></a>

**AWS Glue mengenali nama argumen berikut yang dapat Anda gunakan untuk mengatur lingkungan skrip untuk pekerjaan dan pekerjaan Anda:**

**`--additional-python-modules`**  
 Daftar dibatasi koma yang mewakili satu set paket Python yang akan diinstal. Anda dapat menginstal paket dari PyPI atau menyediakan distribusi khusus. Entri paket PyPI akan dalam format`{{package}}=={{version}}`, dengan nama PyPI dan versi paket target Anda. Entri distribusi kustom adalah jalur S3 ke distribusi.  
Entri menggunakan pencocokan versi Python untuk mencocokkan paket dan versi. Ini berarti Anda harus menggunakan dua tanda yang sama, seperti`==`. Ada operator pencocokan versi lain, untuk informasi lebih lanjut lihat [PEP 440](https://peps.python.org/pep-0440/#version-matching).   
Untuk meneruskan opsi instalasi modul ke`pip3`, gunakan [--python-modules-installer-option](#python-modules-installer-option) parameter.

**`--auto-scale-within-microbatch`**  
Nilai default-nya adalah betul. Parameter ini hanya dapat digunakan untuk pekerjaan streaming AWS Glue, yang memproses data streaming dalam serangkaian batch mikro, dan penskalaan otomatis harus diaktifkan. Saat menyetel nilai ini ke false, nilai ini menghitung rata-rata pergerakan eksponensial durasi batch untuk batch mikro yang diselesaikan dan membandingkan nilai ini dengan ukuran jendela untuk menentukan apakah akan meningkatkan atau menurunkan jumlah pelaksana. Penskalaan hanya terjadi ketika batch mikro selesai. Saat menyetel nilai ini ke true, selama batch mikro, nilai ini meningkat ketika jumlah tugas Spark tetap sama selama 30 detik, atau pemrosesan batch saat ini lebih besar dari ukuran jendela. Jumlah eksekutor akan turun jika eksekutor telah menganggur selama lebih dari 60 detik, atau rata-rata pergerakan eksponensial durasi batch rendah. 

**`--class`**  
Kelas Scala yang berfungsi sebagai titik masuk untuk skrip Scala Anda. Ini hanya berlaku jika `--job-language` Anda diatur ke `scala`.

**`--continuous-log-conversionPattern`**  
Menentukan pola log konversi kustom untuk pekerjaan yang diaktifkan untuk logging berkelanjutan. Pola konversi hanya berlaku untuk log driver dan log pelaksana saja. Itu tidak mempengaruhi bilah kemajuan AWS Glue.

**`--continuous-log-logGroup`**  
Menentukan nama grup CloudWatch log Amazon kustom untuk pekerjaan yang diaktifkan untuk logging berkelanjutan.

**`--continuous-log-logStreamPrefix`**  
 Menentukan awalan aliran CloudWatch log kustom untuk pekerjaan diaktifkan untuk logging berkelanjutan.

**`--customer-driver-env-vars` dan `--customer-executor-env-vars`**  
Parameter ini mengatur variabel lingkungan pada sistem operasi masing-masing untuk setiap pekerja (driver atau pelaksana). Anda dapat menggunakan parameter ini saat membangun platform dan kerangka kerja khusus di atas AWS Glue, untuk memungkinkan pengguna Anda menulis pekerjaan di atasnya. Mengaktifkan dua flag ini akan memungkinkan Anda untuk mengatur variabel lingkungan yang berbeda pada driver dan eksekutor masing-masing tanpa harus menyuntikkan logika yang sama dalam skrip pekerjaan itu sendiri.   
**Contoh penggunaan**  
Berikut ini adalah contoh penggunaan parameter ini:

```
"—customer-driver-env-vars", "CUSTOMER_KEY1=VAL1,CUSTOMER_KEY2=\"val2,val2 val2\"",
"—customer-executor-env-vars", "CUSTOMER_KEY3=VAL3,KEY4=VAL4"
```
Menyetel ini dalam argumen job run sama dengan menjalankan perintah berikut:  
Di pengemudi:  
+ ekspor KEY1 pelanggan\_ = VAL1
+ ekspor PELANGGAN\_ KEY2 = “val2, val2 val2"
Dalam pelaksana:  
+ ekspor KEY3 pelanggan\_ = VAL3
Kemudian, dalam skrip pekerjaan itu sendiri, Anda dapat mengambil variabel lingkungan menggunakan `os.environ.get("CUSTOMER_KEY1")` atau`System.getenv("CUSTOMER_KEY1")`.   
**Sintaks yang ditegakkan**  
Perhatikan standar berikut saat mendefinisikan variabel lingkungan:
+ Setiap kunci harus memiliki`CUSTOMER_ prefix`.

  Misalnya: for`"CUSTOMER_KEY3=VAL3,KEY4=VAL4"`, `KEY4=VAL4` akan diabaikan dan tidak disetel.
+ Setiap pasangan kunci dan nilai harus digambarkan dengan koma tunggal.

  Misalnya: `"CUSTOMER_KEY3=VAL3,CUSTOMER_KEY4=VAL4"`
+ Jika “nilai” memiliki spasi atau koma, maka itu harus didefinisikan dalam kutipan.

  Misalnya: `CUSTOMER_KEY2=\"val2,val2 val2\"`
Sintaks ini secara dekat memodelkan standar pengaturan variabel lingkungan bash.

**`--datalake-formats` **  
Didukung di AWS Glue 3.0 dan versi yang lebih baru.  
Menentukan kerangka data lake untuk digunakan. AWS Glue menambahkan file JAR yang diperlukan untuk kerangka kerja yang Anda tentukan ke dalam. `classpath` Untuk informasi selengkapnya, lihat [Menggunakan kerangka kerja data lake dengan pekerjaan AWS Glue ETL](aws-glue-programming-etl-datalake-native-frameworks.md).  
Anda dapat menentukan satu atau lebih dari nilai-nilai berikut, dipisahkan dengan koma:  
+ `hudi`
+ `delta`
+ `iceberg`
Misalnya, berikan argumen berikut untuk menentukan ketiga kerangka kerja.  

```
'--datalake-formats': 'hudi,delta,iceberg'
```

**`--disable-proxy-v2`**  
 Nonaktifkan proxy layanan untuk mengizinkan panggilan AWS layanan ke Amazon S3, CloudWatch, dan AWS Glue yang berasal dari skrip Anda melalui VPC Anda. Untuk informasi selengkapnya, lihat [Mengonfigurasi AWS panggilan untuk melalui VPC Anda](https://docs.aws.amazon.com/glue/latest/dg/connection-VPC-disable-proxy.html). Untuk menonaktifkan proxy layanan, atur nilai paramater ini ke`true`.

**`--enable-auto-scaling`**  
Mengaktifkan penskalaan otomatis dan penagihan per pekerja saat Anda menetapkan nilainya. `true`

**`--enable-continuous-cloudwatch-log`**  
Memungkinkan pencatatan berkelanjutan real-time untuk pekerjaan AWS Glue. Anda dapat melihat log pekerjaan Apache Spark real-time. CloudWatch

**`--enable-continuous-log-filter`**  
Menentukan filter standar (`true`) atau tidak ada filter (`false`) saat Anda membuat atau mengedit pekerjaan diaktifkan untuk logging berkelanjutan. Memilih filter standar memangkas pesan log detak jantung Apache Spark driver/executor dan Apache Hadoop YARN yang tidak berguna. Memilih tanpa filter akan memberikan semua pesan log.

**`--enable-glue-datacatalog`**  
Memungkinkan Anda menggunakan Katalog Data AWS Glue sebagai metastore Apache Spark Hive. Untuk mengaktifkan fitur ini, atur nilainya ke`true`.

**`--enable-job-insights`**  
Mengaktifkan pemantauan analisis kesalahan tambahan dengan wawasan AWS Glue job run. Lihat perinciannya di [Pemantauan dengan wawasan menjalankan AWS Glue pekerjaan](monitor-job-insights.md). Secara default, nilai disetel ke `true` dan wawasan job run diaktifkan.  
Opsi ini tersedia untuk AWS Glue versi 2.0 dan 3.0.

**`--enable-lakeformation-fine-grained-access`**  
Mengaktifkan kontrol akses berbutir halus untuk pekerjaan Glue AWS . Untuk informasi selengkapnya, lihat [Menggunakan AWS Glue dengan AWS Lake Formation kontrol akses berbutir halus](security-lf-enable.md).

**`--enable-metrics`**  
Mengaktifkan pengumpulan metrik untuk pembuatan profil pekerjaan untuk menjalankan pekerjaan ini. Metrik ini tersedia di konsol AWS Glue dan CloudWatch konsol Amazon. Nilai parameter ini tidak relevan. Untuk mengaktifkan fitur ini, Anda dapat memberikan parameter ini dengan nilai apa pun, tetapi `true` disarankan untuk kejelasan. Untuk menonaktifkan fitur ini, hapus parameter ini dari konfigurasi pekerjaan Anda.

**`--enable-observability-metrics`**  
 Mengaktifkan satu set metrik Observability untuk menghasilkan wawasan tentang apa yang terjadi di dalam setiap pekerjaan yang dijalankan di halaman Job Runs Monitoring di bawah AWS Glue console dan konsol. Amazon CloudWatch Untuk mengaktifkan fitur ini, atur nilai parameter ini ke true. Untuk menonaktifkan fitur ini, atur ke `false` atau hapus parameter ini dari konfigurasi pekerjaan Anda. 

**`--enable-rename-algorithm-v2`**  
Menetapkan EMRFS mengubah nama algoritma versi ke versi 2. Ketika tugas Spark menggunakan mode menimpa partisi dinamis, ada kemungkinan bahwa sebuah partisi duplikat yang dibuat. Misalnya, Anda dapat berakhir dengan partisi duplikat seperti `s3://bucket/table/location/p1=1/p1=1`. Di sini, P1 adalah partisi yang sedang ditimpa. Mengubah nama algoritme versi 2 akan memperbaiki masalah ini.  
Opsi ini hanya tersedia di AWS Glue versi 1.0.

**`--enable-s3-parquet-optimized-committer`**  
Mengaktifkan committer yang dioptimalkan EMRFS S3 untuk menulis data Parket ke Amazon S3. Anda dapat memasok parameter/value pasangan melalui konsol AWS Glue saat membuat atau memperbarui pekerjaan AWS Glue. Mengatur nilai ke **true** akan mengaktifkan committer. Secara default, bendera dihidupkan di AWS Glue 3.0 dan dimatikan di AWS Glue 2.0.  
Untuk informasi selengkapnya, lihat [Menggunakan Committer yang Dioptimalkan-S3 EMRFS](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-s3-optimized-committer.html).

**`--enable-spark-ui`**  
Saat diatur ke`true`, aktifkan fitur untuk menggunakan Spark UI untuk memantau dan men-debug pekerjaan AWS Glue ETL.

**`--executor-cores`**  
Jumlah tugas percikan yang dapat berjalan secara paralel. Opsi ini didukung pada AWS Glue 3.0\+. Nilai tidak boleh melebihi 2x jumlah v CPUs pada tipe pekerja, yaitu 8 on, 16 on`G.1X`, 32 on`G.2X`, 64 on`G.4X`, 96 on`G.8X`, 128 on `G.12X``G.16X`, dan 8 on`R.1X`, 16 on`R.2X`, 32 on`R.4X`, 64 on`R.8X`. Anda harus berhati-hati saat memperbarui konfigurasi ini karena dapat memengaruhi kinerja pekerjaan karena peningkatan paralelisme tugas menyebabkan memori, tekanan disk, serta dapat menghambat sistem sumber dan target (misalnya: ini akan menyebabkan lebih banyak koneksi bersamaan di Amazon RDS).

**`--extra-files`**  
Amazon S3 melakukan path ke file tambahan, seperti file konfigurasi yang AWS Glue salin ke direktori kerja skrip Anda pada node driver sebelum menjalankannya. Beberapa nilai harus path lengkap yang dipisahkan dengan sebuah koma (`,`). Nilai dapat berupa file individual atau lokasi direktori. Opsi ini tidak didukung untuk jenis pekerjaan Python Shell.

**`--extra-jars`**  
Amazon S3 mengalihkan ke file tambahan yang disalin AWS Glue ke driver dan pelaksana. AWS Glue juga menambahkan file-file ini ke classpath Java sebelum menjalankan skrip Anda. Beberapa nilai harus path lengkap yang dipisahkan dengan sebuah koma (`,`). Ekstensi tidak perlu `.jar`

**`--extra-py-files`**  
Jalur Amazon S3 ke modul Python tambahan yang ditambahkan AWS Glue ke jalur Python pada node driver sebelum menjalankan skrip Anda. Beberapa nilai harus path lengkap yang dipisahkan dengan sebuah koma (`,`). Hanya mendukung file individu, tidak mendukung path direktori.

**`--job-bookmark-option`**  
Mengontrol perilaku bookmark pekerjaan. Nilai opsi berikut dapat diatur.    
****    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html)
Misalnya, untuk mengaktifkan bookmark tugas, berikan argumen berikut.  

```
'--job-bookmark-option': 'job-bookmark-enable'
```

**`--job-language`**  
Bahasa pemrograman skrip. Nilai ini harus berupa `scala` atau `python`. Jika parameter ini tidak ada, maka nilai default-nya adalah `python`.

**`--python-modules-installer-option`**  
String plaintext yang mendefinisikan opsi yang akan diteruskan `pip3` saat menginstal modul dengan. [--additional-python-modules](#additional-python-modules) Berikan opsi seperti yang Anda lakukan di baris perintah, dipisahkan oleh spasi dan diawali dengan tanda hubung. Untuk informasi lebih lanjut tentang penggunaan, lihat[Menginstal modul Python tambahan dengan pip di AWS Glue 2.0 atau yang lebih baru](aws-glue-programming-python-libraries.md#addl-python-modules-support).  
Opsi ini tidak didukung untuk pekerjaan AWS Glue saat Anda menggunakan Python 3.9.

**`--scriptLocation`**  
Lokasi Amazon Simple Storage Service (Amazon S3) tempat skrip ETL Anda berada (dalam formulir). `s3://path/to/my/script.py` Parameter ini menimpa lokasi skrip yang ditetapkan dalam objek `JobCommand`.

**`--spark-event-logs-path`**  
Menentukan jalur Amazon S3. Saat menggunakan fitur pemantauan Spark UI, Glue AWS melakukan mem-flushing peristiwa Spark log ke Path Amazon S3 ini setiap 30 detik ke sebuah bucket yang dapat digunakan sebagai direktori sementara untuk menyimpan peristiwa Spark UI.

**`--TempDir`**  
Menentukan jalur Amazon S3 ke bucket yang dapat digunakan sebagai direktori sementara untuk pekerjaan itu.  
Misalnya, untuk menetapkan sebuah direktori sementara, berikan argumen berikut.  

```
'--TempDir': '{{s3-path-to-directory}}'
```
AWS Glue membuat ember sementara untuk pekerjaan jika ember belum ada di Wilayah. Bucket ini mungkin mengizinkan akses publik. Anda dapat memodifikasi bucket di Amazon S3 untuk menyetel blok akses publik, atau menghapus bucket nanti setelah semua pekerjaan di Wilayah tersebut selesai.

**`--use-postgres-driver`**  
Saat menyetel nilai ini`true`, ini memprioritaskan driver Postgres JDBC di jalur kelas untuk menghindari konflik dengan driver Amazon Redshift JDBC. Opsi ini hanya tersedia di AWS Glue versi 2.0.

**`--user-jars-first`**  
Saat menyetel nilai ini`true`, ini memprioritaskan file JAR tambahan pelanggan di classpath. Opsi ini hanya tersedia di AWS Glue versi 2.0 atau yang lebih baru.

**`--conf`**  
Mengontrol parameter konfigurasi Spark. Ini untuk kasus penggunaan lanjutan.

**`--encryption-type`**  
Parameter warisan. Perilaku yang sesuai harus dikonfigurasi menggunakan konfigurasi keamanan. untuk informasi selengkapnya tentang konfigurasi keamanan, lihat. [Mengenkripsi data yang ditulis oleh AWS Glue](encryption-security-configuration.md)

AWS Glue menggunakan argumen berikut secara internal dan Anda tidak boleh menggunakannya:
+ `--debug`- Internal ke AWS Glue. Jangan diatur.
+ `--mode`- Internal ke AWS Glue. Jangan diatur.
+ `--JOB_NAME`- Internal ke AWS Glue. Jangan diatur.
+ `--endpoint`- Internal ke AWS Glue. Jangan diatur.



## 
<a name="w2aac37c11b8c17"></a>

 AWS Glue mendukung bootstrap lingkungan dengan `site` modul Python yang digunakan `sitecustomize` untuk melakukan kustomisasi khusus situs. Bootstrapping fungsi initilisasi Anda sendiri direkomendasikan untuk kasus penggunaan lanjutan saja dan didukung atas dasar upaya terbaik di Glue 4.0. AWS 

 Awalan variabel lingkungan,`GLUE_CUSTOMER`, dicadangkan untuk penggunaan pelanggan. 