Pulihkan tabel dari cadangan ke titik waktu tertentu di Amazon Keyspaces - Amazon Keyspaces (untuk Apache Cassandra)

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

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. PITRUntuk mengaktifkan tabel, lihatKonfigurasikan PITR untuk tabel di Amazon Keyspaces.

penting

Saat pemulihan sedang berlangsung, jangan memodifikasi atau menghapus AWS Identity and Access Management (IAM) kebijakan yang memberikan izin kepada IAM prinsipal (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 AWS Management Console, dan buka konsol Amazon Keyspaces di https://console.aws.amazon.com/keyspaces/ rumah.

  2. Di panel navigasi di sisi kiri konsol, pilih Tabel.

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

  4. Pada tab Backup tabel, di bagian P oint-in-time Recovery, pilih Restore.

  5. Untuk nama tabel baru, masukkan nama baru untuk tabel yang dipulihkan, misalnyamytable_restored.

  6. 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).

  7. 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';

    oint-in-time Pemulihan P 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" } }
    • 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 in 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 RESTORE TABLE di referensi bahasa.

  2. 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 telah PITR diaktifkan. 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'
  2. Konfirmasikan properti tabel baru dan tinjau earliestRestorableTimestamp untukPITR.

    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:111222333444:/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": "" } }
    • Untuk mengembalikan tabel ke titik waktu, tentukan format restore_timestamp dalam ISO 8601. Anda dapat memilih titik waktu 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 tabel dipulihkan. ARN

      { "restoredTableARN": "arn:aws:cassandra:us-east-1:111222333444:/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'"