すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:OSS-HDFS の自動ストレージ階層化を使用してストレージコストを削減する

最終更新日:Jul 04, 2025

OSS-HDFS が有効になっているバケット内の一部のデータは、頻繁にアクセスされることはありませんが、コンプライアンスまたはアーカイブの要件を満たすために保持する必要があります。これらの要件を満たし、ストレージ コストを削減するために、OSS-HDFS は自動ストレージ階層化機能を提供します。この機能は、頻繁にアクセスされるデータを標準ストレージタイプに自動的に移動し、アクセス頻度の低いデータを低頻度アクセス(IA)、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ ストレージタイプに自動的に移動します。

前提条件

  • データは OSS-HDFS に書き込まれます。

  • チケットが送信されます。オブジェクトのストレージタイプを IA、アーカイブ、コールドアーカイブに変換するには、自動ストレージ階層化機能を使用します。オブジェクトのストレージタイプをディープコールドアーカイブに変換する場合は、別のチケットを送信する必要があります。以前にこの機能を有効にしたことがない場合は、1 つのチケットを送信して、オブジェクトのストレージタイプを IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブに変換できるようにします。

  • オブジェクトのストレージタイプを IA、アーカイブ、またはコールドアーカイブに変換するために自動ストレージ階層化機能を使用するバケットは、次のいずれかのリージョンにあります。中国(杭州)、中国(上海)、中国(北京)、中国(深圳)、中国(張家口)、中国(ウランチャブ)、中国(香港)、シンガポール、ドイツ(フランクフルト)、米国(シリコンバレー)、米国(バージニア)、インドネシア(ジャカルタ)

  • オブジェクトのストレージタイプをディープコールドアーカイブに変換するために自動ストレージ階層化機能を使用するバケットは、次のいずれかのリージョンにあります。中国(杭州)、中国(上海)、中国(北京)、中国(深圳)、中国(張家口)、中国(ウランチャブ)、シンガポール

  • JindoSDK 6.8.0 以降がインストールおよび構成されています。詳細については、「EMR 以外のクラスタを OSS-HDFS に接続する」をご参照ください。

使用上の注意

  • JindoSDK のバージョンが 6.8.0 より前の場合、IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ ディレクトリにオブジェクトを作成することはできません。IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ ディレクトリにオブジェクトを作成する必要がある場合は、オブジェクトを作成して標準ディレクトリに保存できます。次に、名前変更 操作を使用して、オブジェクトを IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ ディレクトリに移動します。

    IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ ディレクトリに直接オブジェクトを作成する場合は、JindoSDK を 6.8.0 以降にアップグレードする必要があります。

  • オブジェクトのストレージタイプをアーカイブ、コールドアーカイブ、またはディープコールドアーカイブに変換すると、追加のシステム オーバーヘッドが発生し、データの復旧が遅くなります。注意して進めてください。

  • 次のルールに基づいて、自動ストレージ階層化機能を使用してオブジェクトのストレージタイプを変換できます。

    • ホットからコールド

      image
    • コールドからホット

      image

課金ルール

  • データ取得料金

    OSS-HDFS で IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ オブジェクトを読み取ると、データ取得料金が発生します。頻繁にアクセスされるデータを IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ オブジェクトとして保存しないことをお勧めします。詳細については、「データ処理料金」をご参照ください。

  • タグ料金

    OSS-HDFS のデータにストレージ ポリシーを構成する場合は、データ ブロックにタグを追加する必要があります。オブジェクト タグ付けルールに基づいてタグの料金が発生します。詳細については、「オブジェクトタグ付け料金」をご参照ください。

  • 最小保存期間未満保存されているオブジェクトのストレージ使用量

    最小保存期間は、IA オブジェクトの場合は 30 日、アーカイブ オブジェクトの場合は 60 日、コールドアーカイブおよびディープコールドアーカイブ オブジェクトの場合は 180 日です。不要なコストを避けるために、jindofs を使用してオブジェクトのストレージタイプを変換する場合は、オブジェクトが最小保存期間の要件を満たしていることを確認してください。次の表に例を示します。

    ストレージタイプの変換

    最小保存期間の計算方法

    実際のストレージ使用量

    最小保存期間未満保存されているオブジェクトのストレージ使用量を防ぐ方法

    ホットからコールド

    標準(10 日間保存)から IA

    オブジェクトのストレージタイプが変更された場合、OSS-HDFS は保存期間を再計算しません。ストレージタイプの変換前にオブジェクトが標準ストレージタイプに保存されていた日数は、IA オブジェクトの最小保存期間に含まれます。

    標準オブジェクトの 10 日間のストレージ使用量

    IA オブジェクトをさらに 20 日間保存し続ける

    IA(10 日間保存)からアーカイブ

    IA オブジェクトの 10 日間のストレージ使用量

    アーカイブ オブジェクトをさらに 50 日間保存し続ける

    標準(10 日間保存)からコールドアーカイブ

    オブジェクトのストレージタイプが変更された場合、OSS-HDFS は保存期間を再計算します。ストレージタイプの変換前にオブジェクトが標準ストレージタイプに保存されていた日数は、コールドアーカイブ オブジェクトの最小保存期間には含まれません。

    標準オブジェクトの 10 日間のストレージ使用量

    コールドアーカイブ オブジェクトをさらに 180 日間保存し続ける

    標準(10 日間保存)からディープコールドアーカイブ

    標準オブジェクトの 10 日間のストレージ使用量

    ディープコールドアーカイブ オブジェクトをさらに 180 日間保存し続ける

    コールドからホット

    コールドアーカイブ(10 日間保存)から IA

    コールドアーカイブ オブジェクトの 10 日間のストレージ使用量

    • コールドアーカイブ オブジェクトをさらに 170 日間保存し続ける

    • ストレージタイプの変換後、IA オブジェクトをさらに 30 日間保存し続ける

手順

  1. Elastic Compute Service(ECS)インスタンスに接続します。詳細については、「インスタンスに接続する」をご参照ください。

  2. JindoFS SDK JAR パッケージをダウンロードします。

  3. AccessKey ペアと環境変数を構成します。

    1. インストールされた JindoFS SDK JAR パッケージの bin ディレクトリに移動します。

      次のサンプル コードは、jindofs-sdk-x.x.x-linux JAR パッケージの bin ディレクトリに移動する方法の例を示しています。異なるバージョンの JindoFS SDK を使用する場合は、パッケージ名を対応する JindoFS SDK JAR パッケージの名前に置き換えます。

      cd jindofs-sdk-x.x.x-linux/bin/
    2. bin ディレクトリに jindosdk.cfg という名前の構成ファイルを作成し、次のパラメータを構成ファイルに追加します。

      [client]
      <! -- OSS-HDFS へのアクセスに使用する AccessKey ID と AccessKey シークレットを指定します。 -->
      fs.oss.accessKeyId = yourAccessKeyId    
      fs.oss.accessKeySecret = yourAccessKeySecret
      <!-- この例では、中国(杭州)リージョンのエンドポイントが使用されています。実際のエンドポイントを指定してください。 -->
      fs.oss.endpoint = cn-hangzhou.oss-dls.aliyuncs.com                                     
    3. 環境変数を構成します。

      説明

      <JINDOSDK_CONF_DIR> を jindofs.cfg 構成ファイルの絶対パスに設定します。

      export JINDOSDK_CONF_DIR=<JINDOSDK_CONF_DIR>
  4. OSS-HDFS に書き込まれるデータのストレージ ポリシーを指定します。次の表に、ストレージ ポリシーを示します。

    シナリオ

    コマンド

    結果

    IA

    ./jindofs fs -setStoragePolicy -path oss://examplebucket/dir1 -policy CLOUD_IA

    dir1/ ディレクトリ内のオブジェクトには、キーが transition-storage-class で、値が IA であるタグが付いています。

    アーカイブ

    ./jindofs fs -setStoragePolicy -path oss://examplebucket/dir2 -policy CLOUD_AR

    dir2/ ディレクトリ内のオブジェクトには、キーが transition-storage-class で、値が Archive であるタグが付いています。

    コールドアーカイブ

    ./jindofs fs -setStoragePolicy -path oss://examplebucket/dir3 -policy CLOUD_COLD_AR

    dir3/ ディレクトリ内のオブジェクトには、キーが transition-storage-class で、値が ColdArchive であるタグが付いています。

    ディープコールドアーカイブ

    ./jindofs fs -setStoragePolicy -path oss://examplebucket/dir4 -policy CLOUD_DEEP_COLD_AR

    dir4/ ディレクトリ内のオブジェクトには、キーが transition-storage-class で、値が DeepColdArchive であるタグが付いています。

  5. 自動ストレージ階層化機能を有効にします。

    1. OSS コンソール にログインします。

    2. 左側のナビゲーション ウィンドウで、[バケットリスト] をクリックします。バケットリストページで、自動ストレージ階層化機能を有効にするバケットの名前をクリックします。

    3. 左側のナビゲーションツリーで、[Data Lake] > [OSS-HDFS] を選択します。

    4. [OSS-HDFS] タブで、[構成] をクリックします。

    5. [基本設定] セクションの [自動ストレージ階層化] パネルで、[ステータス] をオンにします。

      1

      構成の誤りによって自動ストレージ階層化機能が想定どおりに実行されないのを防ぐために、OSS は特定のタグが付いた OSS-HDFS 内のデータのストレージタイプを変換するライフサイクルルールを自動的に作成します。

      • ライフサイクルルールでは、.dlsdata/ ディレクトリ内で、キーが transition-storage-class で、値が IA であるタグが付いたオブジェクトのストレージタイプが、最終変更の 1 日後に IA に変換されるように指定されています。

      • ライフサイクルルールでは、.dlsdata/ ディレクトリ内で、キーが transition-storage-class で、値が Archive であるタグが付いたデータのストレージタイプが、最終変更の 1 日後にアーカイブに変更されるように指定されています。

      • ライフサイクルルールでは、.dlsdata/ ディレクトリ内で、キーが transition-storage-class で、値が ColdArchive であるタグが付いたオブジェクトのストレージタイプが、最終変更の 1 日後にコールドアーカイブに変換されるように指定されています。

      • ライフサイクルルールでは、.dlsdata/ ディレクトリ内で、キーが transition-storage-class で、値が DeepColdArchive であるタグが付いたデータのストレージタイプが、最終変更の 1 日後にディープコールドアーカイブに変更されるように指定されています。

      重要

      自動ストレージ階層化機能が有効になると、OSS はオブジェクトのストレージタイプを IA、アーカイブ、コールドアーカイブ、またはディープコールドアーカイブに変換するライフサイクルルールを自動的に作成します。ライフサイクルルールを変更しないでください。変更すると、データまたは OSS-HDFS の例外が発生する可能性があります。

    6. [OK] をクリックします。

      • OSS-HDFS は、構成されたストレージ ポリシーに基づいてオブジェクトのストレージタイプを変換します。

      • OSS は、ライフサイクルルールが作成されてから 24 時間以内にライフサイクルルールを読み込みます。ライフサイクルルールが読み込まれると、OSS は毎日 08:00(UTC + 08:00)にライフサイクルルールの実行を開始します。具体的な時間は、オブジェクトの数によって異なります。オブジェクトは、少なくとも 48 時間以内に指定されたストレージタイプに変換されます。

関連コマンド

構文

説明

./jindofs fs -setStoragePolicy -path <path> -policy <policy>

パス内のオブジェクトのストレージ ポリシーを指定します。

  • -path: オブジェクトまたはディレクトリのパスを指定します。

  • -policy: ストレージ ポリシーを指定します。有効な値:

    • CLOUD_STD: 標準ストレージタイプ。

    • CLOUD_IA: IA ストレージタイプ。

    • CLOUD_AR: アーカイブ ストレージタイプ。

    • CLOUD_COLD_AR: コールドアーカイブ ストレージタイプ。

    • CLOUD_DEEP_COLD_AR: ディープコールドアーカイブ ストレージタイプ。

    • CLOUD_AR_RESTORED: 一時的に復元されたアーカイブ オブジェクトのストレージタイプ。復元されたオブジェクトの保持期間には要件があります。

    • CLOUD_COLD_AR_RESTORED: 一時的に復元されたコールドアーカイブ オブジェクトのストレージタイプ。復元されたオブジェクトの保持期間には要件があります。

    • CLOUD_DEEP_COLD_AR_RESTORED: 一時的に復元されたディープコールドアーカイブ オブジェクトのストレージタイプ。復元されたオブジェクトの保持期間には要件があります。

重要
  • 一度に標準または IA に変換するアーカイブ、コールドアーカイブ、またはディープコールドアーカイブ オブジェクトのサイズは 5 TB を超えることはできず、処理中のアーカイブ、コールドアーカイブ、またはディープコールドアーカイブ オブジェクトのサイズは 50 TB を超えることはできません。

  • オブジェクトまたはサブディレクトリのストレージタイプを指定しない場合、オブジェクトまたはサブディレクトリは、それらが属するディレクトリのストレージタイプを継承します。たとえば、oss://examplebucket/dir ディレクトリのストレージタイプが CLOUD_STD で、oss://examplebucket/dir/subdir サブディレクトリのストレージタイプを指定しない場合、oss://examplebucket/dir/subdir サブディレクトリのストレージタイプも CLOUD_STD になります。

./jindofs fs -getStoragePolicy -path <path>

特定のパスにあるデータのストレージ ポリシーをクエリします。

./jindofs fs -unsetStoragePolicy -path <path>

特定のパスにあるデータのストレージ ポリシーを削除します。

./jindofs fs -checkStoragePolicy -path <path>

ストレージ ポリシーに基づいて、特定のパスにあるオブジェクトの変換タスクのステータスをクエリします。有効な値:

  • Pending: 変換タスクは送信される予定です。

  • Submitted: 変換タスクは送信されました。

  • Processing: 変換タスクは実行中です。

  • Finalized: 変換タスクは完了しました。

説明

このコマンドは、OSS-HDFS メタデータ変換タスクのステータスをクエリするためにのみ使用されます。このコマンドを使用して、OSS に送信されたタスクの処理ステータスをクエリすることはできません。

./jindofs fs -setStoragePolicy -path <path> -policy <policy> -restoreDays <restoreDays>

特定のパスにあるアーカイブまたはコールドアーカイブ オブジェクトを一時的に復元します。

  • -path: オブジェクトまたはディレクトリのパスを指定します。

  • -policy: ストレージ ポリシーを指定します。有効な値:

    • CLOUD_AR_RESTORED: 復元するオブジェクトのストレージタイプはアーカイブです。

    • CLOUD_COLD_AR_RESTORED: 復元するオブジェクトのストレージタイプはコールドアーカイブです。

    • CLOUD_DEEP_COLD_AR_RESTORED: 復元するオブジェクトのストレージタイプはディープコールドアーカイブです。

  • -restoreDays: 復元されたオブジェクトの保持期間を指定します。デフォルト値: 1.

    • 復元するオブジェクトのストレージタイプがアーカイブの場合、restoreDays パラメータの有効な値は 1 ~ 7 です。

    • 復元するオブジェクトのストレージタイプがコールドアーカイブの場合、restoreDays パラメータの有効な値は 1 ~ 365 です。

    • 復元するオブジェクトのストレージタイプがディープコールドアーカイブの場合、restoreDays パラメータの有効な値は 1 ~ 365 です。

アーカイブ、コールドアーカイブ、またはディープコールドアーカイブ オブジェクトを一時的に復元する場合は、次の点に注意してください。

重要
  • CLOUD_ARCLOUD_COLD_AR、または CLOUD_DEEP_COLD_AR ストレージ ポリシーを使用してデータを保存した後、データを復元する前に 2 日以上の間隔を指定する必要があります。

  • データが復元された後、データはすぐに読み取ることができません。ほとんどの場合、アーカイブ オブジェクトを読み取るには数分、コールドアーカイブまたはディープコールドアーカイブ オブジェクトを読み取るには数時間かかります。

  • 復元されたオブジェクトの保持期間が終了すると、オブジェクトを読み取ることができなくなります。復元されたオブジェクトの保持期間中は、オブジェクトを再度復元できますが、2 つの復元操作の間隔は 2 日以上にする必要があります。

よくある質問

参考資料