Bagikan melalui


Ketersediaan tinggi di Azure DocumentDB

Ketersediaan tinggi regional (HA) menghindari waktu henti database dengan mempertahankan replika cadangan dari setiap shard dalam kluster. Jika pecahan (shard) menjadi tidak responsif karena alasan apa pun, Azure DocumentDB mengalihkan koneksi masuk dari shard yang gagal ke cadangan. Ketika failover terjadi, shard yang dipromosikan selalu memiliki data terkini melalui replikasi sinkron.

Semua pecahan utama dalam kluster disediakan ke dalam satu zona ketersediaan (AZ) untuk latensi yang lebih baik antara pecahan. Pecahan siaga dialokasikan di zona ketersediaan lain.

Bahkan tanpa ha diaktifkan, setiap shard memiliki penyimpanan redundan lokal (LRS) sendiri dengan tiga replika sinkron yang dikelola oleh layanan Azure Storage. Ketiga replika terletak di wilayah Azure kluster. Jika ada satu kegagalan replika, layanan Azure Storage mendeteksinya dan secara transparan membuat ulang replika yang gagal. Lihat metrik di halaman ini untuk durabilitas penyimpanan LRS.

Saat HA diaktifkan , Azure DocumentDB menjalankan satu shard siaga untuk setiap shard utama di kluster. Setiap shard utama dan siaga memiliki konfigurasi komputasi dan penyimpanan yang sama. Utama dan cadangannya menggunakan replikasi yang sinkron. Jenis replikasi ini memungkinkan Anda untuk selalu memiliki data yang sama pada pecahan utama dan siaga di kluster Anda. Singkatnya, layanan kami mendeteksi kegagalan pada pecahan utama dan beralih ke pecahan siaga tanpa kehilangan data.

String koneksi kluster selalu tetap sama terlepas dari failover. Itu memungkinkan layanan untuk mengabstraksi perubahan dalam pecahan fisik yang melayani permintaan dari aplikasi.

Ketika ketersediaan tinggi dalam wilayah diaktifkan pada kluster, setiap pecahan kluster termasuk dalam SLA tingkat ketersediaan 99,99%.

Ketersediaan tinggi dapat diaktifkan pada waktu pembuatan kluster. Ketersediaan tinggi juga dapat diaktifkan dan dinonaktifkan kapan saja pada kluster Azure DocumentDB yang ada. Tidak ada waktu henti database saat ketersediaan tinggi diaktifkan atau dinonaktifkan pada kluster Azure DocumentDB.

Apa yang terjadi selama failover

Setiap proses failover shard terdiri dari tiga tahap: Deteksi ketidaktersediaan, peralihan ke shard siaga, dan pembuatan ulang shard cadangan. Layanan ini secara berkala melakukan pemeriksaan status kesehatan untuk memantau ketersediaan setiap shard primer dan siaga dalam kluster. Ketika pemeriksaan kesehatan secara andal menunjukkan bahwa shard menjadi tidak responsif dan harus dinyatakan gagal, proses failover sebenarnya ke shard siaga dimulai.

Selama fase pengalihan, pembacaan dan penulisan database dialihkan ke shard siaga. Replikasi sinkron antara setiap shard primer dan siaga memastikan bahwa shard siaga selalu memiliki kumpulan data yang sama dengan yang utamanya. Memungkinkan semua failover dilakukan tanpa kehilangan data. Peralihan ke siaga dilakukan tanpa waktu henti untuk pembacaan. Operasi tulis mungkin memerlukan percobaan ulang layanan internal selama fase pengalihan. Percobaan ulang ini mungkin terlihat sebagai kelambatan dalam operasi penulisan di sisi aplikasi.

Setelah failover shard selesai, kluster beroperasi penuh. Langkah terakhir untuk kembali ke konfigurasi asli yang sangat tersedia adalah membuat ulang shard siaga. Pembuatan ulang shard siaga ini dilakukan tanpa waktu henti atau dampak performa pada shard utama.