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

Object Storage Service:OSS-HDFSの自動保管階層化の使用方法

最終更新日:Nov 19, 2024

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

前提条件

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

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

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

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

使用上の注意

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

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

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

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

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

  • アーカイブオブジェクトのストレージクラスをコールドアーカイブに変換できますが、コールドアーカイブオブジェクトのストレージクラスをアーカイブに変換することはできません。

手順

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

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

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

      cd jindosdk-x.x.x/bin/
      説明

      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] Retain the following default configurations: 
      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] Specify the following parameters: 
      <!-- In this example, the endpoint of the China (Hangzhou) region is used. Specify your actual endpoint.  -->
      fs.oss.endpoint = cn-hangzhou.oss-dls.aliyuncs.com
      <! -- Configure the AccessKey ID and AccessKey secret that are used to access OSS-HDFS.  -->
      fs.oss.accessKeyId = LTAI********    
      fs.oss.accessKeySecret = KZo1********                                        
    6. 環境変数を設定します。

      export 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. 左側のナビゲーションツリーで、データレイク > OSS-HDFSを選択します。

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

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

      1

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

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

      • ライフサイクルルールは、キーがであるタグを含むデータのストレージクラスを指定します。transition-storage-classであり、その値はアーカイブで、. 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ストレージクラス。

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

    • CLOUD_COLD_AR_RESTORED: 一時的に復元されるCold Archiveオブジェクトのストレージクラス。 復元されたオブジェクトの保持期間には要件があります。

重要
  • 一度に復元するアーカイブまたはコールドアーカイブデータのサイズは5テラバイトを超えることはできません。また、処理状態のデータのサイズは50テラバイトを超えることはできません。

  • オブジェクトまたはサブディレクトリのストレージクラスを指定しない場合、オブジェクトまたはサブディレクトリは、それらが属するディレクトリのストレージクラスを継承します。 たとえば、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: 変換タスクは完了です。

説明

このコマンドは、OSS-HDFSのメタデータ変換タスクのステータスの照会にのみ使用され、OSSに送信されたタスクの処理ステータスの照会には使用できません。

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

特定のパスでアーカイブまたはコールドアーカイブデータを一時的に復元します。

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

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

    • CLOUD_AR_RESTORED: 復元するオブジェクトのストレージクラスはArchiveです。

    • CLOUD_COLD_AR_RESTORED: 復元するオブジェクトのストレージクラスはCold Archiveです。

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

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

    • 復元するオブジェクトのストレージクラスがCold Archiveの場合、restoreDaysパラメーターの有効な値は1〜365です。

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

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

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

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

よくある質問

関連ドキュメント