Alluxio (旧称 Tachyon) は、仮想分散ストレージ システムです。コンピューティング フレームワークとストレージ システムの間のギャップを埋め、コンピューティング アプリケーションが共通のインターフェイスを介して多数のストレージ システムに接続できるようにします。 Alluxio プロジェクトは、Berkeley Data Analytics Stack (BDAS) のデータ層である Tachyon と呼ばれる、カリフォルニア大学バークレー校の AMPLab の研究プロジェクトから生まれました。
1. 柔軟なファイル API: Alluxio のローカル API は java.io.File クラスに似ており、InputStream インターフェイスと OutputStream インターフェイス、およびメモリ マップされた I/O の効率的なサポートを提供します。 Alluxio のすべての機能と最高のパフォーマンスを得るには、この API を使用することをお勧めします。
2. Hadoop HDFS と互換性のあるファイル システム インターフェイス: この一連のインターフェイスに基づいて、Hadoop MapReduce および Spark は HDFS の代わりに Alluxio を使用できます。
3. プラグ可能な基盤ストレージ: Alluxio は、基盤ストレージ システムへのメモリ データの永続化をサポートします。 Alluxio は、基盤となるさまざまなストレージ システムとの接続を簡素化するための共通インターフェイスを提供します。現在、Alluxio は Microsoft Azure Blob Store、Amazon S3、Google Cloud Storage、OpenStack Swift、GlusterFS、HDFS、MaprFS、Ceph、NFS、Alibaba OSS、Minio およびその他の単一ノード ローカル ファイル システムをサポートする予定です。未来。
4. Alluxio 階層ストレージ: Alluxio はメモリと SSD や HDD などのローカル ストレージを管理して、データ アクセスを高速化できます。より詳細な制御が必要な場合は、階層化ストレージ機能を使用して、異なる階層間でデータを自動的に管理し、ホット データがより高速なストレージ階層に確実に配置されるようにすることができます。カスタム ポリシーは Alluxio に簡単に適用でき、ピンの概念により、ユーザーはデータの保存場所を明示的に制御できます。
5. 統一された名前空間: Alluxio はマウント機能により、異なるストレージ システム間で効率的なデータ管理を実現できます。さらに、透過的な名前付けメカニズムにより、ストレージ オブジェクトを基礎となるストレージ システムに永続化するときに、ストレージ オブジェクトのファイル名とディレクトリ階層を保存できます。
6. Web UI: ユーザーは Web UI を通じてファイル システムを参照できます。デバッグ モードでは、管理者は、保存場所、チェックポイント パスなど、各ファイルに関する詳細情報を表示することもできます。
7. コマンドライン: ユーザーは、./bin/alluxio fs を介して Alluxio と対話して、ファイル システムの内外にデータをコピーすることもできます。