跳到主要内容

TaCustomReader 插件

最近更新 2026/10/03

一、介绍​

TaCustomReader 插件实现了 DataX 从 AE 读取数据。在底层实现上,TaCustomReader 通过 JDBC 连接远程 AE 数据库,并执行相应的 sql 语句将数据从 AE 库中 SELECT 出来。

二、实现原理​

简而言之,TaCustomReader 通过 JDBC 连接器连接到远程的 AE 数据库,并根据用户配置的信息生成查询 SELECT SQL 语句,然后发送到 AE 集群,并将该 SQL 执行返回结果使用 DataX 自定义的数据类型拼装为抽象的数据集,并传递给下游 Writer 处理。

三、功能说明​

3.1  配置样例​

配置一个从 AE 集群读取数据打印在控制台的作业:

{
"job": {
"setting": {
"speed": {
"channel": 1
}
},
"content": [
{
"reader": {
"name": "ta-custom-reader",
"parameter": {
"querySql": "select * from v_event_1 where \"$part_date\" = '2020-01-01'"
}
},
"writer": {
"name": "streamwriter",
"parameter": {
"print": true,
"encoding": "UTF-8"
}
}
}
]
}
}

3.2  参数说明​

  • server

    • 描述:描述的是到对端 AE 数据库的连接信息,SERVER:PORT  形式。
    • 必选:否
    • 默认值:同步集群配置
  • querySql

    • 描述:在有些业务场景下,用户可以通过该配置项来自定义筛选 SQL。当用户配置了这一项 之后,直接使用这个配置项的内容对数据进行筛选,例如需要进行多表 join 后同步数据,使用select a,b from table_a join table_b on table_a.id = table_b.id
    • 必选:是
    • 默认值:无

3.3  类型转换​

目前 TaCustomReader 支持大部分 Presto 类型,但也存在部分个别类型没有支持的情况,请注意检查 你的类型。

下面列出 TaCustomReader 针对 AE 集群使用的 presto 类型转换列表:

DataX  内部类型Presto  数据类型
LongTINYINT, SMALLINT, INTEGER, BIGINT
DoubleREAL, DOUBLE, DECIMAL
StringVARCHAR, CHAR, VARBINARY, JSON
DateDATE, TIME, TIMESTAMP
BooleanBOOLEAN

请注意: 除上述罗列字段类型外,其他类型均不支持

这篇文档对你有帮助吗?