

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

# Mencegah crawler mengubah skema yang ada
<a name="crawler-schema-changes-prevent"></a>

 Anda dapat mencegah Perayap AWS Glue s membuat perubahan skema apa pun pada Katalog Data saat dijalankan. Secara default, crawler memperbarui skema di Katalog Data agar sesuai dengan sumber data yang sedang dirayapi. Namun, dalam beberapa kasus, Anda mungkin ingin mencegah Crawler memodifikasi skema yang ada, terutama jika Anda telah mengubah atau membersihkan data dan tidak ingin skema asli menimpa perubahan.

 Ikuti langkah-langkah berikut untuk mengonfigurasi crawler agar tidak menimpa skema yang ada dalam definisi tabel. 

------
#### [  Konsol Manajemen AWS  ]

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

1. Pilih **Crawler** di bawah **Katalog Data**.

1. Pilih crawler dari daftar, dan pilih **Edit**.

1. Pilih **langkah 4, Atur output dan penjadwalan**.

1. Di bawah **Opsi lanjutan**, pilih **Tambahkan kolom baru saja** atau **Abaikan perubahan dan jangan perbarui tabel di Katalog Data**. 

1.  Anda juga dapat mengatur opsi konfigurasi untuk **Memperbarui semua partisi baru dan yang sudah ada dengan metadata dari tabel**. Ini menetapkan skema partisi untuk mewarisi dari tabel. 

1. Pilih **Perbarui**.

------
#### [ AWS CLI ]

Contoh berikut menunjukkan cara mengonfigurasi crawler agar tidak mengubah skema yang ada, hanya menambahkan kolom baru:

```
aws glue update-crawler \
  --name myCrawler \
  --configuration '{"Version": 1.0, "CrawlerOutput": {"Tables": {"AddOrUpdateBehavior": "MergeNewColumns"}}}'
```

Contoh berikut menunjukkan cara mengonfigurasi crawler agar tidak mengubah skema yang ada, dan tidak menambahkan kolom baru:

```
aws glue update-crawler \
  --name myCrawler \
  --schema-change-policy UpdateBehavior=LOG \
  --configuration '{"Version": 1.0, "CrawlerOutput": {"Partitions": { "AddOrUpdateBehavior": "InheritFromTable" }}}'
```

------
#### [ API ]

Jika Anda tidak ingin skema tabel berubah sama sekali saat sebuah crawler berjalan, tetapkan kebijakan perubahan skema ke `LOG`. 

Saat Anda mengkonfigurasi crawler tersebut menggunakan API, atur parameter berikut:
+ Atur bidang `UpdateBehavior` dalam struktur `SchemaChangePolicy` ke `LOG`.
+  Atur bidang `Configuration` dengan representasi string dari objek JSON berikut dalam API crawler; sebagai contoh: 

  ```
  {
     "Version": 1.0,
     "CrawlerOutput": {
        "Partitions": { "AddOrUpdateBehavior": "InheritFromTable" }
     }
  }
  ```

------