

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

# Mengaktifkan pengoptimal retensi snapshot
<a name="enable-snapshot-retention"></a>

 Anda dapat menggunakan AWS Glue konsol, AWS CLI, atau AWS API untuk mengaktifkan pengoptimal retensi snapshot untuk tabel Apache Iceberg Anda di Katalog Data. Untuk tabel baru, Anda dapat memilih Apache Iceberg sebagai format tabel dan mengaktifkan pengoptimal retensi snapshot saat Anda membuat tabel. Retensi snapshot dinonaktifkan secara default untuk tabel baru.

------
#### [ Console ]

**Untuk mengaktifkan pengoptimal retensi snapshot**

1.  Buka AWS Glue konsol di [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/)dan masuk sebagai administrator data lake, pembuat tabel, atau pengguna yang telah diberikan `lakeformation:GetDataAccess` izin `glue:UpdateTable` dan di atas tabel. 

1. Di panel navigasi, di bawah **Katalog Data**, pilih **Tabel**.

1. ****Pada halaman **Tabel, pilih tabel** Iceberg yang ingin Anda aktifkan pengoptimal retensi snapshot, lalu di bawah menu **Tindakan**, pilih Aktifkan di bawah Optimasi.****

   Anda juga dapat mengaktifkan optimasi dengan memilih tabel dan membuka halaman **rincian Tabel**. Pilih tab **Pengoptimalan tabel** di bagian bawah halaman, dan pilih **Aktifkan retensi snapshot**. 

1. Pada halaman **Aktifkan pengoptimalan**, di bawah **konfigurasi Optimasi**, Anda memiliki dua opsi: **Gunakan pengaturan default** atau **Sesuaikan pengaturan**. Jika Anda memilih untuk menggunakan pengaturan default, AWS Glue gunakan properti yang ditentukan dalam konfigurasi tabel Iceberg untuk menentukan periode retensi snapshot dan jumlah snapshot yang akan dipertahankan. Dengan tidak adanya konfigurasi ini, AWS Glue pertahankan satu snapshot selama lima hari, dan menghapus file yang terkait dengan snapshot yang kedaluwarsa.

1.  Selanjutnya, pilih peran IAM yang AWS Glue dapat diambil atas nama Anda untuk menjalankan pengoptimal. Untuk detail tentang izin yang diperlukan untuk peran IAM, lihat bagian. [Prasyarat pengoptimalan tabel](optimization-prerequisites.md)

   Ikuti langkah-langkah di bawah ini untuk memperbarui peran IAM yang ada: 

   1.  Untuk memperbarui kebijakan izin untuk peran IAM, di konsol IAM, buka peran IAM yang digunakan untuk menjalankan pemadatan. 

   1.  Di bagian Tambahkan izin, pilih Buat kebijakan. Di jendela browser yang baru dibuka, buat kebijakan baru untuk digunakan dengan peran Anda. 

   1. Di halaman Buat kebijakan, pilih tab JSON. Salin kode JSON yang ditampilkan di Prasyarat ke bidang editor kebijakan.

1. Jika Anda memilih untuk mengatur nilai untuk **konfigurasi retensi Snapshot** secara manual, pilih **Sesuaikan pengaturan**.   
![\[Halaman detail tabel Apache Iceberg dengan Aktifkan Retensi> Sesuaikan opsi pengaturan.\]](http://docs.aws.amazon.com/id_id/glue/latest/dg/images/table-enable-retention.png)

1. Pilih kotak **Terapkan peran IAM yang dipilih ke opsi pengoptimal yang dipilih** untuk menggunakan peran IAM tunggal untuk semua mengaktifkan semua pengoptimal.

1. Jika Anda memiliki konfigurasi kebijakan keamanan di mana pengoptimal tabel Iceberg perlu mengakses bucket Amazon S3 dari Virtual Private Cloud (VPC) tertentu, buat koneksi jaringan atau gunakan yang sudah ada. AWS Glue 

   Jika Anda belum menyiapkan Koneksi AWS Glue VPC, buat yang baru dengan mengikuti langkah-langkah di bagian [Membuat koneksi untuk konektor](https://docs.aws.amazon.com/glue/latest/dg/creating-connections.html) menggunakan AWS Glue konsol atau /SDK. AWS CLI

1. Selanjutnya, di bawah **konfigurasi retensi Snapshot**, pilih untuk menggunakan nilai yang ditentukan dalam [konfigurasi tabel Iceberg](https://iceberg.apache.org/docs/1.5.2/configuration/#table-behavior-properties), atau tentukan nilai kustom untuk periode retensi snapshot (history.expire. max-snapshot-age-ms), jumlah snapshot minimum (history.expire. min-snapshots-to-keep) untuk mempertahankan, dan waktu dalam jam antara pekerjaan penghapusan snapshot berturut-turut berjalan.

1.  Pilih **Hapus file terkait** untuk menghapus file yang mendasarinya saat pengoptimal tabel menghapus snapshot lama dari metadata tabel.

    Jika Anda tidak memilih opsi ini, ketika snapshot lama dihapus dari metadata tabel, file terkait mereka akan tetap berada di penyimpanan sebagai file yatim piatu. 

1. Selanjutnya, baca pernyataan peringatan, dan pilih **Saya mengakui** untuk melanjutkan.
**catatan**  
 Di Katalog Data, pengoptimal retensi snapshot menghormati siklus hidup yang dikendalikan oleh kebijakan retensi tingkat cabang dan tag. Untuk informasi selengkapnya, lihat bagian [Percabangan dan penandaan](https://iceberg.apache.org/docs/latest/branching/#overview) di dokumentasi Gunung Es.

1. Tinjau konfigurasi dan pilih **Aktifkan pengoptimalan**.

   Tunggu beberapa menit hingga pengoptimal retensi berjalan dan kedaluwarsa snapshot lama berdasarkan konfigurasi.

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

 Untuk mengaktifkan retensi snapshot untuk tabel Iceberg baru di AWS Glue, Anda perlu membuat pengoptimal tabel tipe `retention` dan mengatur `enabled` bidang ke dalam. `true` `table-optimizer-configuration` Anda dapat melakukan ini menggunakan AWS CLI perintah `create-table-optimizer` atau`update-table-optimizer`. Selain itu, Anda perlu menentukan bidang konfigurasi retensi seperti `snapshotRetentionPeriodInDays` dan `numberOfSnapshotsToRetain` berdasarkan kebutuhan Anda.

Contoh berikut menunjukkan cara mengaktifkan pengoptimal retensi snapshot. Ganti ID akun dengan ID AWS akun yang valid. Ganti nama database dan nama tabel dengan nama tabel Iceberg yang sebenarnya dan nama database. Ganti `roleArn` dengan Nama AWS Sumber Daya (ARN) peran IAM dan nama peran IAM yang memiliki izin yang diperlukan untuk menjalankan pengoptimal retensi snapshot. 

```
aws glue create-table-optimizer \
  --catalog-id 123456789012 \
  --database-name iceberg_db \
  --table-name iceberg_table \
  --table-optimizer-configuration '{"roleArn":"arn:aws:iam::123456789012:role/optimizer_role","enabled":'true', "vpcConfiguration":{
"glueConnectionName":"glue_connection_name"}, "retentionConfiguration":{"icebergConfiguration":{"snapshotRetentionPeriodInDays":7,"numberOfSnapshotsToRetain":3,"cleanExpiredFiles":'true'}}}'\
  --type retention
```

 Perintah ini membuat pengoptimal retensi untuk tabel Iceberg yang ditentukan dalam katalog, database, dan Wilayah yang diberikan. table-optimizer-configurationMenentukan peran IAM ARN untuk digunakan, mengaktifkan pengoptimal, dan menetapkan konfigurasi retensi. Dalam contoh ini, ia mempertahankan snapshot selama 7 hari, menyimpan minimal 3 snapshot, dan membersihkan file yang kedaluwarsa. 
+  snapshotRetentionPeriodInDays —Jumlah hari untuk menyimpan snapshot sebelum kedaluwarsa. Nilai default-nya adalah `5`. 
+ numberOfSnapshotsToRetain — Jumlah minimum snapshot yang harus disimpan, bahkan jika mereka lebih tua dari periode retensi. Nilai default-nya adalah `1`. 
+ cleanExpiredFiles — Boolean yang menunjukkan apakah akan menghapus file data yang kedaluwarsa setelah snapshot kedaluwarsa. Nilai default-nya adalah `true`.

   Ketika disetel ke true, snapshot lama akan dihapus dari metadata tabel, dan file yang mendasarinya dihapus. Jika parameter ini disetel ke false, snapshot lama akan dihapus dari metadata tabel tetapi file yang mendasarinya tetap berada di penyimpanan sebagai file yatim piatu. 

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

[CreateTableOptimizer](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-table-optimizers.html#aws-glue-api-table-optimizers-CreateTableOptimizer)Operasi panggilan untuk mengaktifkan pengoptimal retensi snapshot untuk tabel.

------

Setelah Anda mengaktifkan pemadatan, tab **pengoptimalan tabel** menunjukkan detail pemadatan berikut (setelah sekitar 15-20 menit):

Waktu mulai  
Waktu di mana pengoptimal retensi snapshot dimulai. Nilainya adalah stempel waktu dalam waktu UTC. 

Waktu aktif  
Waktu menunjukkan berapa lama pengoptimal untuk menyelesaikan tugas. Nilainya adalah stempel waktu dalam waktu UTC. 

Status  
Status pengoptimal dijalankan. Nilai adalah sukses atau gagal.

File data dihapus  
Jumlah total file yang dihapus.

File manifes dihapus  
Jumlah total file manifes yang dihapus.

Daftar manifes dihapus  
Jumlah total daftar manifes yang dihapus.