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

Object Storage Service:HBase の基盤ストレージとして OSS-HDFS を使用する

最終更新日:Nov 09, 2025

HBase は、Hadoop エコシステムにおけるリアルタイムデータベースであり、高い書き込みパフォーマンスを提供します。Alibaba Cloud の OSS-HDFS サービスは、Hadoop 分散ファイルシステム (HDFS) インターフェイスと完全に互換性のあるバケットタイプを提供します。JindoSDK を使用すると、HBase は OSS-HDFS サービスを基盤ストレージとして使用でき、先行書き込みログ (WAL) ファイルを保存してストレージとコンピューティングを分離できます。ローカル HDFS ストレージと比較して、OSS-HDFS サービスはより高い柔軟性を提供し、O&M コストを削減します。

前提条件

  • Alibaba Cloud ECS インスタンスが購入済みであること。詳細については、「ECS インスタンスの購入」をご参照ください。

  • Hadoop 環境が作成済みであること。詳細については、「Hadoop ランタイム環境の作成」をご参照ください。

  • Apache HBase がデプロイ済みであること。詳細については、「Apache HBase」をご参照ください。

  • OSS-HDFS サービスが有効になっており、それにアクセスするために必要な権限があること。詳細については、「OSS-HDFS サービスを有効にする」をご参照ください。

手順

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

  2. JindoSDK を構成します。

    1. JindoSDK JAR パッケージの最新バージョンをダウンロードします。ダウンロードリンクについては、「GitHub」をご参照ください。

    2. ダウンロードしたパッケージを解凍します。

      次の例は、jindosdk-x.x.x-linux.tar.gz を解凍する方法を示しています。異なるバージョンの JindoSDK を使用する場合は、パッケージ名を実際のパッケージ名に置き換えてください。

      tar -zxvf jindosdk-x.x.x-linux.tar.gz -C /usr/lib
      説明

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

    3. JINDOSDK_HOME を構成します。

      export JINDOSDK_HOME=/usr/lib/jindosdk-x.x.x-linux
      export PATH=$JINDOSDK_HOME/bin:$PATH
    4. HADOOP_CLASSPATH を構成します。

      export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:${JINDOSDK_HOME}/lib/*
      重要

      インストールフォルダと環境変数をすべての必要なノードにデプロイします。

    5. JindoSDK JAR パッケージを Hadoop クラスパスにインストールします。

      cp jindosdk-x.x.x-linux/lib/jindo-core-x.x.x.jar <HADOOP_HOME>/share/hadoop/hdfs/lib/
      cp jindosdk-x.x.x-linux/lib/jindo-sdk-x.x.x.jar <HADOOP_HOME>/share/hadoop/hdfs/lib/
  3. OSS-HDFS サービス実装クラスと AccessKey を構成します。

    1. HBase の core-site.xml ファイルで OSS-HDFS サービス実装クラスを構成します。

      <configuration>
          <property>
              <name>fs.AbstractFileSystem.oss.impl</name>
              <value>com.aliyun.jindodata.oss.JindoOSS</value>
          </property>
      
          <property>
              <name>fs.oss.impl</name>
              <value>com.aliyun.jindodata.oss.JindoOssFileSystem</value>
          </property>
      </configuration>
    2. OSS-HDFS バケットの AccessKey ID と AccessKey Secret を HBase の core-site.xml ファイルに追加します。

      <configuration>
          <property>
              <name>fs.oss.accessKeyId</name>
              <value>LTAI********</value>
          </property>
      
          <property>
              <name>fs.oss.accessKeySecret</name>
              <value>KZo1********</value>
          </property>
      </configuration>
  4. OSS-HDFS サービスのエンドポイントを構成します。

    OSS-HDFS サービスを使用して OSS バケットにアクセスするには、エンドポイントを構成する必要があります。推奨されるパス形式は oss://{yourBucketName}.{yourBucketEndpoint}/{path} です。例: oss://examplebucket.cn-shanghai.oss-dls.aliyuncs.com/exampleobject.txt。構成が完了すると、JindoSDK はアクセスパス内のエンドポイントを使用して OSS-HDFS サービスインターフェイスにアクセスします。

    他の方法で OSS-HDFS サービスのエンドポイントを構成することもできます。これらの構成方法には優先順位があります。詳細については、「付録 1: エンドポイントを構成するその他の方法」をご参照ください。

  5. HBase のストレージパスを指定します。

    HBase とその WAL ファイルのストレージパスを指定するには、hbase-site 構成ファイルの hbase.rootdir パラメーターの値を OSS パスに変更します。形式は oss://bucket.endpoint/hbase-root-dir です。

    重要

    クラスターをリリースする前に、テーブルを無効にして、すべての WAL ファイルが HFile にフラッシュされるようにしてください。