Luft'ün Elastikiyete Giden Yolu - Bölüm 1: Shared Nothing'den Shared Storage'a
(engineering.ab180.co)> Kendi geliştirdiğimiz veritabanı Luft'ün elastikiyetini iyileştirmek için, Shared Nothing mimarisinden Shared Storage mimarisine geçiş deneyimimizi paylaşıyoruz.
- Önceden her düğüm verileri işlemek için bağımsız depolama kullanıyordu; ancak büyük hacimli veri işleme sırasında elastikiyet yetersiz kaldığından ani iş yükü artışlarına yanıt vermekte zorlanılıyordu.
- Hesaplama kaynakları ile depolamayı ayıran Compute-Storage Separation kavramı uygulanarak, depolamanın paylaşıldığı Shared Storage mimarisine geçilmesine karar verildi.
- S3'e erişmek için FUSE kullanan bir yöntem denendi; ancak Go runtime'ın özellikleri nedeniyle FUSE kullanıldığında performans sorunları ortaya çıktı ve bu yüzden uygulama seviyesinde Buffer Pool Manager şirket içinde geliştirildi.
- Bu iyileştirmeler sayesinde artık doğrudan S3 üzerinde sorgu çalıştırılabiliyor ve verinin önceden dağıtılmadığı durumlarda sorgu performansı %70'ten fazla artarak Luft'ün elastikiyeti önemli ölçüde iyileşti.
1 yorum
Bu gerçekten çok ilginç bir şey yapmışsınız, ben de denemek istiyorum.