Bagaimana Aerospike mencapai latensi rendah dan konsistensi yang kuat di banyak situs

Dalam ekonomi digital global saat ini, organisasi perlu memiliki aplikasi yang selalu aktif dan bekerja secara real time. Aplikasi seperti sistem pembayaran digital, pelacakan inventaris waktu nyata, dan permainan online mengandalkan sistem yang tangguh dengan akses cepat ke pusat data yang didistribusikan di seluruh dunia. Untuk aplikasi seperti ini, tidak dapat diterima untuk membahayakan konsistensi data untuk transaksi apa pun, baik data disimpan di awan pribadi, awan publik, atau kombinasi keduanya.

Namun mengoperasikan cluster di seluruh pusat data atau wilayah cloud yang didistribusikan secara geografis menimbulkan biaya tinggi, inkonsistensi data, dan ketahanan terbatas. Untuk mengatasi kendala ini, Aerospike telah mengembangkan fitur pengelompokan multi-situs di Aerospike Database 5 yang memungkinkan perusahaan untuk mengoperasikan kluster database tunggal di beberapa lokasi tanpa risiko kehilangan data atau membatasi ketersediaan data.

Pengelompokan multi-situs menyediakan arsitektur data aktif-aktif

Arsitektur data aktif-aktif mencakup beberapa wilayah dan permintaan aplikasi layanan di semua lokasi. Setiap lokasi "aktif". Rekaman data direplikasi di seluruh wilayah sehingga pembacaan dapat diproses di lokasi mana pun. Dalam beberapa arsitektur, penulisan catatan data tertentu hanya ditangani di satu lokasi master; arsitektur lain memungkinkan penulisan seperti itu terjadi di banyak lokasi. Setiap pendekatan memiliki tantangan yang melibatkan ketersediaan, konsistensi, dan kinerja.

Di masa lalu, organisasi membuat trade-off antara konsistensi data dan kinerja tinggi. Aerospike Database 5 dengan pengelompokan multi-situs menghilangkan trade-off ini. Pengelompokan multi-situs menggabungkan konsistensi yang kuat dengan dukungan untuk aplikasi transaksional yang didistribusikan secara global yang dapat melonggarkan latensi tulis, yang bervariasi berdasarkan jarak antar situs kluster, sambil tetap memberikan latensi baca sub-milidetik pada throughput tinggi.

Bagaimana cluster multi-situs Aerospike beroperasi

Pada Gambar 1 di bawah ini, cluster Aerospike tunggal diatur dalam bentuk tiga rak yang didistribusikan di tiga lokasi. Situs tersebut dapat berupa pusat data, wilayah cloud, atau bahkan wilayah cloud yang berbeda seperti Amazon Web Services, Google Cloud, atau Microsoft Azure. Aplikasi mengidentifikasi lingkungan yang terdistribusi secara geografis ini sebagai satu sistem, dan permintaan baca / tulis ditangani dengan lancar. Untuk kinerja yang optimal, membaca proses secara lokal sambil menulis rute ke lokasi yang jauh jika diperlukan.

Aerospike

Kesadaran rak adalah kemampuan penting yang memungkinkan klaster Aerospike untuk diterapkan di pusat data atau wilayah cloud yang jauh. Dalam cluster multi-situs, fitur kesadaran rak Aerospike memungkinkan replika catatan data yang dikelompokkan dalam partisi data untuk disimpan di rak yang berbeda. Melalui pengaturan faktor replikasi data, setiap rak dapat dikonfigurasi untuk menyimpan salinan lengkap semua data guna memaksimalkan ketersediaan data dan kinerja baca lokal.

Pada Gambar 1, faktor replikasi 3 menginstruksikan Aerospike untuk menyimpan salinan semua data di setiap rak. Hanya satu node dalam satu rak cluster yang menyimpan salinan master dari partisi data tertentu setiap saat; rak lain memiliki node yang menyimpan replika partisi ini. Aerospike menyinkronkan salinan master dengan replika di rak / node yang berbeda.

Aerospike memiliki daftar untuk melacak informasi ini. Pada Gambar 1, salinan master daftar ada di Node 3 Rak 2, dan replikanya ada di Node 1 Rak 1 dan Node 2 Rak 3. Kluster ini akan menjaga konsistensi yang kuat, menghindari kehilangan data, dan menjaga ketersediaan di single- kegagalan situs.

Bagaimana cluster multi-situs Aerospike pulih dari kegagalan

Bencana alam, pemadaman listrik, kegagalan perangkat keras, dan kegagalan jaringan dapat menyebabkan satu atau beberapa komponen cluster multi-region menjadi tidak dapat diakses. Ketahanan adalah persyaratan penting dari database operasional multi-region.

Pada Gambar 2 di bawah ini, kegagalan jaringan telah menyebabkan Rack 3 terputus dari Rak 1 dan 2 untuk membuat skenario otak terbagi, yaitu ketika beberapa bagian sistem tidak dapat berkomunikasi dengan yang lain. Rack 3 masih naik, dengan ketiga node membentuk sub-cluster. Dalam hal ini, Rak 1 dan 2 dengan mudah menemukan bahwa Rack 3 keluar dan membentuk cluster dengan enam node. Ini menjadi sub-cluster mayoritas dan memiliki ketersediaan lengkap karena memiliki dua salinan data di dalam sub-cluster. Salinan ketiga secara otomatis dibuat pada setiap penulisan saat sistem melanjutkan untuk melakukan transaksi.

Aerospike

Setiap transaksi yang dilakukan di Rak 3 juga dilakukan di Rak 1 dan Rak 2, dan baru kemudian transaksi akan dilanjutkan. Aplikasi lokal di Rak 1 dan Rak 2 terus berfungsi dengan baik. Aplikasi lokal di Rack 3 tidak akan tersedia. Dengan menggunakan algoritma konsistensi yang kuat dari Aerospike, Rack 3 dapat menentukan dari kombinasi roster, dan fakta bahwa ia dapat berbicara dengan Rak 1 dan 2, bahwa itu adalah sub-cluster minoritas dan tidak tersedia untuk aplikasi baca dan tulis. Dan ketika Rak 3 kembali atau terhubung kembali ke dua rak lainnya, salinan tambahan dari data yang telah dibuat di Rak 1 dan 2 untuk penulisan yang telah terjadi akan digabungkan kembali ke Rak 3 sehingga dapat mulai mengambil alih porsinya muatan. Semua ini terjadi tanpa intervensi operator,menjaga konsistensi yang kuat tanpa kehilangan data dan ketersediaan lengkap selama acara split-brain.

Memenuhi tuntutan ekonomi global yang selalu aktif

Sifat ekonomi digital global yang selalu aktif saat ini menuntut sistem database yang beroperasi tanpa gangguan atau risiko kehilangan data. Kemampuan pengelompokan multi-situs Aerospike memungkinkan organisasi untuk menyebarkan satu kluster di beberapa lokasi dengan ketersediaan 24/7 dan konsistensi yang kuat. Jenis aplikasi baru yang melibatkan transaksi yang didistribusikan secara global sekarang dapat diterapkan.

Srini Srinivasan adalah pendiri dan kepala produk di Aerospike, pemimpin dalam solusi data NoSQL real-time generasi mendatang. Dia memiliki pengalaman dua dekade merancang, mengembangkan, dan mengoperasikan infrastruktur skala tinggi. Dia juga memiliki lebih dari 30 paten dalam teknologi database, web, seluler, dan sistem terdistribusi. Dia ikut mendirikan Aerospike untuk memecahkan masalah penskalaan yang dia alami dengan internet dan sistem seluler saat dia menjadi direktur teknik senior di Yahoo.

-

Forum Teknologi Baru menyediakan tempat untuk mengeksplorasi dan mendiskusikan teknologi perusahaan yang sedang berkembang secara mendalam dan luas. Pemilihannya subjektif, berdasarkan pilihan teknologi yang kami yakini penting dan paling menarik bagi pembaca. tidak menerima jaminan pemasaran untuk publikasi dan berhak untuk mengedit semua konten yang dikontribusikan. Kirim semua pertanyaan ke [email protected]