

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

# Membuat dan bekerja dengan AWS Glue DataBrew pekerjaan resep
<a name="jobs.recipe"></a>

Gunakan *pekerjaan DataBrew resep* untuk membersihkan dan menormalkan data dalam DataBrew kumpulan data dan tulis hasilnya ke lokasi keluaran pilihan Anda. Menjalankan pekerjaan resep tidak memengaruhi kumpulan data atau data sumber yang mendasarinya. Ketika pekerjaan berjalan, ia terhubung ke data sumber dengan cara read-only. Output pekerjaan ditulis ke lokasi keluaran yang Anda tentukan di Amazon S3, database JDBC AWS Glue Data Catalog, atau JDBC yang didukung.

Gunakan prosedur berikut untuk membuat pekerjaan DataBrew resep.

**Untuk membuat pekerjaan resep**

1. Masuk ke Konsol Manajemen AWS dan buka DataBrew konsol di [https://console.aws.amazon.com/databrew/](https://console.aws.amazon.com/glue/).

1. Pilih **JOBS** dari panel navigasi, pilih tab **Pekerjaan resep**, lalu pilih **Buat pekerjaan**.

1. Masukkan nama untuk pekerjaan Anda, lalu pilih **Buat pekerjaan resep**.

1. Untuk **masukan Job**, masukkan detail pekerjaan yang ingin Anda buat: nama kumpulan data yang akan diproses, dan resep yang akan digunakan.

   Pekerjaan resep menggunakan DataBrew resep untuk mengubah kumpulan data. Untuk menggunakan resep, pastikan untuk mempublikasikannya terlebih dahulu.

1. Konfigurasikan pengaturan output pekerjaan Anda.

   Berikan tujuan untuk output pekerjaan Anda. Jika Anda tidak memiliki DataBrew koneksi yang dikonfigurasi untuk tujuan keluaran Anda, konfigurasikan terlebih dahulu pada tab **DATASETS** seperti yang dijelaskan di. [Koneksi yang didukung untuk sumber data dan output](supported-data-connection-sources.md) Pilih salah satu tujuan output berikut: 
   + Amazon S3, dengan atau tanpa dukungan AWS Glue Data Catalog
   + Amazon Redshift, dengan atau tanpa dukungan AWS Glue Data Catalog
   + JDBC
   + Tabel kepingan salju
   + Tabel database Amazon RDS dengan AWS Glue Data Catalog dukungan. Tabel database Amazon RDS mendukung mesin database berikut: 
     + Amazon Aurora
     + MySQL
     + Oracle
     + PostgreSQL
     + Microsoft SQL Server
   + Amazon S3 dengan AWS Glue Data Catalog dukungan.

   Untuk AWS Glue Data Catalog output berdasarkan AWS Lake Formation, hanya DataBrew mendukung penggantian file yang ada. Dalam pendekatan ini, file diganti untuk menjaga izin Lake Formation yang ada tetap utuh untuk peran akses data Anda. Juga, DataBrew memberikan prioritas ke lokasi Amazon S3 dari tabel.AWS Glue Data Catalog Dengan demikian, Anda tidak dapat mengganti lokasi Amazon S3 saat membuat pekerjaan resep. 

   Dalam beberapa kasus, lokasi Amazon S3 dalam output pekerjaan berbeda dari lokasi Amazon S3 di tabel Katalog Data. Dalam kasus ini, DataBrew perbarui definisi pekerjaan secara otomatis dengan lokasi Amazon S3 dari tabel katalog. Ini dilakukan ketika Anda memperbarui atau memulai pekerjaan yang ada.

1. Hanya untuk tujuan keluaran Amazon S3, Anda memiliki pilihan lebih lanjut:

   1. Pilih salah satu format output data yang tersedia untuk Amazon S3, kompresi opsional, dan pembatas kustom opsional. Pembatas yang didukung untuk file output sama dengan yang untuk input: koma, titik dua, titik koma, pipa, tab, tanda sisipan, garis miring terbalik, dan spasi. Untuk detail pemformatan, lihat tabel berikut.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/databrew/latest/dg/jobs.recipe.html)

   1. <a name="singlefileoutput"></a>Pilih apakah akan menampilkan satu file atau beberapa file. Ada tiga opsi untuk output file dengan Amazon S3:
      + **Autogenerate file (disarankan)** - Telah DataBrew menentukan jumlah file output yang optimal.
      + **Output file tunggal** - Menyebabkan satu file output dihasilkan. Opsi ini dapat menghasilkan waktu eksekusi pekerjaan tambahan karena pasca-pemrosesan diperlukan.
      + **Beberapa output file** - Apakah Anda menentukan jumlah file untuk output pekerjaan Anda. Nilai yang valid adalah 2-999. File yang lebih sedikit daripada yang Anda tentukan mungkin output jika partisi kolom digunakan atau jika jumlah baris dalam output lebih sedikit dari jumlah file yang Anda tentukan.

   1. <a name="columnpartioning"></a>(Opsional) Pilih partisi kolom untuk output pekerjaan resep. 

      Partisi kolom menyediakan cara lain untuk mempartisi output pekerjaan resep Anda menjadi beberapa file. Partisi kolom dapat digunakan dengan output Amazon S3 baru atau yang sudah ada atau dengan keluaran Katalog Data Amazon S3 baru. Itu tidak dapat digunakan dengan tabel Data Catalog Amazon S3 yang ada. File output didasarkan pada nilai nama kolom yang Anda tentukan. Jika nama kolom yang Anda tentukan unik, jalur folder Amazon S3 yang dihasilkan didasarkan pada urutan nama kolom.

      Untuk contoh partisi kolom, lihat[Contoh partisi kolom](#jobs.recipe-column-partition-example), berikut.

1. (Opsional) Pilih **Aktifkan enkripsi untuk output pekerjaan** untuk mengenkripsi output pekerjaan yang DataBrew menulis ke lokasi keluaran Anda, lalu pilih metode enkripsi:
   + **Gunakan SSE-S3 enkripsi** — Output dienkripsi menggunakan enkripsi sisi server dengan kunci enkripsi yang dikelola Amazon S3.
   + **Use AWS Key Management Service(AWS KMS)** - Output dienkripsi menggunakan.AWS KMS Untuk menggunakan opsi ini, pilih Nama Sumber Daya Amazon (ARN) dari AWS KMS kunci yang ingin Anda gunakan. Jika Anda tidak memiliki AWS KMS kunci, Anda dapat membuatnya dengan memilih **Buat AWS KMS kunci**.

1. Untuk **izin Akses**, pilih peran AWS Identity and Access Management(IAM) yang memungkinkan DataBrew untuk menulis ke lokasi keluaran Anda. Untuk lokasi yang dimiliki oleh AWS akun Anda, Anda dapat memilih peran yang `AwsGlueDataBrewDataAccessRole` dikelola layanan. Melakukan hal ini memungkinkan DataBrew untuk mengakses AWS sumber daya yang Anda miliki.

1. Pada panel **Pengaturan pekerjaan lanjutan**, Anda dapat memilih opsi lainnya untuk menjalankan pekerjaan Anda:
   + **Jumlah maksimum unit** — DataBrew memproses pekerjaan menggunakan beberapa node komputasi, berjalan secara paralel. Jumlah default node adalah 5. Jumlah node maksimum adalah 149.
   + **Job timeout -** Jika pekerjaan membutuhkan lebih dari jumlah menit yang Anda tetapkan di sini untuk dijalankan, itu gagal dengan kesalahan batas waktu. Nilai default adalah 2.880 menit, atau 48 jam.
   + **Jumlah percobaan ulang** — Jika pekerjaan gagal saat berjalan, DataBrew dapat mencoba menjalankannya lagi. Secara default, pekerjaan tidak dicoba lagi.
   + **Aktifkan CloudWatch Log Amazon untuk pekerjaan** - Memungkinkan DataBrew untuk mempublikasikan informasi diagnostik ke CloudWatch Log. Log ini dapat berguna untuk tujuan pemecahan masalah, atau untuk detail lebih lanjut tentang bagaimana pekerjaan diproses.

1. Untuk **Jadwal pekerjaan**, Anda dapat menerapkan jadwal DataBrew kerja sehingga pekerjaan Anda berjalan pada waktu tertentu, atau secara berulang. Untuk informasi selengkapnya, lihat [Mengotomatiskan pekerjaan berjalan dengan jadwal](#jobs.scheduling).

1. Ketika pengaturan seperti yang Anda inginkan, pilih **Buat pekerjaan**. Atau, jika Anda ingin segera menjalankan pekerjaan, pilih **Buat dan jalankan pekerjaan**.

Anda dapat memantau kemajuan pekerjaan Anda dengan memeriksa statusnya saat pekerjaan sedang berjalan. Ketika pekerjaan berjalan selesai, status berubah menjadi **Succeeded.** Output pekerjaan sekarang tersedia di lokasi keluaran yang Anda pilih.

DataBrew menyimpan definisi pekerjaan Anda, sehingga Anda dapat menjalankan pekerjaan yang sama nanti. Untuk menjalankan kembali pekerjaan, pilih **Jobs** dari panel navigasi. Pilih pekerjaan yang ingin Anda kerjakan, lalu pilih **Jalankan pekerjaan**.

## Contoh partisi kolom
<a name="jobs.recipe-column-partition-example"></a>

Sebagai contoh partisi kolom, asumsikan bahwa Anda menentukan tiga kolom, setiap baris berisi salah satu dari dua nilai yang mungkin. `Dept`Kolom dapat memiliki nilai `Admin` atau`Eng`. `Staff-type`Kolom dapat memiliki nilai `Part-time` atau`Full-time`. `Location`Kolom dapat memiliki nilai `Office1` atau`Office2`. Bucket Amazon S3 untuk hasil pekerjaan Anda terlihat seperti berikut ini.

```
s3://bucket/output-folder/Dept=Admin/Staff-type=Part-time/Area=Office1/jobId_timestamp_part0001.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Part-time/Location=Office2/jobId_timestamp_part0002.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Full-time/Location=Office1/jobId_timestamp_part0003.csv
s3://bucket/output-folder/Dept=Admin/Staff-type=Full-time/Location=Office2/jobId_timestamp_part0004.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Part-time/Location=Office1/jobId_timestamp_part0005.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Part-time/Location=Office2/jobId_timestamp_part0006.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Full-time/Location=Office1/jobId_timestamp_part0007.csv
s3://bucket/output-folder/Dept=Eng/Staff-type=Full-time/Location=Office2/jobId_timestamp_part0008.csv
```

## Mengotomatiskan pekerjaan berjalan dengan jadwal
<a name="jobs.scheduling"></a>

Anda dapat menjalankan kembali DataBrew pekerjaan kapan saja dan juga mengotomatiskan DataBrew pekerjaan berjalan dengan jadwal. 

**Untuk menjalankan kembali pekerjaan DataBrew**

1. Masuk ke Konsol Manajemen AWS dan buka DataBrew konsol di [https://console.aws.amazon.com/databrew/](https://console.aws.amazon.com/databrew/). 

1. Pada panel navigasi, pilih **Jobs**. Pilih pekerjaan yang ingin Anda jalankan, lalu pilih **Jalankan pekerjaan**.

Untuk menjalankan DataBrew pekerjaan pada waktu tertentu, atau secara berulang, buat jadwal DataBrew kerja. Anda kemudian dapat mengatur pekerjaan Anda untuk berjalan sesuai dengan jadwal.

**Untuk membuat jadwal DataBrew kerja**

1. Pada panel navigasi DataBrew konsol, pilih **Jobs**. Pilih tab **Jadwal**, dan pilih **Tambahkan jadwal**.

1. Masukkan nama untuk jadwal Anda, lalu pilih nilai untuk **frekuensi Jalankan**:
   + **Berulang** — Pilih seberapa sering Anda ingin pekerjaan berjalan (misalnya, setiap 12 jam). Kemudian pilih hari atau hari mana untuk menjalankan pekerjaan. Secara opsional, Anda dapat memasukkan waktu hari ketika pekerjaan berjalan.
   + **Pada waktu tertentu** — Masukkan waktu hari ketika Anda ingin pekerjaan berjalan. Kemudian pilih hari atau hari mana untuk menjalankan pekerjaan. 
   + **Masukkan CRON** — Tentukan jadwal pekerjaan dengan memasukkan ekspresi cron yang valid. Untuk informasi selengkapnya, lihat [Bekerja dengan ekspresi cron untuk pekerjaan resep](#jobs.cron).

1. Jika pengaturan sudah sesuai keinginan Anda, pilih **Simpan**.

**Untuk mengaitkan pekerjaan dengan jadwal**

1. Pada panel navigasi, pilih **Jobs**.

1. Pilih pekerjaan yang ingin Anda kerjakan, lalu untuk **Tindakan**, pilih **Edit.** .

1. Pada panel **Jadwalkan pekerjaan**, pilih **Jadwal asosiasi**. Pilih nama jadwal yang ingin Anda gunakan.

1. Jika pengaturan sudah sesuai keinginan Anda, pilih **Simpan**.

## Bekerja dengan ekspresi cron untuk pekerjaan resep
<a name="jobs.cron"></a>

Ekspresi cron memiliki enam bidang yang diperlukan, yang dipisahkan oleh spasi putih. Sintaksnya adalah sebagai berikut.

```
{{Minutes}} {{Hours}} {{Day-of-month}} {{Month}} {{Day-of-week}} {{Year}}
```

Dalam sintaks sebelumnya, nilai dan wildcard berikut digunakan untuk bidang yang ditunjukkan.


| **Bidang** | **Nilai-nilai** | **Wildcard** | 
| --- | --- | --- | 
| Menit | 0–59 | , - \* / | 
| Jam | 0–23 | , - \* / | 
| Day-of-month | 1–31 | , - \* ? / L W | 
| Bulan | 1—12 atau JAN-DEC | , - \* / | 
| Day-of-week | 1—7 atau SUN-SAT | , - \* ? / L | 
| Tahun | 1970–2199 | , - \* / | 

Gunakan wildcard ini sebagai berikut:
+ Wildcard **,** (koma) mencakup nilai tambahan. Di `Month` lapangan, `JAN,FEB,MAR` termasuk Januari, Februari, dan Maret.
+ Wildcard **-** (en dash) menentukan rentang. Di `Day` lapangan, 1-15 termasuk hari 1 hingga 15 dari bulan yang ditentukan.
+ Wildcard **\*** (bintang) mencakup semua nilai di bidang. Di `Hours` lapangan, **\*** termasuk setiap jam.
+ Wildcard **/** (garis miring) menentukan kenaikan. Di `Minutes` lapangan, Anda dapat masuk **1/10** untuk menentukan setiap menit ke-10, mulai dari menit pertama jam (misalnya, menit ke-11, 21, dan 31).
+ Wildcard **?** (tanda tanya) menentukan satu atau yang lain. Misalnya, anggaplah di `Day-of-month` bidang yang Anda masukkan **7**. **Jika Anda tidak peduli hari apa dalam minggu ketujuh, Anda kemudian dapat masuk?** di `Day-of-week` lapangan.
+ Wildcard **L** di `Day-of-week` bidang `Day-of-month` or menentukan hari terakhir bulan atau minggu.
+ Wildcard **W** di kolom `Day-of-month` menentukan hari kerja. Di kolom `Day-of-month`, `3W` menentukan hari kerja yang paling dekat dengan pekan ketiga di bulan itu.

Bidang dan nilai ini memiliki batasan berikut: 
+ Anda tidak dapat menentukan kolom `Day-of-month` dan `Day-of-week` dalam ekspresi cron yang sama. Jika Anda menentukan sebuah nilai di salah satu kolom, maka Anda harus menggunakan **?** (tanda tanya) di kolom yang lain.
+ Ekspresi cron yang mengarah ke kecepatan lebih cepat dari 5 menit tidak didukung. 

Anda dapat membuat jadwal, Anda dapat menggunakan contoh cron berikut.


| Menit | Jam | Hari dalam sebulan | Bulan | Hari dalam seminggu | Tahun | Arti | 
| --- | --- | --- | --- | --- | --- | --- | 
| 0 | 10 | \* | \* | ? | \* | Jalankan pukul 10:00 pagi (UTC) setiap hari | 
| 15 | 12 | \* | \* | ? | \* | Jalankan pada pukul 12:15 malam (UTC) setiap hari | 
| 0 | 18 | ? | \* | MON-FRI | \* | Jalankan pada pukul 6:00 sore (UTC) setiap Senin hingga Jumat | 
| 0 | 8 | 1 | \* | ? | \* | Jalankan pukul 8:00 pagi (UTC) setiap hari pertama setiap bulan | 
| 0/15 | \* | \* | \* | ? | \* | Jalankan setiap 15 menit | 
| 0/10 | \* | ? | \* | MON-FRI | \* | Jalankan setiap 10 menit Senin hingga Jumat | 
| 0/5 | 8–17 | ? | \* | MON-FRI | \* | Jalankan setiap 5 menit Senin hingga Jumat antara pukul 8:00 pagi sampai pukul 5:55 sore (UTC) | 

Misalnya, Anda dapat menggunakan ekspresi cron berikut untuk menjalankan pekerjaan setiap hari pada pukul 12:15 UTC.

```
15 12 * * ? *
```

## Menghapus pekerjaan dan jadwal pekerjaan
<a name="jobs.deleting"></a>

Jika Anda tidak lagi membutuhkan pekerjaan atau jadwal kerja, Anda dapat menghapusnya.

**Untuk menghapus pekerjaan**

1. Pada panel navigasi, pilih **Jobs**.

1. Pilih pekerjaan yang ingin Anda hapus, lalu untuk **Tindakan**, pilih **Hapus.** .

**Untuk menghapus jadwal kerja**

1. Pada panel navigasi, pilih **Pekerjaan**, lalu pilih tab **Jadwal**.

1. Pilih jadwal yang ingin Anda hapus, lalu untuk **Tindakan**, pilih **Hapus.** .