TDengine 数据源

最近更新时间:2024-12-10 11:52:02

我的收藏

使用限制

仅支持 TAOS-RS 连接方式。
支持3.1.1.0、3.1.1.35版本。
不建议在一个 super_table 中建立过多的 child_table 和 tag, 会显著影响同步速率。

TDengine 离线单表读取节点配置




参数
说明
数据来源
选择当前项目中可用的 TDengine 数据源。
支持选择、或者手动输入需读取的库名称
默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。
当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。
表类型
支持选择普通表或超级表。
表名称
支持选择或输入普通表或超级表的表名称。
子表
表类型选中超级表时展示该项,支持选择一张或多张子表。
说明:
若为该项为空,则代表选择全部子表;
选择多张子表时,来源端默认自动拉取第一张表的字段信息。
筛选条件
根据数据类型填写对应筛选语句,该语句会作为将要同步数据的筛选条件。

TDengine 离线单表写入节点配置




参数
说明
数据去向
选择当前项目中可用的 TDengine 数据源。
支持选择、或者手动输入需读取的库名称
默认将数据源绑定的数据库作为默认库,其他数据库需手动输入库名称。
当数据源网络不联通导致无法直接拉取库信息时,可手动输入数据库名称。在数据集成网络连通的情况下,仍可进行数据同步。
表类型
支持选择普通表或超级表。
表名称
支持选择或输入普通表或超级表的表名称。
子表
表类型选中超级表时展示该项,支持选择一张子表。
批量提交大小
一次性批量提交的记录数大小,该值可以极大减少数据同步系统与 Redis 的网络交互次数,并提升整体吞吐量。如果该值设置过大,会导致数据同步运行进程 OOM 异常。

数据类型转换支持

读取

TDengine 数据类型
内部类型
TINYINT、SMALLINT、INTEGER、BIGINT
LONG
FLOAT、DOUBLE
DOUBLE
TIMESTAMP
DATE
BOOLEAN
BOOL
BINARY、VARBINARY、VARCHAR
BYTES
NCHAR、OTHER
STRING

写入

内部类型
TDengine 数据类型
LONG
TIMESTAMP、TINYINT、SMALLINT、INT、BIGINT
DOUBLE
FLOAT、DOUBLE
STRING
TIMESTAMP、BINARY、NCHAR
BOOL
BOOL
DATE
TIMESTAMP
BYTES
BINARY

TDengine 脚本 Demo

如果您配置离线任务时,使用脚本模式的方式进行配置,您需要在任务脚本中,按照脚本的统一格式要求编写脚本中的 reader 参数writer 参数
{
"job": {
"content": [
{
"reader": {
"name": "tdenginereader",
"parameter": {
"username": "root", // 必填,用户名
"password": "******", //必填,密码
"connection": [
{
"table": [ // 必填,源表集合
"source_table"
],
"jdbcUrl": [
"jdbc:TAOS-RS://ip:port/test?timestampFormat=TIMESTAMP"
]
}
],
"column": [ //列名
"ts",
"current"
],
"where": "ts>=0", //筛选条件
"beginDateTime": "2017-07-14 10:40:00", //数据的开始时间,Job 迁移从 begineDateTime 到 endDateTime 的数据,格式为 yyyy-MM-dd HH:mm:ss
"endDateTime": "2017-08-14 10:40:00" //数据的结束时间,Job 迁移从 begineDateTime 到 endDateTime 的数据,格式为 yyyy-MM-dd HH:mm:ss
}
},
"writer": {
"name": "tdenginewriter",
"parameter": {
"username": "root", // 必填,用户名
"password": "******", //必填,密码
"column": [ //列名
"tbname",
"time"
],
"connection": [
{
"table": [ // 必填,目标表集合
"target_table"
],
"jdbcUrl": "jdbc:TAOS-RS://ip:port/test"
}
],
"batchSize": 100, //批量提交大小
"ignoreTagsUnmatched": true //当table为TDengine中的一张子表,table具有tag值。如果数据的tag值与table的tag值不相等,数据不写入到table中。
}
}
}
],
"setting": {
"errorLimit":{
"record": 0 //脏数据阈值
},
"speed": {
"channel": 1, //并发数量
"byte": -1 //不限制同步速度,正整数表示设置最大传输速度 byte/s
}
}
}
}