HBase sink with Flink

To store the output of a real-time processing application in HBase, Cloudera provides an HBase Streaming connector.

The HBase Streaming connector has the following key features:
  • Automatic configuration on the CDP Private Cloud Base platform
  • High throughput buffered operations
  • Customizable data-driven update/delete logic
To use the HBase integration, add the following dependency to your project:
<dependency>
  <groupId>org.apache.flink</groupId>
  <artifactId>flink-hbase_${scala.binary.version}</artifactId>
  <version>${flink.version}</version>
</dependency>

The general purpose HBase sink connector is implemented in the org.apache.flink.addons.hbase.HBaseSinkFunction class.

This is an abstract class that must be extended to define the interaction logic (mutations) with HBase. By using the BufferedMutator instance, you can implement arbitrary data driven interactions with HBase. While it is possible to execute all mutations supported by the BufferedMutator interface, Cloudera strongly recommends that users should only use idempotent mutations: Put and Delete.