更新时间:2024-01-16 GMT+08:00

目的端为HBase/CloudTable

JSON样例

"to-config-values": {
        "configs": [
          {
            "inputs": [
              {
                "name": "toJobConfig.table",
                "value": "rf_to"
              },
              {
                "name": "toJobConfig.storageType",
                "value": "PUTLIST"
              },
              {
                "name": "toJobConfig.columns",
                "value": "AA:AA&BB:BB&CC:CC&DD:DD"
              },
              {
                "name": "toJobConfig.rowKeyColumn",
                "value": "AA:AA"
              },
              {
                "name": "toJobConfig.isOverride",
                "value": "false"
              },
              {
                "name": "toJobConfig.isRowkeyRedundancy",
                "value": "false"
              },
              {
                "name": "toJobConfig.algorithm",
                "value": "NONE"
              },
              {
                "name": "toJobConfig.writeToWAL",
                "value": "true"
              },
              {
                "name": "toJobConfig.transType",
                "value": "false"
              }
            ],
            "name": "toJobConfig"
          }
        ]
      }

参数说明

参数

是否必选

类型

说明

toJobConfig.table

String

写入数据的表名,例如:“TBL_EXAMPLE”

toJobConfig.storageType

枚举

将数据写入到HBase表中的方法:
  • PUTLIST:put list方式写入。

toJobConfig.columns

String

需要抽取数据的列,列号之间使用“&”分割,列族与列之间用“:”分隔,例如:“cf1:c1&cf2:c2”

toJobConfig.rowKeyColumn

String

作为rowkey的列,列号之间使用“&”分割,列族与列之间用“:”分隔,例如:“cf1:c1&cf2:c2”

toJobConfig.isOverride

Boolean

使用BULKLOAD方式导入数据时,是否清空数据,例如:“true”

toJobConfig.delimiter

String

当选取多个列做rowkey时,连接多列的分隔符,例如:“|”

toJobConfig.isRowkeyRedundancy

Boolean

是否将选做Rowkey的数据同时写入HBase的列。

toJobConfig.algorithm

枚举

创建新HBase表时采用的压缩算法,支持SNAPPY和GZ算法,默认为“NONE”

toJobConfig.writeToWAL

Boolean

选择是否开启HBase的预写日志机制(WAL,Write Ahead Log)。

  • 是:开启后如果出现HBase服务器宕机,则可以从WAL中回放执行之前没有完成的操作。
  • 否:关闭时能提升写入性能,但如果HBase服务器宕机可能会造成数据丢失。

toJobConfig.transType

Boolean

  • true:源端数据库中的Short、Int、Long、Float、Double、Decimal类型列的数据,会转换为Byte[]数组(二进制)写入HBase,其他类型的按字符串写入。如果这几种类型中,有合并做rowkey的,就依然当字符串写入。

    该功能作用是:降低存储占用空间,存储更高效;特定场景下rowkey分布更均匀。

  • false:源端数据库中所有类型的数据,都会按照字符串写入HBase。