TaCustomReader 插件

一、介绍

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

二、实现原理

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

三、功能说明

3.1 配置样例

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

  {      
      "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
    • 描述:描述的是到对端TA数据库的连接信息,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类型,但也存在部分个别类型没有支持的情况,请注意检查 你的类型。

下面列出TA-reader针对TA集群使用的presto类型转换列表:

DataX 内部类型 Presto 数据类型
Long TINYINT, SMALLINT, INTEGER, BIGINT
Double REAL, DOUBLE, DECIMAL
String VARCHAR, CHAR, VARBINARY, JSON
Date DATE, TIME, TIMESTAMP
Boolean BOOLEAN

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

results matching ""

    No results matching ""