Hbase target 可把 Dataset 持久化到 HBase 表中。table_name 为 SparkSQL Flow 中 source 或 Transform 的表;target_table_name 为 hbase 的表名,namespace 为 hbase 的命名空间(库)。配置如下:
xml
<target type="hbase"
table_name="cust_id_agmt_id_t"
target_table_name="hello"
fields="rowkey:cust_id,info:name1,info:name,info:gender1"
storage_type="string"
hbase_site="/path/hbase-site.xml"
hbase_version="1"/>
字段说明:
- target_table_name 为HBase 中的表明,支持namespace。如: for_name:bar_table。如果HBase 中不存在该表,DataFlow 会根据columns_mapping 中配置的列族信息创建表;
- fields: 为 dataset 中列持久化到 hbase 中的列的映射; Rowkey 为 hbase RowKey,本例为 cust_id 字段。Info:name1 为获取 dataset 中 name1 字段持久化到 hbase 的 info 列族中,列名为 name1;
- storage_type: 为值的序列化方式为 string 模式,支持 string 和 binary 两种方式;
- hbase_version: 为创建表时,列保留的版本数量;默认为 1。如果hbase已经存在该表,该值无效;
- hbase_site: 用于配置HBase服务配置文件地址,支持:file: / hdfs: 如果无 file 或者 hdfs 前缀则采用 file: 协议