

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

# Pulihkan tabel dari cadangan ke titik waktu tertentu di Amazon Keyspaces
<a name="restoretabletopointintime"></a>

Bagian berikut menunjukkan cara mengembalikan tabel Amazon Keyspaces yang ada ke titik waktu tertentu. 

**catatan**  
Prosedur ini mengasumsikan bahwa tabel yang Anda gunakan telah dikonfigurasi dengan point-in-time pemulihan. Untuk mengaktifkan PITR untuk tabel, lihat[Konfigurasikan PITR untuk tabel di Amazon Keyspaces](configure_PITR.md). 

**penting**  
 Saat pemulihan sedang berlangsung, jangan mengubah atau menghapus kebijakan AWS Identity and Access Management (IAM) yang memberikan izin utama IAM (misalnya, pengguna, grup, atau peran) untuk melakukan pemulihan. Jika tidak, perilaku tak terduga dapat terjadi. Misalnya, jika Anda menghapus izin tulis untuk tabel saat tabel tersebut dipulihkan, `RestoreTableToPointInTime` operasi yang mendasarinya tidak dapat menulis data yang dipulihkan ke tabel.   
Anda dapat memodifikasi atau menghapus izin hanya setelah operasi pemulihan selesai.

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

**Kembalikan tabel ke titik waktu tertentu menggunakan konsol**

1. [Masuk ke Konsol Manajemen AWS, dan buka konsol Amazon Keyspaces di https://console.aws.amazon.com/keyspaces/ rumah.](https://console.aws.amazon.com/keyspaces/home)

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

1. Dalam daftar tabel, pilih tabel yang ingin Anda pulihkan. 

1. **Pada tab **Cadangan** tabel, di bagian **Point-in-time pemulihan**, pilih Pulihkan.**

1. Untuk nama tabel baru, masukkan nama baru untuk tabel yang dipulihkan, misalnya**mytable\$1restored**. 

1. Untuk menentukan titik waktu operasi pemulihan, Anda dapat memilih di antara dua opsi:
   + Pilih waktu **paling awal yang telah dikonfigurasi sebelumnya**.
   + Pilih **Tentukan tanggal dan waktu** dan masukkan tanggal dan waktu yang ingin Anda kembalikan tabel baru.
**catatan**  
Anda dapat mengembalikan ke titik waktu mana pun dalam waktu **paling awal** dan waktu saat ini. Amazon Keyspaces mengembalikan data tabel Anda ke status berdasarkan tanggal dan waktu yang dipilih (day:hour:minute:second). 

1. Pilih **Pulihkan** untuk memulai proses pemulihan. 

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

------
#### [ Cassandra Query Language (CQL) ]

**Kembalikan tabel ke titik waktu menggunakan CQL**

1. Anda dapat mengembalikan tabel aktif ke point-in-time antara `earliest_restorable_timestamp` dan waktu saat ini. Waktu saat ini adalah default.

   Untuk mengonfirmasi bahwa point-in-time pemulihan diaktifkan untuk tabel, kueri `system_schema_mcs.tables` seperti yang ditunjukkan dalam contoh ini.

   ```
   SELECT custom_properties
   FROM system_schema_mcs.tables
   WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';
   ```

   Point-in-time pemulihan diaktifkan seperti yang ditunjukkan pada output sampel berikut. 

   ```
   custom_properties
   -----------------
   {
     ...,
       "point_in_time_recovery": {
       "earliest_restorable_timestamp":"2020-06-30T19:19:21.175Z"
       "status":"enabled"
     }
   }
   ```

1. 
   + Kembalikan tabel ke waktu saat ini. Ketika Anda menghilangkan `WITH restore_timestamp = ...` klausa, stempel waktu saat ini digunakan. 

     ```
     RESTORE TABLE mykeyspace.mytable_restored
     FROM TABLE mykeyspace.mytable;
     ```
   + Anda juga dapat mengembalikan ke titik waktu tertentu, yang ditentukan oleh format `restore_timestamp` ISO 8601. Anda dapat menentukan titik waktu apa pun selama 35 hari terakhir. Sebagai contoh, perintah berikut memulihkan tabel ke `EarliestRestorableDateTime`. 

     ```
     RESTORE TABLE mykeyspace.mytable_restored
     FROM TABLE mykeyspace.mytable
     WITH restore_timestamp = '2020-06-30T19:19:21.175Z';
     ```

     Untuk deskripsi sintaks lengkap, lihat [MENGEMBALIKAN TABEL](cql.ddl.table.md#cql.ddl.table.restore) di referensi bahasa.

1. Untuk memverifikasi bahwa pemulihan tabel berhasil, kueri `system_schema_mcs.tables` untuk mengkonfirmasi status tabel.

   ```
   SELECT status
   FROM system_schema_mcs.tables
   WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable_restored'
   ```

   Kueri menunjukkan output berikut.

   ```
   status
   ------
   RESTORING
   ```

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

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

**Kembalikan tabel ke titik waktu menggunakan AWS CLI**

1. Buat tabel sederhana bernama `myTable` yang mengaktifkan PITR. Perintah telah dipecah menjadi baris terpisah untuk keterbacaan.

   ```
   aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' 
               --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' 
               --point-in-time-recovery 'status=ENABLED'
   ```

1. Konfirmasikan properti tabel baru dan tinjau `earliestRestorableTimestamp` untuk PITR.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   Output dari perintah ini mengembalikan berikut ini.

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2022-06-20T14:34:57.049000-07:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2022-06-20T14:34:57.049000-07:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "ENABLED",
           "earliestRestorableTimestamp": "2022-06-20T14:35:13.693000-07:00"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       }
   }
   ```

1. 
   + Untuk mengembalikan tabel ke titik waktu, tentukan a `restore_timestamp` dalam format ISO 8601. Anda dapat memilih titik waktu apa pun selama 35 hari terakhir dalam interval satu detik. Sebagai contoh, perintah berikut memulihkan tabel ke `EarliestRestorableDateTime`. 

     ```
     aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored' --restore-timestamp "2022-06-20 21:35:14.693"
     ```

     Output dari perintah ini mengembalikan ARN dari tabel yang dipulihkan.

     ```
     {
         "restoredTableARN": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable_restored"
     }
     ```
   + Untuk mengembalikan tabel ke waktu saat ini, Anda dapat menghilangkan `restore-timestamp` parameter.

     ```
     aws keyspaces restore-table --source-keyspace-name 'myKeyspace' --source-table-name 'myTable' --target-keyspace-name 'myKeyspace' --target-table-name 'myTable_restored1'"
     ```

------