Perjalanan Luft Menuju Elastisitas - Bagian 1: Dari Shared Nothing ke Shared Storage
(engineering.ab180.co)> Berbagi pengalaman beralih dari arsitektur Shared Nothing ke arsitektur Shared Storage untuk meningkatkan elastisitas database buatan sendiri, Luft.
- Sebelumnya, setiap node memproses data menggunakan storage yang independen, tetapi saat menangani data berukuran besar elastisitasnya kurang sehingga sulit merespons workload yang bersifat spike.
- Dengan menerapkan konsep Compute-Storage Separation yang memisahkan resource komputasi dan storage, diputuskan untuk beralih ke arsitektur Shared Storage yang menggunakan storage bersama.
- Untuk mengakses S3, sempat diuji pendekatan yang memanfaatkan FUSE, tetapi karena karakteristik runtime Go menimbulkan masalah performa saat menggunakan FUSE, maka Buffer Pool Manager diimplementasikan sendiri pada level aplikasi.
- Melalui perbaikan ini, query kini dapat dijalankan langsung ke S3, dan performa query dalam kasus data yang belum didistribusikan sebelumnya meningkat hingga lebih dari 70%, sehingga elastisitas Luft meningkat secara signifikan.
1 komentar
Ini benar-benar hal yang sangat menarik, jadi saya juga ingin mencobanya.