The HBASE-HDFS service provides persistent and highly reliable storage for HBase logs by storing the WAL files on HDFS.
HBase-HDFS
HBase uses a Write-Ahead Log (WAL) to protect data durability. HBase writes incoming data to both the WAL and an in-memory store (MemStore). If a RegionServer crashes before the MemStore is flushed to disk as StoreFiles, HBase replays the WAL to recover uncommitted writes. Storing WAL files on a reliable distributed file system is therefore critical to HBase data integrity.
The HBase-HDFS service uses Hadoop Distributed File System (HDFS) as the underlying storage for WAL files. It inherits all native HDFS features — distributed storage, block replication, and failover — without modifying the base HDFS architecture. For background on HDFS, see HDFS overview.
Deployment
HBase-HDFS is deployed automatically. No manual installation is required.
Create a cluster
Console
In the cluster creation wizard, select the OSS-HDFS and HBase services and check HBase Log Storage. HBase-HDFS is automatically deployed after the cluster is created.
OpenAPI
Call the CreateCluster or RunCluster operation and include the following Application and ApplicationConfigs parameters:
Application = ["HBASE", "OSS-HDFS", "HBASE-HDFS"]
ApplicationConfigs = [
{
"ConfigFileName": "hbase-site.xml",
"ApplicationName": "HBASE",
"ConfigItemKey": "hbase.wal.mode",
"ConfigScope": "CLUSTER",
"ConfigItemValue": "HDFS"
},
{
"ConfigFileName": "common.conf",
"ApplicationName": "OSS-HDFS",
"ConfigItemKey": "OSS_ROOT_URI",
"ConfigScope": "CLUSTER",
"ConfigItemValue": "oss://examplebucket.oss-cn-hangzhou-internal.aliyuncs.com/"
},
{
"ConfigFileName": "hdfs-site.xml",
"ApplicationName": "HBASE-HDFS",
"ConfigItemKey": "dfs.balancer.block-move.timeout",
"ConfigScope": "CLUSTER",
"ConfigItemValue": "600000"
}
]
Adjust parameter values to match your environment.
Add a service
If a cluster already has the OSS-HDFS service and you add HBase later, HBase-HDFS is also automatically deployed.
What's next
-
Scale in a node group — for decommissioning an HBase-HDFS DataNode