DataX的简单介绍,可以参考Alibaba DataX调研使用 ,这里不做详细介绍。在同步数据时,如果数据源是RDBMS,存在配置参数splitPk。那么该参数是如何起作用的,如何配置?

配置方式

  splitPk的配置方式,主要参考(DataX文档)[https://github.com/alibaba/DataX]。

  1. 描述:
      MysqlReader进行数据抽取时,如果指定splitPk,表示用户希望使用splitPk代表的字段进行数据分片,DataX因此会启动并发任务进行数据同步,这样可以大大提供数据同步的效能。
      推荐splitPk用户使用表主键,因为表主键通常情况下比较均匀,因此切分出来的分片也不容易出现数据热点。
  2. 目前splitPk仅支持整形数据切分,不支持浮点、字符串、日期等其他类型。如果用户指定其他非支持类型,MysqlReader将报错!

作用原理

优点缺点

  由于DataX是一款通用的插件式异构数据同步工具,因此在处理RDBMS时组装的SQL具有通用性,没有针对个别数据库做处理。因此这就无可避免的造成了解决方案的非最优化性,一些数据库可能会存在更优化的处理方式。

  DataX的spliPk配置,假设切分字段为比较均匀的情况,如果切分字段恰好分布不均匀,那么DataX同步数据存在问题。