HBase support

Updated at:

HBase and Tablestore are both distributed NoSQL databases. To ensure compatibility with the HBase API, Tablestore provides the Tablestore HBase Client. This topic describes the differences between the two products in terms of features, software, and services.

Differences between Tablestore and HBase

Feature comparison

The following table compares the main features of Tablestore and HBase.

Dimension

Tablestore

HBase

Data model

Wide table model, time series model, message model

Wide Column

Data type

Multiple data types such as String and Integer

Uniformly binary bytes

Client

Lightweight client with few dependencies

Heavyweight client with many dependencies

Transport protocol

HTTPS

RPC

Metering and billing

Reserved resources, pay-as-you-go

Reserved resources

Service hosting

Fully managed

Semi-managed

Multiple data versions

Support

Supported

Data Lifecycle

Support

Support

Transaction

Single-row transactions, transactions within a partition

Single-row transactions

Index

secondary index, search index

No native index feature. Phoenix supports secondary indexes.

Real-time subscription

Tunnel Service

Not supported

Data analytics

Supports interactive analysis, such as search index statistical aggregation and SQL queries.

Not supported

Integration with external computing services

  • Batch computing: Spark and MaxCompute

  • Streaming Compute Flink

  • Function Compute

  • SQL query engine: PrestoDB

Batch computing: Spark and MaxCompute

Access control

Alibaba Cloud RAM/STS security account system

Kerberos, which is complex

Data encryption

Encryption at rest, Bring-Your-Own-Key (BYOK)

None

Load balancing

Automatically detects hot spot partitions to trigger partition splits and merges.

Simple policies trigger partition splits.

Underlying storage

Pangu

HDFS

Software and service comparison

Both Tablestore and HBase are modeled after Google's Bigtable, and their wide table data models are very similar. The main difference is that HBase is open source software, whereas Tablestore is a cloud service that is accessible through RESTful APIs. The main differences are as follows:

Dimension

Tablestore

Self-managed HBase cluster

Cost

Billing is based on actual usage. Tablestore provides high-performance and storage-optimized instance types for different application scenarios.

Resources must be configured based on peak business traffic. Resources are idle during off-peak hours, which leads to high rental and manual operations and maintenance (O&M) costs.

Security

Tablestore integrates with the Alibaba Cloud resource and permission management system. It supports multiple authentication and authorization mechanisms, such as RAM policies, instance policies, and network ACLs. Authorization is supported at the table and API levels.

Requires additional security mechanisms.

Reliability

Data is automatically backed up using multiple replicas. Failover is also automatic.

You must ensure the availability of the cluster.

Scalability

The automatic load balancing mechanism supports petabytes of data and millions of concurrent requests for a single table, which eliminates the need for manual scale-out.

When cluster utilization reaches a certain level, you must add or remove machines. This is a tedious process that can affect online services.

HBase interface compatibility

HBase is a popular distributed NoSQL database. To ensure compatibility with the HBase API, Tablestore offers the Tablestore HBase Client. This client helps you easily migrate your applications from HBase to Tablestore.

Next steps