JindoFS は、Alibaba Cloud Object Storage Service(OSS)に基づいて構築された、オープンソースのビッグデータエコシステム向けの Hadoop 互換ファイルシステム(HCFS)です。JindoFS は、OSS にデータを格納するための 3 つのストレージモード(クライアント専用モード(SDK)、キャッシュモード、ブロックストレージモード)を提供します。クライアント専用モードまたはキャッシュモードの JindoFS は、Hadoop および Spark エコシステムのコンピューティングエンジンから OSS へのアクセスを最適化します。ブロックストレージモードの JindoFS は、OSS をストレージバックエンドとして使用することで膨大なストレージ容量を提供し、効率的なメタデータクエリをサポートします。
クライアント専用モード(SDK)

キャッシュモード

ブロックストレージモード

キャッシュモードとブロックストレージモードの比較
どちらのモードでも、JindoFS は OSS にデータを保存し、ローカルストレージスペースの使用状況に基づいて、ローカルクラスターにデータをキャッシュするかどうかを決定できます。
2 つのモードの本質的な違いは、OSS でのファイルストレージ方法にあります。ブロックストレージモードの JindoFS は、ディレクトリとファイルメタデータを管理し、ファイルをブロックとして OSS に保存します。キャッシュモードの JindoFS は、ファイルをオブジェクトとして OSS に保存します。
3 つのモードの比較
次の表に、複数のディメンションでの 3 つのモードを示します。
| ディメンション | クライアント専用モード(SDK) | キャッシュモード | ブロックストレージモード |
| ストレージコスト |
|
|
|
| スケーラビリティ | 高 | 比較的高 | 中 |
| スループット | OSS が占有する帯域幅に依存します。 | OSS が占有する帯域幅とホットデータのキャッシュに消費される帯域幅に依存します。 | OSS が占有する帯域幅とウォームデータとホットデータのキャッシュに消費される帯域幅に依存します。 |
| メタデータ |
|
|
|
| メンテナンスワークロード | 低 | 中 キャッシュシステムの O&M が必要です。 | 比較的高 Namespace Service および Storage Service の O&M が必要です。 |
| セキュリティ |
|
|
|
| 使用方法 | oss://<oss_bucket>/<oss_dir>/ 形式で OSS ディレクトリを指定してファイルにアクセスすることのみが許可されます。OSS ディレクトリへのクロスサービスアクセスがサポートされています。 |
説明 キャッシュモードで JindoFS を使用する方法の詳細については、キャッシュモードの JindoFS のドキュメントをご参照ください。 | デプロイされた名前空間のいずれかに jfs://<your_namespace>/<path_of_file> 形式で JindoFS ディレクトリを指定してデータにアクセスすることのみが許可されます。JindoFS ディレクトリへのクロスサービスアクセスはサポートされていません。キャッシュ機能を有効にすることができます。 説明 ブロックストレージモードで JindoFS を使用する方法の詳細については、ブロックストレージモードの JindoFS のドキュメントをご参照ください。 |
FAQ
- Q: 典型的なデータレイクシナリオでは、どのモードが推奨されますか?
A: クライアント専用モード(SDK)とキャッシュモードは、OSS のオブジェクトストレージセマンティクスと完全に互換性があり、完全なコンピューティングストレージ分離と柔軟なスケーラビリティを提供します。典型的なデータレイクシナリオでのビッグデータ分析と AI トレーニングの高速化には、クライアント専用モード(SDK)またはキャッシュモードを使用することをお勧めします。
- Q: なぜブロックストレージモードの JindoFS は HDFS よりも高いパフォーマンスを提供するのですか?A:
- ブロックストレージモードの JindoFS は、10 億を超えるファイルを処理できます。ただし、HDFS は最大 4 億ファイルしか処理できません。さらに、ブロックストレージモードの JindoFS のパフォーマンスは、クラスタビジネスのピーク時により安定しています。
- ブロックストレージモードの JindoFS には、Java のオンヒープメモリとメモリ使用量に制限がなく、HDFS よりも大規模なデータを処理できます。HDFS には、Java のオンヒープメモリに制限があります。
- ブロックストレージモードの JindoFS では、軽量な O&M が必要です。破損したディスクや異常なノードについて心配する必要はありません。データは OSS に 1 つのバックアップがあり、ノードは接続または切断できます。
- ブロックストレージモードの JindoFS は、コールドデータを透過的に圧縮およびアーカイブできます。さまざまな方法を使用してコストを最適化し、OSS に接続してエクサバイトのデータをサポートします。
- ブロックストレージモードの JindoFS は、HDFS AuditLog、Ranger との統合、データ暗号化など、HDFS のいくつかの重要な機能をサポートしています。
- Q: ブロックストレージモードの JindoFS の特別な利点は何ですか?A:
- ブロックストレージモードの JindoFS は、ファイルメタデータを管理し、ファイルデータを編成できます。したがって、ストレージインターフェースに関するさまざまなビッグデータエンジンの要件を完全に満たすことができます。これらのインターフェースには、名前変更操作の原子性とトランザクション処理を実装するためのインターフェース、高パフォーマンスのローカルデータ書き込みを実装するためのインターフェース、透過的な圧縮を実装するためのインターフェース、および truncate、append、flush、sync、snapshot インターフェースなどが含まれますが、これらに限定されません。これらの高レベルのストレージインターフェースは、完全な POSIX を実現するために必要であり、Flink、HBase、Kafka、Kudu などのより多くのビッグデータエンジンを OSS に接続するために使用されます。クライアント専用モード(SDK)の JindoFS またはキャッシュモードの JindoFS も、一部のインターフェースを使用して OSS にアクセスできます。ただし、これら 2 つのモードの機能と利点は不十分です。
- ブロックストレージモードは、他の 2 つのモードよりも費用対効果が高くなります。これは、ブロックストレージモードでは、データ総量の 60% を占めるウォームデータとホットデータがローカルクラスターにキャッシュされるためです。したがって、OSS ではなくローカルクラスターから大量のデータを読み取ることができます。