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

Lindorm:コールドストレージの設定

最終更新日:Sep 17, 2026

Lindorm は、コールドデータの記憶媒体として容量型クラウドストレージを使用します。コールドストレージ機能を有効にした後、データベース内のテーブルまたはカラムファミリーを設定する必要があります。このトピックでは、コールドストレージの設定方法について説明します。

背景情報

コールドストレージ機能は、バージョン 2.1.8 以降のLindorm エンジンでのみサポートされています。Lindorm では、テーブルレベルでストレージ属性を設定できます。テーブル全体または特定のカラムファミリーのストレージタイプをコールドストレージに設定できます。テーブルまたはカラムファミリーがコールドストレージとして設定されると、データは容量型クラウドストレージに保存され、インスタンスのデフォルトストレージ容量を消費しません。

容量型クラウドストレージのパフォーマンスについては、容量型クラウドストレージの概要をご参照ください。

コールドストレージの設定

データベース内のテーブルまたはカラムファミリーをコールドストレージとして設定するには、次のいずれかの方法を使用します。

  • HBase シェルを使用してコールドストレージを設定します。開始する前に、シェルをダウンロードして設定してください。詳細については、「Lindorm シェルで LindormTable に接続する」をご参照ください。

    • テーブルを作成するときに、次のステートメントを実行してコールドストレージを設定します。

      create 'coldTable', {NAME => 'f', STORAGE_POLICY => 'COLD'}
    • テーブルがすでに作成されている場合は、カラムファミリーのプロパティを変更することで、カラムファミリーをコールドストレージに設定できます。

      重要

      カラムファミリーにすでにデータが含まれている場合、メジャーコンパクションが完了して初めて、データがコールドストレージに移動されます。

      alter 'coldTable', {NAME=>'f', STORAGE_POLICY => 'COLD'}
    • テーブルをホットストレージにリセットするには、次のステートメントを実行します。

      alter 'coldTable', {NAME=>'f', STORAGE_POLICY => 'DEFAULT'} 
  • HBase Java API を使用してコールドストレージを設定します。開始する前に、SDK をインストールして設定してください。詳細については、「ApsaraDB for HBase API for Java を使用してアプリケーションを開発する」をご参照ください。

    • テーブルを作成するときに、次のステートメントを実行してコールドストレージを設定します。

      Admin admin = connection.getAdmin();
       HTableDescriptor descriptor = new HTableDescriptor(TableName.valueOf("coldTable"));
       HColumnDescriptor cf = new HColumnDescriptor("f");
       cf.setValue("STORAGE_POLICY", AliHBaseConstants.STORAGETYPE_COLD);
       descriptor.addFamily(cf);
       admin.createTable(descriptor);
    • テーブルがすでに作成されている場合は、カラムファミリーのプロパティを変更することで、カラムファミリーをコールドストレージに設定できます。

      重要

      カラムファミリーにすでにデータが含まれている場合、メジャーコンパクションが完了して初めて、データがコールドストレージに移動されます。

      Admin admin = connection.getAdmin();
      TableName tableName = TableName.valueOf("coldTable");
      HTableDescriptor descriptor = admin.getTableDescriptor(tableName);
      HColumnDescriptor cf = descriptor.getFamily("f".getBytes());
      // カラムファミリーのストレージタイプをコールドストレージに設定します。
      cf.setValue("STORAGE_POLICY", AliHBaseConstants.STORAGETYPE_COLD);
      admin.modifyTable(tableName, descriptor);
    • テーブルをホットストレージにリセットするには、次のステートメントを実行します。

      Admin admin = connection.getAdmin();
      TableName tableName = TableName.valueOf("coldTable");
      HTableDescriptor descriptor = admin.getTableDescriptor(tableName);
      HColumnDescriptor cf = descriptor.getFamily("f".getBytes());
      // カラムファミリーのストレージタイプをデフォルトストレージに設定します。デフォルトストレージはホットストレージです。
      cf.setValue("STORAGE_POLICY", AliHBaseConstants.STORAGETYPE_DEFAULT);
      admin.modifyTable(tableName, descriptor);