普元数据开发平台 普元数据开发平台
产品介绍
安装部署
快速入门
操作指南
应用集成
运维指南
  • HBase Sink组件使用说明
  • 组件说明
  • 配置项说明
  • FAQ

# HBase Sink组件使用说明

  • 组件说明
  • 配置项说明
  • 使用示例
    • 将Mysql的数据写入HBase中
  • FAQ

# 组件说明

用于将数据写入 HBase、星环 Hyperbase 数据库。星环 Hyperbase 数据库也使用 HBase Sink 组件。

注意

需要提前创建表及列族。

# 配置项说明

配置名称 数据类型 是否必填 默认值 描述
节点名称 String 是 HBase 当前创建的节点名称,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。
节点编码 String 是 自动生成 当前创建的节点编码,以此标识此组件,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。
选择数据源 String 是 - 从下拉选项中选择列出的当前项目已经关联的数据源。
选择表 String 是 - 从下拉列表中选择数据表。
Rowkey取值列 String 否 "" 作为RowKey的列名列表。
Rowkey分隔符 String 否 "" 多列RowKey的连接符。
列族 String 是 - 列族映射规则,控制字段写入哪个列族。例如:Id作为行键和其他字段写入到不同的列族,您可以分配 family_name { name = "info1" age = "info2" } name 将写入列族 info1,age 将写入列族 info2 如果您希望将所有字段写入同一列族,你可以分配 family_name { all_columns = "info" } 所有字段都将写入列族 info。
字段 String 是 - 字段。
空值写入模式 String 否 skip 空值写入方式,支持[skip, empty],默认跳过 skip:当字段为 null 时,连接器不会将此字段写入 hbase empty:当字段为null时,连接器将写入并为此字段生成空值。
Write Ahead Log写入 Boolean 否 否 HBase 采用了 Write-Ahead Log (WAL) 机制来保证数据的持久性和容错性。
版本列名 String 否 - 指定字段作为HBase时间戳。
缓冲区大小 String 否 8 HBase 客户端写缓冲区大小。
编码 String 否 utf8 字符串类型字段的编码,支持[utf8,gbk],默认为utf8。
可选参数 Map 否 - 其他参数,用户可以根据需求进行配置。

# FAQ

Q1:提示“TableNotFoundException”

A:HBase表未提前创建。请先通过HBase Shell或API建表。

Q2:wal_write一定要设为true吗?

A:官方表格标记为“yes”(必填),但示例中常设为false。建议显式配置,生产环境如需数据高可靠请设为true(会略微影响性能)。

Q3:如何设置HBase客户端的自定义参数?

A:使用hbase_extra_config,例如:

hbase_extra_config {
hbase.client.retries.number = 3
hbase.rpc.timeout = 5000
}

Q4:是否支持Phoenix写入?

A:不支持。HBase Sink是直接写入HBase表。如需通过Phoenix写入,请使用SeaTunnel的Phoenix JDBC Sink(配置driver=org.apache.phoenix.jdbc.PhoenixDriver)。

Q5:2.3.10版本有什么HBase相关更新?

A:2.3.10对HBase Connector进行了“配置优化”,但官方发布说明中未披露具体细节。建议使用2.3.6及以上稳定版本。

← Elasticsearch Hive →