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

Object Storage Service:OSS-HDFSの自動ストレージ階層化

最終更新日:Feb 26, 2024

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

前提条件

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

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

  • チケットが送信されました自動ストレージ階層化機能を使用するために。

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

使用上の注意

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

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

  • IA、Archive、またはCold Archiveディレクトリにオブジェクトを直接作成することはできません。 IA、Archive、またはCold Archiveディレクトリにオブジェクトを作成する必要がある場合は、オブジェクトを作成してStandardディレクトリで閉じることができます。 次に、名前変更操作を使用して、オブジェクトをIA、アーカイブ、またはコールドアーカイブディレクトリに移動します。

  • オブジェクトのストレージクラスをアーカイブまたはコールドアーカイブに変換すると、追加のシステムオーバーヘッドが生成され、データの復元が遅くなります。 作業は慎重に行ってください。

  • ArchiveオブジェクトをCold Archiveオブジェクトに、Cold ArchiveオブジェクトをArchiveオブジェクトに変換することはできません。

手順

  1. 環境変数を設定します。

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

    2. インストールされているJindoSDK JARパッケージのbinディレクトリに移動します。

      cd jindosdk-x.x.x /ビン /
      説明

      x.x.xは、JindoSDK JARパッケージのバージョン番号を示します。

    3. binディレクトリのjindo-utilファイルに読み取りおよび書き込み権限を付与します。

      chmod 700 jindo-util
    4. jindo-utilファイルの名前をjindoに変更します。

      mv jindo-util jindo
    5. jindosdk.cfgという名前の設定ファイルを作成し、次のパラメーターを設定ファイルに追加します。

      [common] 以下のデフォルト設定を保持します。 
      logger.dir = /tmp/jindo-util /
      logger.sync = false
      logger.consolelogger = false
      logger.level = 0
      logger.verbose = 0
      logger.cleaner.enable = true
      hadoopConf.enable = false
      
      [jindosdk] 以下のパラメータを指定します。 
      <!-- この例では、中国 (杭州) リージョンが使用されています。 実際のリージョンを指定します。  ->
      fs.oss.endpoint = cn-hangzhou.oss-dls.aliyuncs.com
      <! -- OSS-HDFSへのアクセスに使用するAccessKey IDとAccessKey secretを設定します。  ->
      fs.oss.accessKeyId = LTAI5tJCTj5SxJepqxQ2 ****
      fs.oss.accessKeySecret = i0uLwyd0mHxXetZo7b4j4CXP16 **** 
    6. 環境変数を設定します。

      エクスポートJINDOSDK_CONF_DIR=<JINDOSDK_CONF_DIR>

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

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

    シナリオ

    コマンド

    結果

    IA

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

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

    アーカイブ

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

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

    コールドアーカイブ

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

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

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

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

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

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

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

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

      1

      設定が正しくないために自動ストレージ階層化機能が期待どおりに実行されないようにするため、OSSはライフサイクルルールを自動的に作成し、特定のタグを含むOSS-HDFSのデータのストレージクラスを変換します。

      • ライフサイクルルールは、キーがtransition-storage-classで、値が内のIAであるタグを含むデータのストレージクラスを指定します。dlsdata/ ディレクトリは、データが最後に変更されてから1日後にIAに変更されます。

      • ライフサイクルルールは、キーがtransition-storage-classで値がArchiveであるタグを含むデータのストレージクラスを指定します。dlsdata/ ディレクトリは、データが最後に変更されてから1日後にアーカイブに変更されます。

      • ライフサイクルルールは、キーがtransition-storage-classで値がColdArchiveであるタグを含むデータのストレージクラスを指定します。dlsdata/ ディレクトリは、データが最後に変更されてから1日後にコールドアーカイブに変更されます。

      重要

      自動ストレージ階層化機能の有効化後に自動的に作成されるライフサイクルルールは変更しないでください。 そうしないと、データまたはOSS-HDFSサービスの例外が発生する可能性があります。

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

      • OSS-HDFSは、手順2で設定したポリシーに基づいて、オブジェクトのストレージクラスを変更します。

      • OSSは、ライフサイクルルールが作成されてから24時間以内にルールをロードします。 ルールがロードされた後、OSSは毎日08:00 (UTC + 8) にルールの実行を開始します。 特定の実行時間は、オブジェクトの数によって異なります。 オブジェクトは、少なくとも48時間以内に指定されたストレージクラスにダンプされます。

関连するコマンド

構文

説明

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

パス内のデータのストレージポリシーを指定します。

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

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

    • CLOUD_STD: 標準ストレージクラス。

    • CLOUD_IA: IAストレージクラス。

    • CLOUD_AR: Archiveストレージクラス。

    • CLOUD_COLD_AR: Cold Archiveストレージクラス。

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

. /jindo fs -getStoragePolicy -path <path>

特定のパスのデータのストレージポリシーを取得します。

. /jindo fs -unsetStoragePolicy -path <path>

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

. /jindo fs -checkStoragePolicy -path <path>

ストレージポリシーに基づいて、特定のパス内のデータのストレージクラス変換のステータスを取得します。 有効な値:

  • 保留中: 変換タスクが送信されます。

  • 送信済み: 変換タスクが送信されます。

  • Finalized: 変換タスクは完了です。

よくある質問

参考資料