Skip to content

Commit d9e6a11

Browse files
HDDS-14471. HBase integration user guide. (#316)
1 parent ab95292 commit d9e6a11

File tree

1 file changed

+60
-0
lines changed

1 file changed

+60
-0
lines changed
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
---
2+
sidebar_label: HBase
3+
---
4+
5+
# HBase
6+
7+
Apache Ozone supports integration with Apache HBase, allowing you to use Ozone as the underlying storage layer for HBase tables. This integration leverages the `ofs://` scheme to provide a scalable and robust filesystem for HBase Region Servers.
8+
9+
## Prerequisites
10+
11+
- An active Apache Ozone cluster.
12+
- Ozone must be configured to use **Ratis replication**. HBase does not currently support Erasure Coded (EC) buckets.
13+
14+
## Configuration Steps
15+
16+
### 1. Ozone Setup
17+
18+
Before configuring HBase, you must prepare the Ozone filesystem:
19+
20+
- **Create Volume and Bucket:** Create a dedicated volume and bucket for HBase. Ensure the bucket is **File System Optimized (FSO)**.
21+
- **Permissions:** If using Apache Ranger, grant the `hbase` user `READ/WRITE` permissions for the specific Ozone volume and bucket.
22+
23+
### 2. Ozone Service Configurations
24+
25+
Update your `ozone-site.xml` (or via your cluster management tool) with the following properties to enable HBase compatibility:
26+
27+
| Property | Value | Description |
28+
| :--- | :--- | :--- |
29+
| `ozone.fs.hsync.enabled` | `true` | Required for HBase WAL (Write Ahead Log) durability. |
30+
| `ozone.hbase.enhancements.allowed` | `true` | Enables Ozone-side optimizations for HBase. |
31+
| `ozone.client.hbase.enhancements.allowed` | `true` | Enables client-side optimizations. |
32+
| `ozone.client.stream.putblock.piggybacking` | `true` | Improves performance for small writes. |
33+
| `ozone.client.incremental.chunk.list` | `true` | Optimizes metadata handling for HBase. |
34+
35+
### 3. HBase Service Configurations
36+
37+
Configure HBase to point to the Ozone filesystem. Update `hbase-site.xml` with the following:
38+
39+
- **Root Directory:** Set `hbase.rootdir` to your Ozone path using the `ofs://` scheme.
40+
41+
```xml
42+
<property>
43+
<name>hbase.rootdir</name>
44+
<value>ofs://[service-id]/[volume]/[bucket]/hbase</value>
45+
</property>
46+
```
47+
48+
- **Scheme Support:** Note that only `ofs://` is supported. The older `o3fs://` scheme is not supported for HBase integration.
49+
50+
Now you are ready to start your HBase cluster with Ozone.
51+
52+
## Support Matrix and Restrictions
53+
54+
### Unsupported Features
55+
56+
The following features are currently **not supported** when running HBase on Ozone:
57+
58+
- **HBase Features:** Medium Object Storage (MOB), Favored Nodes, Hedged Read, Storage Policy, and Short Circuit Read.
59+
- **Ozone Features:** Snapshots, Erasure Coded (EC) buckets, and Object Store (OBS) buckets.
60+
- **Phoenix:** Phoenix User Defined Functions (UDF) are not supported on Ozone.

0 commit comments

Comments
 (0)