ブロックストレージモードの JindoFS は、データをブロックとして OSS ストレージバックエンドに保存し、ローカルキャッシュを使用して高速化することで、ハイパフォーマンスなデータアクセスを実現します。ローカルの Jindo Namespace Service がメタデータを管理し、高速で効率的な操作を提供します。このトピックでは、JindoFS ブロックストレージモードとその使用方法について説明します。
背景情報
JindoFS ブロックストレージモードには、次の特徴があります。
- OSS をストレージバックエンドとして使用するため、ストレージはローカルクラスターに制限されず、大容量で柔軟なストレージスペースを提供します。また、ローカルクラスターは自由にスケールアウト/インできます。
- ローカルクラスターのストレージリソースを活用してデータ読み取りを高速化できます。これは、一定のローカルストレージ能力を持つクラスターに適しており、限られたローカルストレージを利用してスループットを向上させます。特に、Write-Once-Read-Many (WORM) のシナリオで効果的です。
- メタデータ操作は HDFS に匹敵するほど効率的です。これにより、OSS ファイルシステムのメタデータ操作にかかる時間や、高頻度のアクセスによって引き起こされる可能性のある不安定性の問題を効果的に回避できます。
- ジョブ実行時のデータローカリティを最大限に確保し、ネットワーク転送の負荷を軽減することで、読み取りパフォーマンスをさらに向上させます。
設定
- SmartData サービスに移動します。
- EMR コンソールにログインします。
- 上部のナビゲーションバーで、必要に応じてリージョンとリソースグループを選択します。
- Clusters タブをクリックします。
- Clusters ページで、対象のクラスターを見つけ、[操作] 列の Details をクリックします。
- 左側のナビゲーションウィンドウで、 を選択します。
- EMR コンソールにログインします。
- bigboot サービスの設定ページに移動します。
- Configure タブをクリックします。
- [bigboot] をクリックします。
- 次のパラメーターを設定します。
JindoFS は複数の名前空間をサポートしています。このトピックでは、
testを名前空間の例として使用します。- [jfs.namespaces] を [test] に設定します。
[test] は名前空間名の例です。複数の名前空間を設定するには、名前をコンマ (,) で区切ります。
- Custom Configuration をクリックします。Add Configuration Item ダイアログボックスで、次のパラメーターを追加し、OK をクリックします。
パラメーター 説明 例 jfs.namespaces.test.oss.uri test名前空間の OSS ストレージバックエンド。oss://<oss_bucket>/<oss_dir>/ 説明 OSS バケット内のディレクトリを指定することを推奨します。JindoFS は、名前空間のデータブロックをこのディレクトリに保存します。jfs.namespaces.test.mode test名前空間のストレージモード。block jfs.namespaces.test.oss.access.key OSS ストレージバックエンドの AccessKey ID。 xxxx 説明 最高のパフォーマンスと安定性を得るために、E-MapReduce クラスターと同じアカウントおよびリージョンにある OSS バケットを使用することを推奨します。この場合、E-MapReduce クラスターは認証情報なしで OSS にアクセスできるため、AccessKey ID と AccessKey シークレットを設定する必要はありません。jfs.namespaces.test.oss.access.secret OSS ストレージバックエンドの AccessKey シークレット。 - OK をクリックします。
- [jfs.namespaces] を [test] に設定します。
- 右上隅にある Save をクリックします。
- 右上隅で、 を選択します。
サービスが再起動すると、パス
jfs://test/<path_of_file>を使用して JindoFS 内のファイルにアクセスできます。
ディスク領域のウォーターマーク制御
JindoFS は OSS をストレージバックエンドとして使用しており、広大なストレージ容量を提供します。ただし、クラスターのローカルディスク領域は有限です。この領域を管理するために、JindoFS はローカルキャッシュからコールドデータを自動的に削除します。この削除動作は、storage.watermark.high.ratio および storage.watermark.low.ratio パラメーターで制御できます。これらのパラメーターには、ディスク使用率を表す 0 から 1 までの 10 進数を指定します。
- ディスクのウォーターマークを設定します。Service Configuration セクションで、[storage] タブをクリックし、次のパラメーターを変更します。
パラメーター 説明 storage.watermark.high.ratio ディスク使用率の高いウォーターマーク。データディスク上の JindoFS データディレクトリが使用するディスク領域がこの比率に達すると、JindoFS はクリーンアッププロセスをトリガーします。デフォルト値:0.4。 storage.watermark.low.ratio ディスク使用率の低いウォーターマーク。クリーンアッププロセスがトリガーされた後、JindoFS は JindoFS データディレクトリが使用するディスク領域がこの比率に低下するまでコールドデータを削除します。デフォルト値:0.2。 説明 高いウォーターマークを設定して、JindoFS に割り当てられるディスク領域の量を制御できます。低いウォーターマークは、高いウォーターマークよりも小さくする必要があります。ワークロードに合わせて適切な値を設定してください。 - 設定を保存します。
- 右上隅にある Save をクリックします。
- 変更する ダイアログボックスで、変更理由を入力し、[設定の自動更新] をオンにします。
- OK をクリックします。
- Jindo Storage Service を再起動して変更を適用します。
- 右上隅で、 を選択します。
- [クラスターアクティビティ] ダイアログボックスで、必要なパラメーターを設定し、OK をクリックします。
- Confirm ダイアログボックスで、OK をクリックします。