Instance, cluster, dan node
Untuk menggunakan Bigtable, Anda membuat instance, yang berisi cluster yang dapat dihubungkan oleh aplikasi Anda. Setiap cluster berisi node, unit komputasi yang mengelola data Anda dan melakukan tugas pemeliharaan.
Halaman ini memberikan informasi selengkapnya tentang instance, cluster, dan node Bigtable.
- Untuk mempelajari cara membuat instance, lihat Membuat instance.
- Untuk mempelajari cara menambahkan atau menghapus cluster, lihat Mengubah instance.
- Untuk mempelajari cara memantau instance dan cluster-nya, lihat Memantau instance.
- Untuk mempelajari cara memperbarui jumlah node dalam cluster, lihat Menambahkan atau menghapus node.
Sebelum membaca halaman ini, Anda harus sudah memahami ringkasan Bigtable.
Instance
Instance Bigtable adalah penampung untuk data Anda. Instance memiliki satu atau beberapa cluster, yang terletak di zona yang berbeda. Setiap cluster memiliki minimal 1 node.
Tabel adalah milik instance, bukan cluster atau node. Jika memiliki instance dengan lebih dari satu cluster, Anda menggunakan replikasi. Artinya, Anda tidak dapat menetapkan tabel ke setiap cluster atau membuat kebijakan pembersihan sampah yang unik untuk setiap cluster dalam instance. Anda juga tidak dapat membuat setiap cluster menyimpan kumpulan data yang berbeda dalam tabel yang sama.
Instance memiliki beberapa properti penting yang perlu Anda ketahui:
- Jenis penyimpanan (SSD atau HDD)
- Profil aplikasi, yang terutama ditujukan untuk instance yang menggunakan replika
Bagian berikut menjelaskan properti ini.
Jenis penyimpanan
Saat membuat instance, Anda harus memilih apakah cluster instance akan menyimpan data di solid-state drive (SSD) atau hard disk drive (HDD). SSD sering kali, tetapi tidak selalu, merupakan pilihan yang paling efisien dan hemat biaya.
Pilihan antara SSD dan HDD bersifat permanen, dan setiap cluster dalam instance Anda harus menggunakan jenis penyimpanan yang sama, jadi pastikan Anda memilih jenis penyimpanan yang tepat untuk kasus penggunaan Anda. Lihat Memilih antara penyimpanan SSD dan HDD untuk mengetahui informasi selengkapnya guna membantu Anda memutuskan.
Profil aplikasi
Setelah Anda membuat instance, Bigtable akan menggunakan instance tersebut untuk menyimpan profil aplikasi, atau profil aplikasi. Untuk instance yang menggunakan replikasi, profil aplikasi mengontrol cara aplikasi Anda terhubung ke cluster instance.
Jika instance Anda tidak menggunakan replikasi, Anda masih dapat menggunakan profil aplikasi untuk memberikan ID terpisah untuk setiap aplikasi, atau setiap fungsi dalam aplikasi. Kemudian, Anda dapat melihat diagram terpisah untuk setiap profil aplikasi di konsol Google Cloud.
Untuk mempelajari profil aplikasi lebih lanjut, lihat profil aplikasi. Untuk mempelajari cara menyiapkan profil aplikasi instance, lihat Mengonfigurasi profil aplikasi.
Cluster
Cluster mewakili layanan Bigtable di lokasi tertentu. Setiap cluster termasuk dalam satu instance Bigtable, dan instance dapat memiliki cluster di hingga 8 region. Saat aplikasi Anda mengirim permintaan ke instance Bigtable, permintaan tersebut ditangani oleh salah satu cluster dalam instance.
Setiap cluster berada di satu zona.
Instance dapat memiliki cluster di maksimal 8 region tempat Bigtable tersedia.
Setiap zona dalam region hanya dapat berisi
satu cluster.
Misalnya, jika instance memiliki cluster di us-east1-b
, Anda dapat menambahkan cluster di zona lain di region yang sama, seperti us-east1-c
, atau zona di region terpisah, seperti europe-west2-a
.
Jumlah cluster yang dapat Anda buat dalam instance bergantung pada jumlah zona yang tersedia di region yang Anda pilih. Misalnya, jika Anda membuat cluster di 8 region yang masing-masing memiliki 3 zona, jumlah maksimum cluster yang dapat dimiliki instance adalah 24. Untuk mengetahui daftar zona dan region tempat Bigtable tersedia, lihat Lokasi Bigtable.
Instance Bigtable yang hanya memiliki 1 cluster tidak menggunakan replikasi. Jika Anda menambahkan cluster kedua ke instance, Bigtable akan otomatis mulai mereplikasi data Anda dengan menyimpan salinan data yang terpisah di setiap zona cluster dan menyinkronkan pembaruan di antara salinan tersebut. Anda dapat memilih cluster yang dihubungkan oleh aplikasi, sehingga memungkinkan isolasi berbagai jenis traffic satu sama lain. Anda juga dapat mengizinkan Bigtable menyeimbangkan traffic antar-cluster. Jika cluster tidak tersedia, Anda dapat melakukan failover dari satu cluster ke cluster lain. Untuk mempelajari lebih lanjut cara kerja replikasi, lihat ringkasan replikasi.
Pada umumnya, Anda harus mengaktifkan penskalaan otomatis untuk cluster, sehingga Bigtable menambahkan dan menghapus node sesuai kebutuhan untuk menangani beban kerja cluster.
Node
Setiap cluster dalam instance memiliki 1 atau beberapa node, yang merupakan resource komputasi yang digunakan Bigtable untuk mengelola data Anda.
Di balik layar, Bigtable membagi semua data dalam tabel menjadi tablet terpisah. Tablet disimpan di disk, terpisah dari node, tetapi di zona yang sama dengan node. Tablet dikaitkan dengan satu node.
Setiap node bertanggung jawab atas:
- Melacak tablet tertentu di disk.
- Menangani pembacaan dan penulisan yang masuk untuk tabletnya.
- Melakukan tugas pemeliharaan di tablet, seperti pengompresian berkala.
Cluster harus memiliki node yang memadai untuk mendukung beban kerja saat ini dan jumlah data yang disimpannya. Jika tidak, cluster mungkin tidak dapat menangani permintaan masuk dan latensi dapat meningkat. Pantau penggunaan CPU dan disk cluster Anda, dan tambahkan node ke instance jika metriknya melebihi rekomendasi di Merencanakan kapasitas.
Untuk mengetahui detail selengkapnya tentang cara Bigtable menyimpan dan mengelola data, lihat Arsitektur Bigtable.
Node untuk cluster yang direplikasi
Jika instance Anda memiliki lebih dari satu cluster, failover menjadi pertimbangan saat Anda mengonfigurasi jumlah maksimum node untuk penskalaan otomatis atau mengalokasikan node secara manual.
Jika Anda menggunakan perutean multi-cluster di profil aplikasi mana pun, failover otomatis dapat terjadi jika satu atau beberapa cluster tidak tersedia.
Saat Anda melakukan pengalihan secara manual dari satu cluster ke cluster lain, atau saat pengalihan otomatis terjadi, cluster penerima idealnya memiliki kapasitas yang cukup untuk mendukung beban. Anda dapat selalu mengalokasikan node yang cukup untuk mendukung failover, yang dapat mahal, atau Anda dapat mengandalkan penskalaan otomatis untuk menambahkan node saat traffic gagal, tetapi perhatikan bahwa mungkin ada dampak singkat pada performa saat cluster diskalakan.
Jika semua profil aplikasi Anda menggunakan rute cluster tunggal, setiap cluster dapat memiliki jumlah node yang berbeda. Ubah ukuran setiap cluster sesuai kebutuhan berdasarkan beban kerja cluster.
Karena Bigtable menyimpan salinan data Anda secara terpisah dengan setiap cluster, setiap cluster harus selalu memiliki cukup node untuk mendukung penggunaan disk dan mereplikasi operasi tulis antar-cluster.
Anda tetap dapat beralih secara manual dari satu cluster ke cluster lain jika diperlukan. Namun, jika satu cluster memiliki lebih banyak node daripada cluster lain, dan Anda perlu melakukan failover ke cluster dengan lebih sedikit node, Anda mungkin perlu menambahkan node terlebih dahulu. Tidak ada jaminan bahwa node tambahan akan tersedia saat Anda perlu melakukan pengalihan—satu-satunya cara untuk memesan node terlebih dahulu adalah dengan menambahkannya ke cluster.