Dokumen ini mendefinisikan konsep inti dan topologi deployment untuk Spanner Omni. Bagian ini mencakup hubungan hierarkis antara region, zona, dan server, serta menjelaskan bagaimana komponen ini terkait dengan replikasi dan penyimpanan data dalam deployment.
Konsep Spanner Omni
Bagian berikut memberikan definisi mendetail tentang terminologi yang digunakan di seluruh dokumentasi Spanner Omni. Mempelajari konsep-konsep ini memastikan pemahaman yang jelas tentang arsitektur dan perilaku operasional sistem.
Deployment
Deployment Spanner Omni, yang memungkinkan Anda menggunakan database di pusat data atau akun cloud publik Anda. Anda membuat deployment sesuai dengan parameter yang ditentukan dalam konfigurasi deployment. Deployment Spanner Omni setara dengan instance Spanner| di Google Cloud.
Konfigurasi deployment
Menyediakan penempatan dan spesifikasi region, zona, dan server untuk deployment Spanner Omni Anda. Anda dapat memilih konfigurasi deployment server tunggal, region tunggal, atau multi-region.
Lokasi
Setara dengan region dalam istilah Google Cloud . Latensi jaringan antara dua region tidak sepele. Untuk deployment lokal, Anda dapat menentukan region Anda sendiri. Untuk deployment cloud, region harus selaras dengan region di masing-masing penyedia cloud. Satu region dapat memiliki beberapa zona.
Proses
Server Spanner melakukan fork dan mengelola beberapa proses. Misalnya, TimeServer, spanserver adalah semua proses di Spanner. Setiap proses dapat memiliki statistik pemantauan seperti penggunaan CPU dan memori. Proses dapat membuka port untuk berkomunikasi dengan server lain dalam deployment.
Replika
Spanner mereplikasi data untuk memberikan ketersediaan data dan lokalitas geografis. Secara umum, Spanner mengatur semua data ke dalam baris. Spanner membuat beberapa salinan, atau replika baris ini, lalu menyimpan replika tersebut di berbagai area geografis. Spanner menggunakan skema replikasi sinkron berbasis Paxos, yang di dalamnya replika voting memberikan suara pada setiap permintaan penulisan sebelum melakukan penulisan ke database. Seperti di Spanner, ada tiga jenis replika di Spanner Omni: baca-tulis, hanya baca, dan saksi. Untuk mengetahui informasi selengkapnya, lihat jenis replika di dokumentasi Spanner.
Server
Server adalah resource komputasi, seperti VM atau container, tempat server Spanner Omni berjalan. Setiap server memiliki resource sistemnya sendiri: CPU, memori, dan penyimpanan. Server menyediakan kemampuan Spanner Omni dengan menyimpan dan menyajikan data pengguna.
Server root
Server root menyimpan metadata penting untuk mendukung zona. Misalnya, server root menyimpan keanggotaan server dan informasi konfigurasi zona lainnya. Server root menggunakan algoritma kuorum untuk konsistensi, jadi harus ada jumlah Server Root ganjil dalam zona: satu untuk zona yang sangat kecil, dan tiga hingga lima untuk zona yang lebih besar. Pertimbangkan jumlah server root dengan cermat saat merencanakan deployment. Meskipun Anda dapat mengubah jumlah server root dalam deployment setelah Anda membuatnya, sebaiknya jangan lakukan hal ini.
Server non-root
Server non-root menyimpan dan menyajikan data pengguna serta menyediakan cara untuk menskalakan kapasitas komputasi dan penyimpanan zona. Anda dapat menambahkan server non-root sebanyak yang diperlukan workload ke deployment Anda. Anda dapat mengubah jumlah server non-root setelah membuat deployment.
Bagi
Pemisahan Spanner menyimpan rentang baris data yang berdekatan, dengan Spanner mengurutkan baris berdasarkan kunci utama. Spanner membuat replika setiap pemisahan yang disimpan di setiap zona.
Penyimpanan
Penyimpanan permanen yang terpasang ke server.
Zona
Grup yang terdiri dari satu atau beberapa server. Untuk replikasi data, Anda harus membuat satu zona per replika. Untuk deployment lokal, sebaiknya minimalkan berbagi infrastruktur (VM, disk) antar-zona. Untuk deployment cloud, sesuaikan zona dengan zona ketersediaan di AWS, atau zona di Google Cloud.