离线同步任务支持Redis数据源,支持该数据源的导入(Writer)

说明:当前支持写入redis数据源的spark版本为2.3.2。

使用前提


在使用之前需要在“项目配置-项目中心(新)-数据源管理”完成该类型数据源的登记并测试通过(可在控制台的用户手册中查看具体登记详情信息),以及获取该数据源类型或数据的读权限(配置入口在安全中心-项目下的具体成员或角色)。

Redis作为数据去向


Redis作为数据去向需要配置如下内容:

  • 数据源:选择Redis和已经登记的数据源
  • Key索引:Key索引由自定义输入项和指定作为Key的去向端字段构成
    • 自定义输入项可选填,默认填充"{source_table}:",支持输入常量、参数、分隔符。"{source_table}:"为源表表名,当源端为多表时,取首张表的表名;当源端为FTP、HDFS时,取数据目录;当源端表由正则匹配或通配符匹配指定时,取匹配表达式。":"为{source_table}和作为Key的首个去向端字段之间的分隔符
    • 字段名称支持输入多个字段,字段间以";"分隔,字段名称与字段映射填写的去向表字段名称需保持一致
  • Key分隔符:写入Redis的Key分隔符,默认为"_",如果有多个来源表字段需要拼接时,建议填写该配置项,示例:Key=${source_table}:key1_key2。如果只有一个字段,则忽略该配置项。不可见字符请使用Unicode编码表示
  • 批量条数:一次性批量提交的记录数大小,默认为1000。该值可以极大减少数据同步系统与Redis的网络交互次数,并提升整体吞吐量,但是如果该值设置过大,会导致数据同步运行进程OOM异常,因此请根据环境合理设置
  • 缓存失效时间:Redis Key值缓存失效时间,单位为秒。如果不填该配置项,则该配置项取值默认为0,表示永久有效
  • 写入数据类型:支持string、hash两种类型
  • 写入数据格式:支持json方式写入、分隔符分隔写入两种方式。当写入数据格式为分隔符分隔写入时,需要配置写入分隔符
    • 写入分隔符:写入Redis的Value之间的分隔符。如果源数据有多列作为Value,该值为必填项,例如value1_value2。如果源数据只有1列作为Value,则忽略该配置项。不可见字符请使用Unicode编码表示。
  • 写入规则:支持upsert,当key索引冲突时,如果与原记录写入数据的类型相同就更新记录,如果不同就保持原记录