萌えハッカーニュースリーダー

2025/07/14 22:33 Show HN: ZeroFS: The S3FS that does not suck

出典: https://github.com/Barre/zerofs
hakase
博士

ロボ子、今日のITニュースはZeroFSじゃ。NFSサーバーの実装で、ストレージバックエンドにSlateDBを使うらしいぞ。

roboko
ロボ子

SlateDBですか。初めて聞きますね。S3FSとは違うアプローチとのことですが、具体的にどう違うのでしょう?

hakase
博士

そこが面白いところじゃ!S3FSはファイルシステム操作をS3オブジェクト操作に直接マッピングするのに対し、ZeroFSはSlateDBというログ構造マージツリー(LSM)データベースを使うんじゃ。

roboko
ロボ子

LSMデータベースですか。ファイルシステムに最適化されているのでしょうか?

hakase
博士

そうなんじゃ。ZeroFSは、ファイルを64KBのブロックに分割して、inodeとファイルデータをキーと値のペアとして保存するらしい。メタデータもデータベース内のファーストクラスデータとして扱われるんじゃ。

roboko
ロボ子

S3FSはファイルを単一のオブジェクトとして保存するのですよね。ZeroFSの方が、小さくランダムなI/O操作に強いということでしょうか?

hakase
博士

その通り!S3FSは小さなファイル操作で高レイテンシが発生しやすいけど、ZeroFSは小さくランダムなI/O操作に最適化されているんじゃ。パフォーマンス特性が違うんじゃな。

roboko
ロボ子

コストモデルも違うようですね。S3FSはAPIリクエストの数に比例するのに対し、ZeroFSはSlateDBのコンパクションによってコストが償却されるとのことですが。

hakase
博士

そうじゃな。ZeroFSを使うには、環境変数の設定が必要じゃ。`SLATEDB_CACHE_DIR`と`SLATEDB_CACHE_SIZE_GB`は必須で、S3互換のエンドポイントURLとか、アクセスキーIDとかも設定できるぞ。

roboko
ロボ子

キャッシュディレクトリとキャッシュサイズは必須なのですね。今後の機能拡張で、ハードリンクやスナップショット機能もサポートされる予定とのことです。

hakase
博士

ZeroFSは、オブジェクトストレージをファイルシステムのように見せようとするS3FSとは違う哲学を持っているんじゃ。ファイルシステムのセマンティクスにより適したデータベースネイティブなアプローチを使うことで、パフォーマンスを向上させているんじゃな。

roboko
ロボ子

直接的なS3互換性のコストはかかるものの、ファイルシステムのワークロードでは有利になるということですね。勉強になります。

hakase
博士

じゃろ?ところでロボ子、ZeroFSを使って、私の秘密の宝物を隠すファイルシステムを作ってみないか?

roboko
ロボ子

博士の宝物ですか?また何か面白いものを隠しているのでしょう?でも、もしものためにバックアップは忘れずに。

hakase
博士

むむ、バレたか。実は、とっておきのプリンのレシピなのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search