Replikasi dan performa
Mengaktifkan replikasi akan 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 secara geografis lebih dekat dengan pengguna aplikasi Anda.
Throughput tulis
Meskipun replikasi dapat meningkatkan ketersediaan dan performa baca, replikasi tidak meningkatkan throughput operasi tulis. Penulisan ke satu cluster harus direplikasi ke semua cluster lain dalam instance tersebut. Akibatnya, setiap cluster menghabiskan resource CPU untuk mengambil perubahan dari cluster lainnya. Throughput tulis mungkin sebenarnya turun karena replikasi mengharuskan setiap cluster melakukan pekerjaan tambahan.
Misalnya, Anda memiliki instance cluster tunggal, dan cluster tersebut memiliki 3 node:
Jika Anda menambahkan node ke cluster, efeknya pada throughput operasi tulis akan 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, dengan total 6 node. Throughput tulis untuk instance akan berlipat ganda, tetapi data instance hanya tersedia dalam satu zona:
Dengan replikasi: Atau, Anda dapat menambahkan cluster kedua dengan 3 node, dengan total 6 node. Instance kini menulis setiap bagian data dua kali: saat penulisan pertama kali diterima dan sekali lagi saat penulisan direplikasi ke cluster lainnya. Throughput operasi tulis tidak meningkat, dan dapat menurun, tetapi Anda akan diuntungkan karena data tersedia di dua zona berbeda:
Dalam contoh ini, instance cluster tunggal dapat menangani dua kali throughput tulis yang dapat ditangani oleh instance yang direplikasi, meskipun setiap cluster instance memiliki total 6 node.
Latensi replikasi
Saat Anda menggunakan perutean multi-cluster, replikasi untuk Bigtable pada akhirnya konsisten. Sebagai aturan umum, dibutuhkan waktu yang lebih lama untuk mereplikasi data pada jarak yang lebih jauh. Cluster replika 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 tulis, saat instance menggunakan replikasi, setiap cluster dalam instance harus menangani pekerjaan replikasi selain beban yang diterima dari aplikasi. Oleh karena itu, sebuah cluster dalam instance multi-cluster sering kali membutuhkan lebih banyak node daripada cluster dalam instance cluster tunggal dengan traffic serupa.
Profil aplikasi dan pemilihan rute 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 pemilihan rute dapat memengaruhi performa.
Pemilihan rute multi-cluster dapat meminimalkan latensi. Profil aplikasi dengan perutean multi-cluster mengarahkan permintaan ke cluster terdekat dalam instance secara otomatis dari perspektif aplikasi, dan penulisan kemudian direplikasi ke cluster lain dalam instance tersebut. Pilihan otomatis untuk jarak terpendek ini menghasilkan latensi serendah mungkin.
Profil aplikasi yang menggunakan perutean cluster tunggal dapat menjadi optimal untuk kasus penggunaan tertentu, seperti memisahkan workload atau memiliki semantik baca setelah tulis di satu cluster, tetapi tidak akan mengurangi latensi seperti yang dilakukan pada pemilihan rute multi-cluster.
Guna memahami cara mengonfigurasi profil aplikasi Anda untuk kasus penggunaan ini dan kasus penggunaan lainnya, lihat Contoh Setelan Replikasi.
Menghapus rentang baris
Jika memungkinkan, hindari penurunan rentang baris pada instance yang menggunakan replikasi karena operasinya lambat dan penggunaan CPU meningkat selama operasi tersebut.
Langkah selanjutnya
- Baca tentang Failover.
- Pelajari Opsi pemilihan rute.