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

E-MapReduce:HBase ストレージバックエンドとしての OSS-HDFS の使用

最終更新日:Aug 06, 2026

DataServing クラスターでは、HBase データを OSS-HDFS に保存して、コンピューティングとストレージを分離できます。先行書き込みログ (WAL) データは HDFS に残ります。

背景

OSS-HDFS は、統一されたメタデータ管理、完全な HDFS API 互換性、および包括的な POSIX サポートを備える、クラウドネイティブのデータレイクストレージサービスです。データレイクアーキテクチャにおけるビッグデータおよび AI コンピューティングシナリオに適しています。詳細については、「OSS-HDFS とは」をご参照ください。

次の図は、OSS-HDFS 上の HBase のアーキテクチャを示しています。HBase on OSS-HDFS

制限事項

E-MapReduce 3.42 以降、または E-MapReduce 5.8.0 以降を実行している DataServing クラスターでのみサポートされています。

手順

  1. OSS-HDFS を有効化し、必要なアクセス権限を付与します。詳細な手順については、「OSS-HDFS の有効化とアクセス権限の付与」をご参照ください。

  2. OSS-HDFS サービスのエンドポイントを取得します。

    OSS コンソールで、Overview ページに移動し、OSS-HDFS サービスのエンドポイントをコピーします。E-MapReduce HBase クラスターを作成する際に、このエンドポイントを hbase.rootdir パラメーターのパスとして使用します。

    バケットの [Access Domain] パネルで、[HDFS Service] 行を見つけます。バケットエンドポイントの形式は <BucketName>.cn-hangzhou.oss-dls.aliyuncs.com です。このエンドポイントをコピーします。

  3. OSS-HDFS を使用します。

    1. DataServing クラスターを作成します。詳細については、「クラスターの作成」をご参照ください。

      DataServing クラスターを作成する際に、次のパラメーターを設定します。

      • Optional Services:JindoData と Phoenix 以外のすべてのサービスを選択します。

      • HBase Storage Mode:[OSS-HDFS] を選択します。

      • Root Directory:HDFS サービスが有効になっている OSS バケットを指定します。oss://${OSS-HDFS_ENDPOINT}/${DIR} の形式を使用します。例:oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase

      説明

      次のプレースホルダーを置き換えます。

      • ${OSS-HDFS_ENDPOINT}:手順 2 で取得した OSS-HDFS エンドポイント。

      • ${DIR}:HBase のルートディレクトリ。

    2. HBase テーブルを作成します。

      1. DataServing クラスターにログインします。詳細については、「クラスターへのログイン」をご参照ください。

      2. 次のコマンドを実行して HBase Shell を起動します。

        hbase shell
      3. カラムファミリー f を持つテストテーブル bar を作成するには、次のコマンドを実行します。

        create 'bar','f'

        テーブルを作成した後、list コマンドを実行してテーブルの一覧を表示できます。

        出力例:

        TABLE
        bar
        1 row(s)
        Took 0.0138 seconds
    3. HBase Shell を終了し、次のコマンドを実行して、テーブルデータが OSS-HDFS に保存されていることを確認します。

      構文:

      hadoop fs -ls oss://${OSS-HDFS_ENDPOINT}/${DIR}

      例:

      hadoop fs -ls oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default

      同様の出力は、HBase テーブルのディレクトリが OSS-HDFS に作成されたことを示しています。

      Found 1 items
      drwxrwxrwx   - hbase supergroup          0 2022-07-28 14:45 oss://test_bucket.cn-hangzhou.oss-dls.aliyuncs.com/hbase/data/default/bar
  4. オプション: クラスターを終了して復元します。

    OSS-HDFS はコンピューティングとストレージを分離するため、元のクラスターを終了し、同じ OSS-HDFS ディレクトリから同じデータを読み取る新しいクラスターを作成できます。

    重要
    • 新しいクラスターと元のクラスターは、同じバージョンの HBase を使用する必要があります。バージョンが一致しない場合、予期せぬ互換性の問題が発生し、新しいクラスターが使用できなくなる可能性があります。

      Optional Services セクションで、[HBASE (2.3.4)] を選択します。

    • 複数のクラスターから同時に書き込みを行うと、メタデータまたはデータの不整合が発生し、データが破損して、クラスターが使用できなくなる可能性があります。

    1. DataServing クラスターにログインします。詳細については、「クラスターへのログイン」をご参照ください。

    2. HBase Shell を起動します。

      hbase shell
    3. flush コマンドを実行して、テーブルのすべてのインメモリデータを HFile に書き込みます。

      flush 'bar'
    4. テーブルに対して disable コマンドを実行して、新しいデータの書き込みを防ぎます。

      disable 'bar'
    5. 新しいクラスターを作成します。元のクラスターと同じ HBase バージョンであることを確認し、ストレージバックエンドとして同じ OSS-HDFS ディレクトリを使用するように設定します。

      新しいクラスターは OSS-HDFS からデータを自動的に復元し、使用できる状態になります。