# TDengine Reader
TDengineReader 插件用于从涛思公司的 [TDengine](https://www.taosdata.com/cn/) 读取数据。
## 前置条件
考虑到性能问题,该插件使用了 TDengine 的 JDBC-JNI 驱动, 该驱动直接调用客户端 API(libtaos.so 或 taos.dll)将写入和查询请求发送到 taosd 实例。因此在使用之前需要配置好动态库链接文件。
首先将 plugin/reader/tdenginereader/libs/libtaos.so.2.0.16.0 拷贝到 /usr/lib64 目录,然后执行下面的命令创建软链接
`shell
ln -sf /usr/lib64/libtaos.so.2.0.16.0 /usr/lib64/libtaos.so.1
ln -sf /usr/lib64/libtaos.so.1 /usr/lib64/libtaos.so
`
## 示例
TDengine 数据自带了一个演示数据库 [taosdemo](https://www.taosdata.com/cn/getting-started/) , 我们从演示数据库读取部分数据并打印到终端
以下是配置文件
=== "job/tdengine2stream.json"
`json --8<-- "jobs/tdenginereader.json" `
将上述配置文件保存为 job/tdengine2stream.json
### 执行采集命令
执行以下命令进行数据采集
`shell
bin/addax.sh job/tdengine2stream.json
`
命令输出类似如下:
`
--8<-- "output/tdenginereader.txt"
`
## 参数说明
### splitInterval
用来划分 task。 例如,20d 代表按照每 20 天的数据划分为 1 个 task。 可以配置的时间
### 使用 JDBC-RESTful 接口
如果不想依赖本地库,或者没有权限,则可以使用 JDBC-RESTful 接口来写入表,相比 JDBC-JNI 而言,配置区别是:
driverClass 指定为 com.taosdata.jdbc.rs.RestfulDriver
jdbcUrl 以 jdbc:TAOS-RS:// 开头;
使用 6041 作为连接端口
所以上述配置中的 connection 应该修改为如下:
- "connection": [
- {
- "querySql": [
"select * from test.meters where ts <'2017-07-14 10:40:02' and loc='beijing' limit 100"
], "jdbcUrl": [
], "driver": "com.taosdata.jdbc.rs.RestfulDriver"
}
]
}
## 类型转换
## 当前支持版本
TDengine 2.0.16
## 注意事项
TDengine JDBC-JNI 驱动和动态库版本要求一一匹配,因此如果你的数据版本并不是 2.0.16,则需要同时替换动态库和插件目录中的JDBC驱动