View a markdown version of this page

Versi tabel global DynamoDB - Amazon DynamoDB

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

Versi tabel global DynamoDB

Ada dua versi tabel global DynamoDB yang tersedia: Tabel Global versi 2019.11.21 (Saat ini) dan tabel global versi 2017.11.29 (Legacy). Sebaiknya gunakan Tabel Global versi 2019.11.21 (Saat ini), karena lebih mudah digunakan, didukung di lebih banyak Wilayah, dan biaya lebih rendah untuk sebagian besar beban kerja dibandingkan dengan versi 2017.11.29 (Legacy).

Menentukan versi tabel global

Menentukan versi menggunakan AWS CLI

Mengidentifikasi replika tabel global versi 2019.11.21 (Saat ini)

Untuk menentukan apakah tabel adalah replika tabel global versi 2019.11.21 (Current), panggil describe-table perintah untuk tabel. Jika output berisi GlobalTableVersion atribut dengan nilai “2019.11.21", tabel adalah replika tabel global versi 2019.11.21 (Current).

Contoh perintah CLI untuk: describe-table

aws dynamodb describe-table \ --table-name users \ --region us-east-2

Output (diringkas) berisi GlobalTableVersion atribut dengan nilai “2019.11.21", jadi tabel ini adalah replika tabel global versi 2019.11.21 (Saat ini).

{ "Table": { "AttributeDefinitions": [ { "AttributeName": "id", "AttributeType": "S" }, { "AttributeName": "name", "AttributeType": "S" } ], "TableName": "users", ... "GlobalTableVersion": "2019.11.21", "Replicas": [ { "RegionName": "us-west-2", "ReplicaStatus": "ACTIVE", } ], ... } }

Mengidentifikasi replika tabel global versi 2017.11.29 (Legacy)

Tabel global versi 2017.11.29 (Legacy) menggunakan serangkaian perintah khusus untuk manajemen tabel global. Untuk menentukan apakah tabel adalah replika tabel global versi 2017.11.29 (Legacy), panggil describe-global-table perintah untuk tabel. Jika Anda menerima respons yang berhasil, tabel tersebut adalah replika tabel global versi 2017.11.29 (Legacy). Jika describe-global-table perintah mengembalikan GlobalTableNotFoundException kesalahan, tabel tersebut bukan replika versi 2017.11.29 (Legacy).

Contoh perintah CLI untuk: describe-global-table

aws dynamodb describe-global-table \ --global-table-name users \ --region us-east-2

Perintah mengembalikan respons yang berhasil, jadi tabel ini adalah replika tabel global versi 2017.11.29 (Legacy).

{ "GlobalTableDescription": { "ReplicationGroup": [ { "RegionName": "us-west-2" }, { "RegionName": "us-east-2" } ], "GlobalTableArn": "arn:aws:dynamodb::123456789012:global-table/users", "CreationDateTime": "2025-06-10T13:55:53.630000-04:00", "GlobalTableStatus": "ACTIVE", "GlobalTableName": "users" } }

Menentukan versi menggunakan Konsol DynamoDB

Untuk mengidentifikasi versi replika tabel global, lakukan hal berikut:

  1. Buka konsol DynamoDB di. https://console.aws.amazon.com/dynamodb/home

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

  3. Pilih tabel yang ingin Anda identifikasi versi tabel global.

  4. Pilih tab Tabel Global.

    Bagian Ringkasan menampilkan versi tabel global yang digunakan.

Perbedaan perilaku antara versi Legacy dan Current

Daftar berikut menjelaskan perbedaan perilaku antara versi Legacy dan Current dari tabel global.

  • versi 2019.11.21 (Saat ini) mengkonsumsi lebih sedikit kapasitas penulisan untuk beberapa operasi DynamoDB dibandingkan dengan versi 2017.11.29 (Legacy), dan oleh karena itu, lebih hemat biaya bagi sebagian besar pelanggan. Perbedaan untuk operasi DynamoDB ini adalah sebagai berikut:

    • Memanggil PutItem item 1KB di Wilayah dan mereplikasi ke Wilayah lain memerlukan 2 RWRU per wilayah untuk 2017.11.29 (Legacy), tetapi hanya 1 RWru untuk 2019.11.21 (Saat ini).

    • Memanggil UpdateItem item 1KB membutuhkan 2 RWRU di Wilayah sumber dan 1 RWru per Wilayah tujuan untuk 2017.11.29 (Legacy), tetapi hanya 1 RWru untuk Wilayah sumber dan tujuan untuk 2019.11.21 (Saat ini).

    • Memanggil DeleteItem item 1KB membutuhkan 1 RWru di Wilayah sumber dan 2 RWRU per Wilayah tujuan untuk 2017.11.29 (Legacy), tetapi hanya 1 RWru untuk Wilayah sumber atau tujuan untuk 2019.11.21 (Saat ini).

    Tabel berikut menunjukkan konsumsi RWru tabel 2017.11.29 (Legacy) dan 2019.11.21 (Current) untuk item 1KB di dua Wilayah.

    Operasi 29.11.2017 (Warisan) 2019.11.21 (Saat ini) Tabungan
    PutItem 4 RWU 2 RWU 50%
    UpdateItem 3 RWU 2 RWU 33%
    DeleteItem 3 RWU 2 RWU 33%
  • versi 2017.11.29 (Legacy) tersedia hanya dalam 11. Wilayah AWS Namun, versi 2019.11.21 (Saat ini) tersedia di semua. Wilayah AWS

  • Anda membuat tabel global versi 2017.11.29 (Legacy) dengan terlebih dahulu membuat satu set tabel Regional kosong, lalu memanggil CreateGlobalTable API untuk membentuk tabel global. Anda membuat tabel global versi 2019.11.21 (Saat ini) dengan memanggil UpdateTable API untuk menambahkan replika ke tabel Regional yang ada.

  • versi 2017.11.29 (Legacy) mengharuskan Anda untuk mengosongkan semua replika dalam tabel sebelum menambahkan replika di Wilayah baru (termasuk selama pembuatan). versi 2019.11.21 (Saat ini) mendukung Anda untuk menambah dan menghapus replika ke Wilayah pada tabel yang sudah berisi data.

  • versi 2017.11.29 (Legacy) menggunakan kumpulan API bidang kontrol khusus berikut untuk mengelola replika:

    versi 2019.11.21 (Saat ini) menggunakan UpdateTable API DescribeTable dan untuk mengelola replika.

  • versi 2017.11.29 (Legacy) menerbitkan dua catatan DynamoDB Streams untuk setiap penulisan. versi 2019.11.21 (Saat ini) hanya menerbitkan satu catatan DynamoDB Streams untuk setiap penulisan.

  • versi 2017.11.29 (Legacy) mengisi dan memperbaruiaws:rep:deleting,aws:rep:updateregion, dan atributaws:rep:updatetime. versi 2019.11.21 (Saat ini) tidak mengisi atau memperbarui atribut ini.

  • versi 2017.11.29 (Legacy) tidak menyinkronkan Menggunakan time to live (TTL) di DynamoDB pengaturan di seluruh replika. versi 2019.11.21 (Saat ini) menyinkronkan pengaturan TTL di seluruh replika.

  • versi 2017.11.29 (Legacy) tidak mereplikasi penghapusan TTL ke replika lain. versi 2019.11.21 (Saat ini) mereplikasi penghapusan TTL ke semua replika.

  • versi 2017.11.29 (Legacy) tidak menyinkronkan pengaturan penskalaan otomatis di seluruh replika. versi 2019.11.21 (Saat ini) menyinkronkan pengaturan penskalaan otomatis di seluruh replika.

  • versi 2017.11.29 (Legacy) tidak menyinkronkan pengaturan indeks sekunder global (GSI) di seluruh replika. versi 2019.11.21 (Saat ini) menyinkronkan pengaturan GSI di seluruh replika.

  • versi 2017.11.29 (Legacy) tidak menyinkronkan enkripsi pada pengaturan istirahat di seluruh replika. versi 2019.11.21 (Saat ini) menyinkronkan enkripsi pada pengaturan istirahat di seluruh replika.

  • versi 2017.11.29 (Legacy) menerbitkan PendingReplicationCount metrik. versi 2019.11.21 (Saat ini) tidak menerbitkan metrik ini.

Upgrade ke versi saat ini

Izin yang diperlukan untuk peningkatan tabel global

Untuk memutakhirkan ke versi 2019.11.21 (Saat ini), Anda harus memiliki dynamodb:UpdateGlobalTableversion izin di semua Wilayah dengan replika. Izin ini diperlukan selain izin yang diperlukan untuk mengakses konsol DynamoDB dan melihat tabel.

Kebijakan IAM berikut memberikan izin untuk memutakhirkan tabel global ke versi 2019.11.21 (Saat ini).

{ "version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dynamodb:UpdateGlobalTableversion", "Resource": "*" } ] }

Kebijakan IAM berikut memberikan izin untuk memutakhirkan hanya tabel Music global dengan replika di dua Wilayah ke versi 2019.11.21 (Saat ini).

{ "version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dynamodb:UpdateGlobalTableversion", "Resource": [ "arn:aws:dynamodb::123456789012:global-table/Music", "arn:aws:dynamodb:ap-southeast-1:123456789012:table/Music", "arn:aws:dynamodb:us-east-2:123456789012:table/Music" ] } ] }

Apa yang diharapkan selama peningkatan

  • Semua replika tabel global akan terus memproses lalu lintas baca dan tulis saat memutakhirkan.

  • Proses peningkatan membutuhkan antara beberapa menit hingga beberapa jam tergantung pada ukuran tabel dan jumlah replika.

  • Selama proses peningkatan, nilai TableStatus akan berubah dari ACTIVE keUPDATING. Anda dapat melihat status tabel dengan memanggil DescribeTable API, atau dengan tampilan Tabel di konsol DynamoDB.

  • Penskalaan otomatis tidak akan menyesuaikan pengaturan kapasitas yang disediakan untuk tabel global saat tabel sedang ditingkatkan. Kami sangat menyarankan Anda mengatur tabel ke mode On-demand Modus kapasitas sesuai permintaan selama peningkatan.

  • Jika Anda memilih untuk menggunakan mode Mode kapasitas disediakan DynamoDB kapasitas yang disediakan dengan penskalaan otomatis selama pemutakhiran, Anda harus meningkatkan throughput baca dan tulis minimum pada kebijakan Anda untuk mengakomodasi peningkatan lalu lintas yang diharapkan untuk menghindari pembatasan selama peningkatan.

  • Met ReplicationLatency rik dapat melaporkan lonjakan latensi sementara atau berhenti melaporkan data metrik selama proses peningkatan. Lihat,ReplicationLatency, untuk informasi lebih lanjut.

  • Ketika proses upgrade selesai, status tabel Anda akan berubah menjadiACTIVE.

Perilaku DynamoDB Streams sebelum, selama, dan setelah peningkatan

Operasi Wilayah Replika Perilaku sebelum meningkatkan Perilaku selama peningkatan Perilaku setelah peningkatan

Masukkan atau Perbarui

Sumber

Populasi stempel waktu terjadi menggunakan. UpdateItem Populasi stempel waktu terjadi menggunakan. PutItem Tidak ada stempel waktu yang terlihat pelanggan yang dihasilkan.
Dua catatan Streams dihasilkan. Catatan pertama berisi atribut tertulis pelanggan. Catatan kedua berisi aws:rep:* atribut. Dua catatan Streams dihasilkan. Catatan pertama berisi atribut tertulis pelanggan. Catatan kedua berisi aws:rep:* atribut. Sebuah catatan Streams tunggal dihasilkan yang berisi atribut customer-writen.
Dua RWCU dikonsumsi untuk setiap tulisan pelanggan. Dua RWCU dikonsumsi untuk setiap tulisan pelanggan. Satu RWCu dikonsumsi untuk setiap tulisan pelanggan.
ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencymetrik dipublikasikan di CloudWatch.

Tujuan

Replikasi terjadi menggunakan PutItem. Replikasi terjadi menggunakan PutItem. Replikasi terjadi menggunakan PutItem.
Sebuah catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan dan atribut. aws:rep:* Sebuah catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan dan atribut. aws:rep:* Catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan saja dan tidak ada atribut replikasi.
Satu RWCu dikonsumsi jika item ada di Wilayah tujuan. Dua RWCU dikonsumsi jika item tidak ada di Wilayah tujuan. Satu RWCu dikonsumsi jika item ada di Wilayah tujuan. Dua RWCU dikonsumsi jika item tidak ada di Wilayah tujuan. Satu RWCu dikonsumsi untuk setiap tulisan pelanggan.
ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencymetrik dipublikasikan di CloudWatch.

Hapus

Sumber

Hapus item apa pun dengan stempel waktu yang lebih kecil menggunakan. DeleteItem Hapus item apa pun dengan stempel waktu yang lebih kecil menggunakan. DeleteItem Hapus item apa pun dengan stempel waktu yang lebih kecil menggunakan. DeleteItem
Sebuah catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan dan atribut. aws:rep:* Sebuah catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan dan atribut. aws:rep:* Sebuah catatan Streams tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan.
Satu RWCu dikonsumsi untuk setiap penghapusan pelanggan. Satu RWCu dikonsumsi untuk setiap penghapusan pelanggan. Satu RWCu dikonsumsi untuk setiap penghapusan pelanggan.
ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencymetrik dipublikasikan di CloudWatch.

Tujuan

Two-phase penghapusan terjadi:

  • Pada Tahap 1, UpdateItem atur bendera penghapusan.

  • Di Tahap 2 DeleteItem , hapus item.

Menghapus item menggunakan DeleteItem. Menghapus item menggunakan DeleteItem.
Dua catatan Streams dihasilkan. Catatan pertama berisi perubahan ke aws:rep:deleting bidang. Catatan kedua berisi atribut yang ditulis pelanggan dan atribut. aws:rep:* Sebuah catatan Stream tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan. Sebuah catatan Stream tunggal dihasilkan, yang berisi atribut yang ditulis pelanggan.
Dua RWCU dikonsumsi untuk setiap penghapusan pelanggan. Satu RWCu dikonsumsi untuk setiap penghapusan pelanggan. Satu RWCu dikonsumsi untuk setiap penghapusan pelanggan.
ReplicationLatencydan PendingReplicationCount metrik dipublikasikan di CloudWatch. ReplicationLatencymetrik dipublikasikan di CloudWatch. ReplicationLatencymetrik dipublikasikan di CloudWatch.

Memutakhirkan ke versi 2019.11.21 (Saat ini)

Lakukan langkah-langkah berikut untuk memutakhirkan versi tabel global DynamoDB menggunakan. Konsol Manajemen AWS

Untuk memutakhirkan tabel global ke versi 2019.11.21 (Saat ini)
  1. Buka konsol DynamoDB di. https://console.aws.amazon.com/dynamodb/home

  2. Di panel navigasi di sisi kiri konsol, pilih Tabel, lalu pilih tabel global yang ingin Anda tingkatkan ke versi 2019.11.21 (Saat ini).

  3. Pilih tab Tabel Global.

  4. Pilih Perbarui versi.

    Tangkapan layar konsol yang menampilkan tombol Perbarui versi.
  5. Baca dan setujui persyaratan baru, lalu pilih Perbarui versi.

  6. Setelah proses upgrade selesai, versi tabel global yang muncul di konsol berubah menjadi 2019. 11.21.