DataX自定义transformer编写指南
用于数据加密
- jave开发环境
- maven
- Python 2.*
概述
DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间高效的数据同步功能。借助于DataX可以实现将数据库中的数据进行脱敏操作并以任意支持类型存储于数据库或者数据平台中。
DataX作为一个框架,本身提供了writer和reader插件的自定义方法,参考已有的方法即可支撑更多类型的数据读取和存储。然而想要在数据迁移过程中实现数据脱敏,则更适合去继承设计实现一个特定的 transformer,让数据在传输过程中自然地完成数据转换。
DataX本身提供了几个transformer用于数据处理,仅需修改 job 配置文件,就能实现简单的字符串修齐和替换处理。但对于更多类型的数据实现更为复杂的加密却无能为力。这里以自身经历为例,记录一下我的transformer开发过程。
过程概述
1.从 Github 上 clone DataX 项目源码到本地,在根目录下找到 transformer 文件夹;
2.在 com.alibaba.datax.transport.transformer 路径下找到transfo