HBase增强版支持通过阿里云实时计算服务(Apache Flink)访问HBase。本文介绍通过Flink访问HBase增强版并创建结果表和维表。

背景信息

您可以将HBase中的表当做Flink 中的维表或者结果表。具体的使用方法参见阿里云实时计算服务帮助中的创建云数据库HBase版结果表创建云数据库HBase版维表

注意事项

在使用HBase增强版的表作为Flink的维表或者结果表时,创建表的DDL语句需要使用连接地址。Flink访问HBase增强版使用的是Java API访问地址。如果使用新创建的用户,请确保该用户拥有访问与Flink表的读写权限,请参见用户和ACL管理

创建维表

CREATE TABLE hbase (
   `key` varchar, 
   `name` varchar,
    PRIMARY KEY (`key`), -- HBase中的rowkey字段。
    PERIOD FOR SYSTEM_TIME --维表标识。
   ) with (
    TYPE = 'cloudhbase',
    endpoint = 'host:port',-- HBase增强版的Java API访问地址
    columnFamily = 'xxxxxx',
    userName  = 'root', -- 用户名
    password = 'root', -- 密码
    tableName = 'xxxxxx'
);

创建结果表

create table liuxd_user_behavior_test_front (
    row_key varchar,
    from_topic varchar,
    origin_data varchar,
    record_create_time varchar,
    primary key (row_key)
) with (
    type = 'cloudhbase',
    endpoint = 'host:port', -- HBase增强版的Java API访问地址
    userName  = 'root', -- 用户名
    password = 'root', -- 密码
    columnFamily = '<yourColumnFamily>',
    tableName = '<yourTableName>',
    batchSize = '500'
)

网络连通

如果您使用独立的Flink集群,Flink集群和HBase集群在同一个VPC中,或者使用公网访问地址连接HBase集群。连接HBase时需要您确保Flink的本地IP添加到HBase集群的白名单中,具体操作请参见设置白名单