【技术干货】代码示例:使用 Apache Spark 连接 TDengine
小 T 导读:想用 Spark 对接 TDengine?保姆级教程来了。
0、前言
TDengine 是由涛思数据开发并开源的一款高性能、分布式、支持 SQL 的时序数据库(Time-Series Database)。
在上一篇文章中,我们示范了如何使用 Apache Flink 连接 TDengine,使用 Apache Spark 的小伙伴们已经迫不及待地等待续集了。
相对于 Flink,Spark 对接起来就简单多了。
1、技术实现
Spark 本身封装了 JDBC 的方法,所以我们直接使用 Spark 官网的示例代码就可以完成对接了。
2、示例代码
3、简单测试 JNI 读写
1) 环境准备:
a) Spark 安装 &启动:
wget https://www.apache.org/dyn/closer.lua/spark/spark-3.2.1/spark-3.2.1-bin-hadoop3.2.tgz
tar zxf spark-3.2.1-bin-hadoop3.2.tgz -C /usr/local
b) TDengine Database 环境准备:
创建原始数据: create database tt;create table tt.meters (ts TIMESTAMP,vol INT) ;insert into meters values(now,220);
创建目标数据库表: create database test;create table test.meters (ts TIMESTAMP,vol INT) ;
2) 打包编译:
源码位置: https://github.com/liuyq-617/TD-Spark
mvn clean package
3) 程序启动:
spark-submit –master local –name TDenginetest –class com.taosdata.java.SparkTest /testSpark-1.0-SNAPSHOT-dist.jar
读取数据 读取的数据直接打印在控制台
写入数据 select * from test.meters; 可以查询到刚插入的数据
4、小结
Spark 本身支持 JDBC 的方式来进行读写,我们无需做更多适配,数据接入可以做到无缝衔接。
想了解更多TDengine Database 的具体细节,欢迎大家在GitHub上查看相关源代码。
版权声明: 本文为 InfoQ 作者【TDengine】的原创文章。
原文链接:【http://xie.infoq.cn/article/4e6e06092eb946922afdb70ab】。文章转载请联系作者。
评论