POSIXファイルシステムなどのバックエンドをS3 API経由で公開する、S3互換のオブジェクトストレージサーバー。
juicedata/juicefs
S3などのオブジェクトストレージにデータを、Redis、MySQL、SQLite、TiKVにメタデータを保存する分散POSIXファイルシステム。
代替できる製品:Amazon EFS
Google Filestore
- スター
- 14,567
- フォーク
- 1,328
- 未解決の Issue
- 249
- 最終コミット
- 一昨日
これは何?
JuiceFSは、クラウドネイティブ環境向けに設計されたPOSIX互換ファイルシステムです。ファイルの内容はAmazon S3などのオブジェクトストレージに保存し、ファイル名、サイズ、権限、タイムスタンプ、ディレクトリ構造は別のメタデータエンジンで管理します。対応するメタデータエンジンにはRedis、MySQL、SQLite、TiKVがあり、パフォーマンスやデプロイ要件に応じて選択できます。
コードを変更せずに、アプリケーションからクラウドオブジェクトストレージをローカルディスクのように使えるようにすることを目指しています。Linuxなどのプラットフォームにマウントできるほか、Hadoop Java SDK、S3互換ゲートウェイ、Kubernetes CSIドライバーも提供します。オブジェクトストレージに書き込む前にファイルをチャンク、スライス、ブロックに分割するため、バケット内のデータは元のファイルとは異なる形式になります。
JuiceFSは、転送中および保存時のデータ暗号化、LZ4またはZstandardによる圧縮、flockとfcntlの両方のファイルロックに対応しています。READMEによると、pjdfstest POSIX互換性テストスイートに合格しており、close-to-open整合性とアトミックなメタデータ操作にも対応しています。
主な機能
- 01S3などのオブジェクトストレージをPOSIXファイルシステムとしてマウントできます。
- 02メタデータエンジンとしてRedis、MySQL、SQLite、TiKVに対応しています。
- 03Hadoop 2.xおよび3.xと互換性のあるHadoop Java SDKを提供します。
- 04S3互換ゲートウェイとKubernetes CSIドライバーを備えています。
- 05転送中および保存時の暗号化に加え、LZ4またはZstandardによる圧縮を利用できます。
ユースケース
- ビッグデータや機械学習のジョブで、多数のサーバー間で大規模なデータセットを共有する。
- クラウドオブジェクトストレージ上でHadoopやSparkのワークロードを実行する。
- Kubernetesのコンテナに永続ボリュームを提供する。
- 通常のファイルシステムを想定しているレガシーアプリケーションから、オブジェクトストレージを利用できるようにする。
クイックスタート
- 1
対応するメタデータエンジン(Redis、MySQL、SQLite、TiKV など)をセットアップします
- 2
データブロック用の対応するオブジェクトストレージ(Amazon S3 など)を準備します
- 3
JuiceFS クライアントをダウンロードしてインストールし、クイックスタートガイドに従います
使う前に知っておきたいこと
- JuiceFS を使用するには、別途メタデータエンジンとオブジェクトストレージサービスを実行・管理する必要があります。
- メタデータエンジンとして Redis Cluster を使用する場合、FAQ に記載されているトランザクションキーの制限があります。
収録されている特集
トピック
よくある質問
- juicefs とは?
- S3などのオブジェクトストレージにデータを、Redis、MySQL、SQLite、TiKVにメタデータを保存する分散POSIXファイルシステム。 JuiceFSは、クラウドネイティブ環境向けに設計されたPOSIX互換ファイルシステムです。ファイルの内容はAmazon S3などのオブジェクトストレージに保存し、ファイル名、サイズ、権限、タイムスタンプ、ディレクトリ構造は別のメタデータエンジンで管理します。対応するメタデータエンジンにはRedis、MySQL、SQLite、TiKVがあり、パフォーマンスやデプロイ要件に応じて選択できます。
- juicefs は無料で使えますか?ライセンスは?
- juicefs は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- juicefs は今もメンテナンスされていますか?
- 活発にメンテナンス中。juicefs の最終コミットは 2026年10月23日 です。
- juicefs は何に使えますか?
- ビッグデータや機械学習のジョブで、多数のサーバー間で大規模なデータセットを共有する。 クラウドオブジェクトストレージ上でHadoopやSparkのワークロードを実行する。 Kubernetesのコンテナに永続ボリュームを提供する。 通常のファイルシステムを想定しているレガシーアプリケーションから、オブジェクトストレージを利用できるようにする。
- juicefs のインストール方法は?
- 対応するメタデータエンジン(Redis、MySQL、SQLite、TiKV など)をセットアップします データブロック用の対応するオブジェクトストレージ(Amazon S3 など)を準備します JuiceFS クライアントをダウンロードしてインストールし、クイックスタートガイドに従います
- juicefs はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/juicedata/juicefs
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
RustFSは、Apache 2.0ライセンスで提供される、Webコンソールを備えたRust製のS3互換分散オブジェクトストレージです。
ローカルディスクの代わりにS3互換のオブジェクトストレージへデータを保存する、ステートレスなKafka互換ストリーミングシステムです。
複数の物理拠点にまたがる小〜中規模のセルフホスト型クラスター向け、S3互換の分散オブジェクトストレージ。
膨大な数の小さなファイル向けに、単一バイナリでS3オブジェクトストレージ、POSIXファイルシステム、Iceberg/Lanceテーブルを提供する分散ストレージシステム。
複雑なデータパイプラインの構築、スケジューリング、監視に使える、分散型のローコードデータオーケストレーションプラットフォーム。