11 poin oleh kimmachinegun 2025-03-10 | 1 komentar | Bagikan ke WhatsApp

> 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

 
outcast1542 2025-03-10

Ini benar-benar hal yang sangat menarik, jadi saya juga ingin mencobanya.