Overview of HBase Client

Updated at:

Tablestore HBase Client gives your Java applications access to Tablestore through the open source HBase API. You can use it alongside Tablestore SDKs and Tablestore RESTful API operations. If your application already uses Tablestore HBase Client, switch to Tablestore without rewriting your HBase API calls.

Supported versions

Built on Tablestore SDK for Java V4.2.x and later, Tablestore HBase Client supports the following open source HBase API versions:

  • V2.x.x -- compatible with HBase V2.5.10

  • V1.x.x -- compatible with HBase V1.2.0

Get Tablestore HBase Client

Match your Tablestore Tablestore HBase Client version to the HBase Client version your application uses. V2.x.x and V1.x.x expose different API operations, so pick the version that matches your existing setup.

HBase Client V2.x.x

Get Tablestore HBase Client through one of the following methods:

  • Clone or download the tablestore-hbase-client project from GitHub.

  • Download the tablestore-hbase-client-2.0.12.zip package directly.

  • Maven

    Tablestore HBase Client V2.0.12 depends on HBase Client V2.5.10 and Tablestore SDK for Java V5.17.4. Add the following dependency to your pom.xml file:

    <dependencies>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore-hbase-client</artifactId>
            <version>2.0.12</version>
        </dependency>
    </dependencies>

    To use a different version of HBase Client or Tablestore SDK for Java, override the bundled versions with the <exclusion> element. The following example uses HBase Client V2.5.0 and Tablestore SDK for Java V5.17.0:

    <dependencies>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore-hbase-client</artifactId>
            <version>2.0.12</version>
            <exclusions>
                <exclusion>
                    <groupId>com.aliyun.openservices</groupId>
                    <artifactId>tablestore</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-client</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.hbase</groupId>
            <artifactId>hbase-client</artifactId>
            <version>2.5.0</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore</artifactId>
            <classifier>jar-with-dependencies</classifier>
            <version>5.17.0</version>
        </dependency>
    </dependencies>

HBase Client V1.x.x

Get Tablestore HBase Client through one of the following methods:

  • Clone or download the tablestore-hbase-client project from GitHub.

  • Download the tablestore-hbase-client-1.2.0.zip package directly.

  • Maven

    Tablestore HBase Client V1.2.0 depends on HBase Client V1.2.0 and Tablestore SDK for Java V4.2.1. Add the following dependency to your pom.xml file:

    <dependencies>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore-hbase-client</artifactId>
            <version>1.2.0</version>
        </dependency>
    </dependencies>

    To use a different version of HBase Client or Tablestore SDK for Java, override the bundled versions with the <exclusion> element. The following example uses HBase Client V1.2.1 and Tablestore SDK for Java V4.2.0:

    <dependencies>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore-hbase-client</artifactId>
            <version>1.2.0</version>
            <exclusions>
                <exclusion>
                    <groupId>com.aliyun.openservices</groupId>
                    <artifactId>tablestore</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-client</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.hbase</groupId>
            <artifactId>hbase-client</artifactId>
            <version>1.2.1</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun.openservices</groupId>
            <artifactId>tablestore</artifactId>
            <classifier>jar-with-dependencies</classifier>
            <version>4.2.0</version>
        </dependency>
    </dependencies>

After migration

After you migrate data from HBase to Tablestore, you no longer need to manage HBase Server. Tablestore handles infrastructure operations such as table splitting, compaction, and RegionServer management. Use Tablestore HBase Client operations directly for table and data management.

Billing

Using Tablestore HBase Client incurs charges for data reads, data writes, and storage. For details, see Billing overview.

API compatibility

Tablestore and HBase share similar data models and features. For differences between Tablestore HBase Client and the native HBase API, see Features supported by Tablestore HBase Client.