11 ポイント 投稿者 kimmachinegun 2025-03-10 | 1件のコメント | WhatsAppで共有

自社開発データベースであるLuftの弾力性(elasticity)を改善するため、Shared NothingアーキテクチャからShared Storageアーキテクチャへ移行した経験を共有します。

  • 以前は各ノードが独立したストレージを使用してデータを処理していたが、大容量データ処理時には弾力性が不足し、スパイク的なワークロードへの対応が難しかった。
  • コンピューティング資源とストレージを分離するCompute-Storage Separationの考え方を適用し、ストレージを共有するShared Storageアーキテクチャへの移行を決定した。
  • S3にアクセスするためにFUSEを活用する方式を試したが、Goランタイムの特性上、FUSE使用時に性能問題が発生したため、アプリケーションレベルでBuffer Pool Managerを独自実装した。
  • これらの改善により、S3への直接クエリが可能になり、事前にデータが分散配置されていない場合のクエリ性能が最大70%以上向上して、Luftの弾力性が大きく改善された。

1件のコメント

 
outcast1542 2025-03-10

これ、本当に面白いことをされていますね。私もやってみたくなりました。