

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

# Kembalikan tabel di DynamoDB
<a name="pointintimerecovery_restores"></a>

Anda dapat memulihkan tabel DynamoDB dari cadangan PITR atau cadangan sesuai permintaan menggunakan Konsol Manajemen AWS, Command Line Interface ()AWS CLI, AWS atau DynamoDB API. Proses pemulihan mengembalikan ke tabel DynamoDB baru.

## Memulihkan tabel menggunakan point-in-time pemulihan
<a name="pointintimerecovery-pitr-restore"></a>

Anda dapat mengembalikan meja Anda ke titik waktu mana pun hingga`EarliestRestoreableDateTime`.

**penting**  
Jika Anda menonaktifkan point-in-time pemulihan dan kemudian mengaktifkannya di atas meja, Anda mengatur ulang waktu mulai di mana Anda dapat memulihkan tabel itu. Akibatnya, Anda hanya dapat segera memulihkan tabel tersebut menggunakan `LatestRestorableDateTime`.

Saat Anda memulihkan menggunakan point-in-time pemulihan, DynamoDB mengembalikan data tabel Anda ke status berdasarkan tanggal dan waktu yang dipilih (day:hour:minute:second) ke tabel baru. Anda memulihkan tabel tanpa mengonsumsi throughput apa pun yang disediakan pada tabel. Anda dapat melakukan pemulihan tabel lengkap menggunakan point-in-time pemulihan, atau Anda dapat mengonfigurasi pengaturan tabel tujuan. Anda dapat mengubah pengaturan tabel berikut pada tabel yang dipulihkan: 
+ Indeks sekunder global () GSIs
+ Indeks sekunder lokal () LSIs
+ Mode penagihan
+ Kapasitas baca dan tulis yang disediakan
+ Pengaturan enkripsi

**penting**  
Saat Anda melakukan pemulihan tabel penuh, tabel tujuan diatur dengan unit kapasitas baca dan tulis yang disediakan yang sama seperti yang dimiliki tabel sumber saat cadangan diminta. Misalnya, throughput tabel yang disediakan baru-baru ini diturunkan menjadi 50 unit kapasitas baca dan 50 unit kapasitas tulis. Anda kemudian memulihkan status tabel ke tiga minggu lalu, saat throughput yang disediakan ditetapkan ke 100 unit kapasitas baca dan 100 unit kapasitas tulis. Dalam hal ini, DynamoDB memulihkan data tabel Anda ke titik waktu tersebut dengan throughput yang disediakan sejak saat itu (100 unit kapasitas baca dan 100 unit kapasitas tulis).

Anda juga dapat memulihkan data Wilayah AWS tabel DynamoDB Anda sedemikian rupa sehingga tabel yang dipulihkan dibuat di Wilayah yang berbeda dari tempat tabel sumber berada. Anda dapat melakukan Pemulihan lintas wilayah antara Wilayah AWS komersial, Wilayah AWS Tiongkok, dan. AWS GovCloud (US) Anda hanya membayar untuk data yang Anda transfer keluar dari Wilayah sumber dan untuk memulihkan ke tabel baru di Wilayah tujuan.

**catatan**  
Pemulihan Lintas Wilayah tidak didukung jika wilayah sumber atau tujuan adalah Asia Pasifik (Hong Kong) atau Timur Tengah (Bahrain).

Pemulihan bisa lebih cepat dan hemat biaya jika Anda mengecualikan beberapa atau semua indeks agar tidak dibuat pada tabel yang dipulihkan. Anda harus mengatur hal berikut secara manual pada tabel yang dipulihkan: 
+ Kebijakan penskalaan otomatis
+ AWS Identity and Access Management kebijakan
+ Metrik dan alarm CloudWatch Acara Amazon
+ Tag
+ Pengaturan aliran
+ Pengaturan Waktu untuk Tayang (TTL)
+ Point-in-time pengaturan pemulihan

Waktu yang dibutuhkan untuk mengembalikan tabel bervariasi berdasarkan beberapa faktor dan tidak selalu berkorelasi dengan ukuran tabel.

# Memulihkan tabel DynamoDB ke titik waktu
<a name="PointInTimeRecovery.Tutorial"></a>

Amazon point-in-time DynamoDB recovery (PITR) menyediakan backup berkelanjutan dari data tabel DynamoDB Anda. Anda dapat memulihkan tabel ke titik waktu menggunakan konsol DynamoDB atau AWS Command Line Interface (AWS CLI). Proses point-in-time pemulihan mengembalikan ke tabel baru.

Jika Anda ingin menggunakan AWS CLI, Anda harus mengkonfigurasinya terlebih dahulu. Untuk informasi selengkapnya, lihat [Mengakses DynamoDB](AccessingDynamoDB.md).

**Topics**
+ [Memulihkan tabel DynamoDB ke suatu titik waktu (konsol)](#restoretabletopointintime_console)
+ [Memulihkan tabel ke titik waktu (AWS CLI)](#restorepointintime_cli)

## Memulihkan tabel DynamoDB ke suatu titik waktu (konsol)
<a name="restoretabletopointintime_console"></a>

Contoh berikut menunjukkan cara menggunakan konsol DynamoDB untuk memulihkan tabel yang ada yang bernama `Music` ke titik waktu tertentu.

**catatan**  
Prosedur ini mengasumsikan bahwa Anda telah mengaktifkan point-in-time pemulihan. **Untuk mengaktifkannya untuk `Music` tabel, pada tab **Cadangan**, di bagian **Point-in-time pemulihan (PITR)**, pilih **Edit** dan kemudian centang kotak di sebelah Aktifkan. point-in-time-recovery**

**Untuk memulihkan tabel ke suatu titik waktu**

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

1. Di panel navigasi di sisi kiri konsol, pilih **Tabel**.

1. Dalam daftar tabel, pilih tabel `Music`.

1. **Pada tab **Backup** `Music` tabel, di bagian **Point-in-time pemulihan (PITR)**, pilih Restore.**

1. Untuk nama tabel baru, masukkan **MusicMinutesAgo**.
**catatan**  
Anda dapat mengembalikan tabel ke AWS Wilayah yang sama atau ke Wilayah yang berbeda dari tempat tabel sumber berada. Anda juga dapat mengecualikan indeks sekunder dari yang dibuat pada tabel yang dipulihkan. Selain itu, Anda dapat menentukan mode enkripsi yang berbeda.

1. Untuk mengonfirmasi waktu yang dapat dipulihkan, atur tanggal dan waktu pemulihan ke **Paling awal**. Kemudian pilih **Pulihkan** untuk memulai proses pemulihan.

   Tabel yang sedang dipulihkan ditampilkan dengan status **Memulihkan**. Setelah proses pemulihan selesai, status tabel `MusicMinutesAgo` berubah menjadi **Aktif**.

## Memulihkan tabel ke titik waktu (AWS CLI)
<a name="restorepointintime_cli"></a>

Prosedur berikut menunjukkan bagaimana menggunakan AWS CLI untuk mengembalikan tabel yang ada bernama `Music` ke titik waktu.

**catatan**  
Prosedur ini mengasumsikan bahwa Anda telah mengaktifkan point-in-time pemulihan. Untuk mengaktifkannya untuk tabel `Music`, jalankan perintah berikut.  

```
aws dynamodb update-continuous-backups \
    --table-name Music \
    --point-in-time-recovery-specification PointInTimeRecoveryEnabled=True
```



**Untuk memulihkan tabel ke suatu titik waktu**

1. Konfirmasikan bahwa point-in-time pemulihan diaktifkan untuk `Music` tabel dengan menggunakan `describe-continuous-backups` perintah.

   ```
   aws dynamodb describe-continuous-backups \
       --table-name Music
   ```

   Pencadangan berkelanjutan (diaktifkan secara otomatis pada pembuatan tabel) dan point-in-time pemulihan diaktifkan.

   ```
   {
       "ContinuousBackupsDescription": {
           "PointInTimeRecoveryDescription": {
               "PointInTimeRecoveryStatus": "ENABLED", 
               "EarliestRestorableDateTime": 1519257118.0, 
               "LatestRestorableDateTime": 1520018653.01
           }, 
           "ContinuousBackupsStatus": "ENABLED"
       }
   }
   ```

1. Memulihkan tabel ke titik waktu. Dalam hal ini, tabel `Music` dipulihkan ke `LatestRestorableDateTime` (\$15 menit lalu) ke Wilayah AWS yang sama.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time
   ```
**catatan**  
 Anda juga dapat memulihkan ke titik waktu tertentu. Untuk melakukannya, jalankan perintah menggunakan argumen `--restore-date-time`, dan tentukan stempel waktu. Anda dapat menentukan titik waktu dalam periode pemulihan yang dikonfigurasi, yang dapat diatur ke nilai apa pun antara 1 dan 35 hari. Sebagai contoh, perintah berikut memulihkan tabel ke `EarliestRestorableDateTime`.  

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicEarliestRestorableDateTime \
       --no-use-latest-restorable-time \
       --restore-date-time 1519257118.0
   ```
 Menentukan argumen `--no-use-latest-restorable-time` bersifat opsional ketika memulihkan ke titik waktu tertentu.

1. Memulihkan tabel ke titik waktu dengan pengaturan tabel kustom. Dalam hal ini, tabel `Music` dipulihkan ke `LatestRestorableDateTime` (\$15 menit lalu).

   Anda dapat menentukan mode enkripsi yang berbeda untuk tabel dipulihkan, sebagai berikut.
**catatan**  
Parameter `sse-specification-override` mengambil nilai yang sama seperti yang digunakan parameter `sse-specification-override` dalam perintah `CreateTable`. Untuk mempelajari selengkapnya, lihat [Mengelola tabel yang dienkripsi di DynamoDB](encryption.tutorial.md).

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
   ```

   Anda dapat mengembalikan tabel ke AWS Wilayah yang berbeda dari tempat tabel sumber berada.
**catatan**  
Parameter `sse-specification-override` bersifat wajib untuk pemulihan lintas Wilayah, namun opsional untuk pemulihan ke Wilayah yang sama dengan tabel sumber.
Parameter `source-table-arn` harus disediakan untuk pemulihan lintas-wilayah.
Saat melakukan pemulihan lintas wilayah dari baris perintah, Anda harus mengatur AWS Wilayah default ke wilayah tujuan yang diinginkan. Untuk mempelajari selengkapnya, lihat [Opsi baris perintah](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html) di *Panduan Pengguna AWS Command Line Interface *.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-arn arn:aws:dynamodb:us-east-1:123456789012:table/Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --sse-specification-override Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
   ```

   Anda dapat menimpa modus penagihan dan throughput yang disediakan untuk tabel yang dipulihkan.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --billing-mode-override PAY_PER_REQUEST
   ```

   Anda dapat mengecualikan beberapa atau semua indeks sekunder dari yang dibuat pada tabel yang baru dipulihkan.
**catatan**  
Pemulihan dapat lebih cepat dan lebih hemat biaya jika Anda mengecualikan beberapa atau semua indeks sekunder dari pembuatan pada tabel yang baru dipulihkan.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --use-latest-restorable-time \
       --global-secondary-index-override '[]'
   ```

   Anda dapat menggunakan kombinasi dari penimpaan yang berbeda. Misalnya, Anda dapat menggunakan satu indeks sekunder global dan mengubah throughput yang disediakan secara bersamaan, sebagai berikut.

   ```
   aws dynamodb restore-table-to-point-in-time \
       --source-table-name Music \
       --target-table-name MusicMinutesAgo \
       --billing-mode-override PROVISIONED \
       --provisioned-throughput-override ReadCapacityUnits=100,WriteCapacityUnits=100 \
       --global-secondary-index-override IndexName=singers-index,KeySchema=["{AttributeName=SingerName,KeyType=HASH}"],Projection="{ProjectionType=KEYS_ONLY}",ProvisionedThroughput="{ReadCapacityUnits=50,WriteCapacityUnits=50}" \
       --sse-specification-override Enabled=true,SSEType=KMS \
       --use-latest-restorable-time
   ```

Untuk memverifikasi pemulihan, gunakan perintah `describe-table` untuk menggambarkan tabel `MusicEarliestRestorableDateTime`.

```
aws dynamodb describe-table --table-name MusicEarliestRestorableDateTime
```

Tabel yang sedang dipulihkan ditampilkan dengan status **Membuat** dan pemulihan dalam proses sebagai **true**. Setelah proses pemulihan selesai, status tabel `MusicEarliestRestorableDateTime` berubah menjadi **Aktif**.

**penting**  
Saat pemulihan sedang berlangsung, jangan mengubah atau menghapus kebijakan AWS Identity and Access Management (IAM) yang memberikan izin kepada entitas IAM (misalnya, pengguna, grup, atau peran) untuk melakukan pemulihan. Jika tidak, perilaku tak terduga dapat terjadi. Misalnya, Anda menghapus izin menulis untuk sebuah tabel saat tabel tersebut sedang dipulihkan. Dalam kasus ini, operasi `RestoreTableToPointInTime` yang mendasarinya tidak dapat menulis data apa pun yang dipulihkan ke tabel. Kebijakan IAM yang melibatkan pembatasan IP sumber untuk mengakses tabel pemulihan target juga dapat menyebabkan masalah.  
Anda dapat mengubah atau menghapus izin hanya setelah operasi pemulihan selesai.