Replikasi dan performa

Mengaktifkan replikasi memengaruhi performa instance Bigtable. Efeknya positif untuk beberapa metrik dan negatif untuk metrik lainnya. Anda harus memahami potensi dampak terhadap performa sebelum memutuskan untuk mengaktifkan replikasi.

Throughput baca

Replikasi dapat meningkatkan throughput baca, terutama saat Anda menggunakan perutean multi-cluster. Selain itu, replikasi dapat mengurangi latensi baca dengan menempatkan data Bigtable Anda secara geografis lebih dekat dengan pengguna aplikasi Anda.

Throughput tulis

Meskipun replikasi dapat meningkatkan ketersediaan dan performa baca, replikasi tidak meningkatkan throughput tulis. Penulisan ke satu cluster harus direplikasi ke semua cluster lain dalam instance. Akibatnya, setiap cluster menggunakan resource CPU untuk menarik perubahan dari cluster lain. Throughput tulis mungkin benar-benar menurun karena replikasi mengharuskan setiap cluster melakukan pekerjaan tambahan.

Misalnya, anggaplah Anda memiliki instance cluster tunggal, dan cluster tersebut memiliki 3 node:

Instance cluster tunggal yang memiliki 3 node

Jika Anda menambahkan node ke cluster, pengaruhnya terhadap throughput tulis berbeda dengan jika Anda mengaktifkan replikasi dengan menambahkan cluster 3 node kedua ke instance.

Menambahkan node ke cluster asli: Anda dapat menambahkan 3 node ke cluster, sehingga totalnya menjadi 6 node. Throughput tulis untuk instance berlipat ganda, tetapi data instance hanya tersedia di satu zona:

Instance cluster tunggal yang memiliki 6 node

Dengan replikasi: Atau, Anda dapat menambahkan cluster kedua dengan 3 node, sehingga totalnya menjadi 6 node. Instance kini menulis setiap bagian data dua kali: saat penulisan pertama kali diterima dan lagi saat direplikasi ke cluster lainnya. Throughput tulis tidak meningkat, dan bahkan mungkin menurun, tetapi Anda mendapatkan manfaat dari ketersediaan data di dua zona yang berbeda:

Instance dua cluster yang memiliki 6 node

Dalam contoh ini, instance cluster tunggal dapat menangani throughput penulisan dua kali lebih besar daripada yang dapat ditangani instance yang direplikasi, meskipun setiap cluster instance memiliki total 6 node.

Latensi replikasi

Saat Anda menggunakan pemilihan rute multi-cluster, replikasi untuk Bigtable bersifat konsisten pada akhirnya. Sebagai aturan umum, perlu waktu lebih lama untuk mereplikasi data di jarak yang lebih jauh. Cluster yang direplikasi di region yang berbeda biasanya akan memiliki latensi replikasi yang lebih tinggi daripada cluster yang direplikasi di region yang sama.

Penggunaan node

Seperti yang dijelaskan dalam Throughput penulisan, saat instance menggunakan replikasi, setiap cluster dalam instance harus menangani pekerjaan replikasi selain beban yang diterimanya dari aplikasi. Oleh karena itu, cluster dalam instance multi-cluster sering kali memerlukan lebih banyak node daripada cluster dalam instance cluster tunggal dengan traffic yang serupa.

Profil aplikasi dan perutean traffic

Bergantung pada kasus penggunaan, Anda akan menggunakan satu atau beberapa profil aplikasi untuk merutekan traffic Bigtable. Setiap profil aplikasi menggunakan perutean multi-cluster atau cluster tunggal. Pilihan perutean dapat memengaruhi performa.

Pemilihan rute multi-cluster dapat meminimalkan latensi. Profil aplikasi dengan perutean multi-cluster secara otomatis merutekan permintaan ke cluster terdekat dalam instance dari perspektif aplikasi, dan penulisan kemudian direplikasi ke cluster lain dalam instance. Pilihan otomatis jarak terpendek ini menghasilkan latensi serendah mungkin.

Profil aplikasi yang menggunakan perutean cluster tunggal dapat optimal untuk kasus penggunaan tertentu, seperti memisahkan workload atau memiliki semantik baca setelah tulis pada cluster tunggal, tetapi tidak akan mengurangi latensi seperti yang dilakukan perutean multi-cluster.

Untuk memahami cara mengonfigurasi profil aplikasi Anda untuk kasus penggunaan ini dan lainnya, lihat Contoh Setelan Replikasi.

Menghapus rentang baris

Jika memungkinkan, hindari menjatuhkan rentang baris dalam instance yang menggunakan replikasi karena operasi ini lambat dan penggunaan CPU meningkat selama operasi.

Langkah berikutnya