Cara kerja 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.

Cara kerja tabel global DynamoDB

Tabel global multi-akun memperluas tabel global DynamoDB yang dikelola sepenuhnya, tanpa server, Multi-wilayah, dan kemampuan multi-aktif untuk menjangkau beberapa akun. AWS Tabel global multi-akun mereplikasi data di seluruh AWS Wilayah dan akun, menyediakan fungsionalitas aktif-aktif yang sama dengan tabel global akun yang sama. Saat Anda menulis ke replika apa pun, DynamoDB mereplikasi data ke semua replika lainnya.

Perbedaan utama dari tabel global akun yang sama meliputi:

  • Replikasi multi-akun didukung untuk tabel global Multi-region eventual consistency (MREC).

  • Anda hanya dapat menambahkan replika dengan memulai dengan tabel Single-region. Mengonversi tabel global akun yang sama yang ada menjadi pengaturan multi-akun tidak didukung. Untuk bermigrasi, Anda harus menghapus replika yang ada untuk kembali ke tabel Single-region sebelum membuat tabel global multi-akun baru.

  • Setiap replika harus berada di akun terpisah AWS . Untuk tabel global multi-akun dengan replika N, Anda harus memiliki akun N.

  • Tabel global multi-akun menggunakan pengaturan tabel terpadu di semua replika secara default. Semua replika secara otomatis berbagi konfigurasi yang sama (seperti mode throughput, TTL, dan PITR), dan tidak seperti tabel global akun yang sama, pengaturan ini tidak dapat diganti per replika.

  • Pelanggan harus memberikan izin replikasi ke prinsipal layanan tabel global DynamoDB dalam kebijakan sumber daya mereka.

Tabel global multi-akun menggunakan teknologi replikasi dasar yang sama dengan tabel global akun yang sama. Pengaturan tabel direplikasi secara otomatis di semua replika regional, dan pelanggan tidak dapat mengganti atau menyesuaikan pengaturan per replika. Ini memastikan konfigurasi yang konsisten dan perilaku yang dapat diprediksi di beberapa AWS akun yang berpartisipasi dalam tabel global yang sama.

Pengaturan dalam tabel global DynamoDB menentukan bagaimana tabel berperilaku dan bagaimana data direplikasi di seluruh Wilayah. Pengaturan ini dikonfigurasi melalui APIs bidang kontrol DynamoDB selama pembuatan tabel atau saat menambahkan replika regional baru.

Saat membuat tabel global multi-akun, pelanggan harus mengatur GlobalTableSettingsReplicationMode = ENABLED untuk setiap replika regional. Ini memastikan bahwa perubahan konfigurasi yang dibuat di satu Wilayah menyebar secara otomatis ke semua Wilayah lain yang berpartisipasi dalam tabel global.

Anda dapat mengaktifkan replikasi pengaturan setelah pembuatan tabel. Ini mendukung skenario di mana tabel awalnya dibuat sebagai tabel regional dan kemudian ditingkatkan ke tabel global multi-akun.

Pengaturan yang Disinkronkan

Pengaturan tabel berikut selalu disinkronkan di semua replika dalam tabel global multi-akun:

catatan

Tidak seperti tabel global akun yang sama, tabel global multi-akun tidak mengizinkan penggantian Per-wilayah untuk pengaturan ini. Satu-satunya pengecualian adalah penggantian untuk kebijakan auto-scaling baca (tabel dan GSIs) diizinkan karena merupakan sumber daya eksternal yang terpisah.

  • Mode kapasitas (kapasitas yang disediakan atau sesuai permintaan)

  • Tabel menyediakan kapasitas baca dan tulis

  • Tabel membaca dan menulis penskalaan otomatis

  • Definisi Indeks Sekunder Lokal (LSI)

  • Definisi Indeks Sekunder Global (GSI)

  • GSI menyediakan kapasitas baca dan tulis

  • GSI membaca dan menulis penskalaan otomatis

  • Definisi aliran dalam mode MREC

  • Waktu Untuk Tayang (TTL)

  • Throughput Hangat

  • Throughput baca dan tulis maksimum sesuai permintaan

Pengaturan Non-Sinkronisasi

Pengaturan berikut tidak disinkronkan antara replika dan harus dikonfigurasi secara independen untuk setiap tabel replika di setiap Wilayah.

  • Kelas Tabel

  • Jenis Enkripsi sisi server (SSE)

  • Enkripsi sisi server (SSE) ID Kunci KMS

  • Perlindungan Penghapusan

  • Kinesis Data Streams (KDSD)

  • Tag

  • Kebijakan Sumber Daya

  • Tabel Wawasan Kontributor Cloudwatch (CCI)

  • Wawasan Kontributor Cloudwatch GSI (CCI)

Memantau

Tabel global yang dikonfigurasi untuk konsistensi akhir Multi-wilayah (MREC) mempublikasikan metrik ke. ReplicationLatency CloudWatch Metrik ini melacak waktu yang telah berlalu antara saat item ditulis ke tabel replika, dan kapan item itu muncul di replika lain di tabel global. ReplicationLatencydinyatakan dalam milidetik dan dipancarkan untuk setiap pasangan Wilayah sumber dan tujuan dalam tabel global.

ReplicationLatencyNilai tipikal tergantung pada jarak antara AWS Wilayah yang Anda pilih, serta variabel lain seperti jenis beban kerja dan throughput. Misalnya, replika sumber di Wilayah AS Barat (California Utara) (us-west-1) memiliki lebih rendah ReplicationLatency ke Wilayah Barat AS (Oregon) (us-west-2) dibandingkan dengan Wilayah Afrika (Cape Town) (af-south-1).

Nilai yang meningkat untuk ReplicationLatency dapat menunjukkan bahwa pembaruan dari satu replika tidak menyebar ke tabel replika lain secara tepat waktu. Dalam hal ini, Anda dapat mengalihkan sementara aktivitas baca dan tulis aplikasi Anda ke AWS Wilayah yang berbeda.

Menangani Masalah Latensi Replikasi di Tabel Global Multi-akun

Jika ReplicationLatency melebihi 3 jam karena masalah yang disebabkan oleh pelanggan pada tabel replika, DynamoDB mengirimkan pemberitahuan yang meminta pelanggan untuk mengatasi masalah mendasar. Masalah umum yang disebabkan oleh pelanggan yang dapat mencegah replikasi meliputi:

  • Menghapus izin yang diperlukan dari kebijakan sumber daya tabel replika

  • Memilih keluar dari AWS Wilayah yang menampung replika tabel global multi-akun

  • Menolak izin kunci AWS KMS tabel yang diperlukan untuk mendekripsi data

DynamoDB mengirimkan pemberitahuan awal dalam waktu 3 jam setelah latensi replikasi meningkat, diikuti dengan pemberitahuan kedua setelah 20 jam jika masalah tetap belum terselesaikan. Jika masalah tidak diperbaiki dalam jendela waktu yang diperlukan, DynamoDB akan secara otomatis memisahkan replika dari tabel global. Replika yang terpengaruh kemudian akan dikonversi ke tabel regional.