Penskalaan
Menskalakan cluster adalah proses menambahkan atau menghapus node dari cluster sebagai respons terhadap perubahan beban kerja atau kebutuhan penyimpanan data cluster. Saat membuat cluster, Anda juga dapat mengonfigurasi faktor penskalaan node untuk cluster. Sebelum mengonfigurasi penskalaan, pahami batasannya.
Anda dapat menskalakan cluster Bigtable dengan cara berikut:
- Penskalaan otomatis
- Alokasi node manual
Dalam sebagian besar kasus, pilih penskalaan otomatis. Saat Anda mengaktifkan penskalaan otomatis untuk cluster, Bigtable akan terus memantau cluster dan menyesuaikan jumlah node secara otomatis berdasarkan setelan Anda.
Anda dapat menskalakan cluster Bigtable berdasarkan metrik seperti penggunaan CPU cluster. Misalnya, jika cluster Anda mengalami beban berat dan pemanfaatan CPU-nya tinggi, Anda dapat menambahkan node ke cluster hingga penggunaan CPU-nya menurun. Anda juga dapat menghemat uang dengan menghapus node dari cluster saat cluster tidak digunakan secara intensif.
Faktor penskalaan node
Saat membuat cluster Bigtable, Anda memiliki opsi untuk mengonfigurasi cluster dengan faktor penskalaan node 2x. Jika Anda memilih konfigurasi ini, Bigtable akan memperlakukan dua node standar sebagai satu node komputasi yang lebih besar, dan cluster akan selalu diskalakan dalam inkremen dua node. Akibatnya, ada lebih sedikit batas komputasi antar-node dalam cluster. Bergantung pada workload, manfaat penskalaan node 2x meliputi hal berikut:
- Peningkatan throughput dan stabilitas latensi ekor
- Kemampuan yang lebih besar untuk menyerap hotspot
Anda dapat membuat cluster dengan faktor penskalaan node 2x yang diaktifkan saat menggunakan konsolGoogle Cloud atau gcloud CLI.
Anda dapat mengonfigurasi penskalaan node 2x dengan penskalaan otomatis atau alokasi node manual.
Untuk mengetahui batasan, lihat Batasan faktor penskalaan node.
Cluster kecil
Penskalaan node 2x optimal untuk workload yang lebih besar. Jika Anda mempertimbangkan untuk mengubah dari penskalaan node standar (dengan faktor satu) ke penskalaan node 2x, pertimbangkan implikasi biayanya. Untuk workload yang lebih kecil, seperti yang berjalan di cluster dengan satu node, menggunakan penskalaan node 2x akan dikenai biaya dua kali lebih mahal. Demikian pula, menggunakan penskalaan node 2x untuk beban kerja yang sebelumnya dijalankan di cluster dengan 3 node akan meningkatkan biaya sebesar 33%.
Di sisi lain, untuk beban kerja yang sebelumnya berjalan di cluster besar, seperti cluster dengan 50 node, efek faktor penskalaan node 2x kecil dibandingkan dengan jumlah node.
Bigtable akan menampilkan error jika Anda mencoba membuat cluster dengan faktor penskalaan node 2x di zona yang tidak didukung.
Batasan
Penskalaan cluster tunduk pada ketersediaan node, memerlukan waktu untuk diselesaikan, tidak dapat mengompensasi desain skema yang tidak tepat, dan harus dilakukan secara bertahap. Bagian berikut menjelaskan batasan ini, serta batasan yang berlaku untuk penskalaan node 2x.
Ketersediaan node
Kuota node berlaku terlepas dari apakah cluster memiliki alokasi node manual atau penskalaan otomatis yang diaktifkan. Lihat Kuota dan ketersediaan node untuk mengetahui detailnya.
Penundaan saat node menyeimbangkan ulang
Setelah Anda menambahkan node ke cluster, perlu waktu hingga 20 menit dalam pemuatan sebelum Anda melihat peningkatan performa cluster yang signifikan. Akibatnya, jika beban kerja Anda melibatkan lonjakan aktivitas tinggi yang singkat, menambahkan node ke kluster berdasarkan beban CPU tidak akan meningkatkan performa. Pada saat Bigtable menyeimbangkan kembali data Anda, lonjakan aktivitas singkat akan berakhir.
Untuk merencanakan penundaan ini, Anda dapat menambahkan node ke cluster, baik secara terprogram maupun melalui konsol Google Cloud , sebelum Anda meningkatkan beban pada cluster. Pendekatan ini memberi Bigtable waktu untuk menyeimbangkan ulang data Anda di seluruh node tambahan sebelum beban kerja meningkat. Pada cluster yang menggunakan alokasi node manual, ubah jumlah node. Pada cluster yang menggunakan penskalaan otomatis, ubah jumlah minimum node. Setelah traffic kembali normal, ubah setelan node Anda kembali.
Peningkatan latensi yang disebabkan oleh penurunan skala terlalu cepat
Saat Anda mengurangi jumlah node dalam cluster untuk menurunkan skala, usahakan untuk tidak mengurangi ukuran cluster lebih dari 10% dalam jangka waktu 10 menit. Penskalaan yang terlalu cepat dapat menyebabkan masalah performa, seperti peningkatan latensi, jika node yang tersisa di cluster menjadi kewalahan untuk sementara.
Masalah desain skema
Jika ada masalah dengan desain skema untuk tabel Anda, penambahan node ke cluster Bigtable Anda mungkin tidak meningkatkan performa. Misalnya, jika Anda memiliki banyak operasi baca atau tulis ke satu baris dalam tabel, semua operasi baca atau tulis akan dilakukan ke node yang sama di cluster; akibatnya, penambahan node tidak akan meningkatkan performa. Sebaliknya, jika operasi baca dan tulis didistribusikan secara merata di seluruh baris dalam tabel, penambahan node umumnya akan meningkatkan performa.
Lihat Mendesain Skema Anda untuk mengetahui detail tentang cara mendesain skema yang memungkinkan Bigtable melakukan penskalaan secara efektif.
Batasan faktor penskalaan node
Anda tidak dapat mengonversi cluster dengan penskalaan node standar untuk menggunakan penskalaan node 2x; Anda harus membuat cluster baru dan mengaktifkan penskalaan node 2x pada saat pembuatan. Untuk informasi selengkapnya tentang cara menambahkan cluster ke instance, lihat Mengubah instance.
Anda tidak dapat mengonfigurasi penskalaan node 2x untuk cluster HDD.
Anda dapat membuat cluster yang dikonfigurasi dengan penskalaan node 2x di setiap region Bigtable, tetapi tidak di setiap zona. Zona berikut tidak dapat berisi cluster dengan penskalaan node 2x:
- asia-south1-c
- europe-central2-c
- me-central2-b
- me-central2-c
- northamerica-northeast1-a
- northamerica-northeast1-b
- southamerica-east1-c
- us-south1-b
- us-south1-c
Langkah berikutnya
- Pelajari penskalaan otomatis Bigtable.
- Cari tahu cara memantau instance, baik secara terprogram maupun melalui konsol Google Cloud .