结合iotdb官网V0.13版说明文档,讲讲在实现iotdb-0.13.0与grafana和spark集成过程中的问题和解决方案。

前提

  1. JDK>=1.8
  2. iotdb-0.13.0(截止写博客的日子,最新版为0.12.5,iotdb-0.13.0正在测试,估计接下来的1到2周发布)
    3.Grafana >= 7.0.0
    4.spark 2.4.0-3.2.0
    5.ubuntu16

单独安装配置

1.JDK就不说了,网上搜一下就行
2.iotdb-0.13.0的安装(https://iotdb.apache.org/zh/UserGuide/V0.13.x/QuickStart/QuickStart.html)
在这里插入图片描述
启动服务:
在这里插入图片描述
启动Cli工具:
在这里插入图片描述
在这里插入图片描述
注意:
①设置最大文件打开数为 65535:sudo sysctl -w net.core.somaxconn=65535
②二进制可运行程序只是可执行的客户端,本文中的集成还需要使用源码。
③二进制版解压即可用。
3.grafana 按官网来安装即可(https://grafana.com/grafana/download)
4.spark安装参照林子雨老师的博客:Spark安装和编程实践(Spark2.4.0)(http://dblab.xmu.edu.cn/blog/2501-2/)
5.ubuntu16 按网上流程来即可

iotdb grafana集成

说明:iotdb使用两种方式实现与grafana集成,iotdb-0.12.5使用的是IoTDB-Grafana-Connector,数据源为:simple-json-datasource。
iotdb-0.13.0使用的是grafana-plugin,数据源为apache iotdb

官方安装:https://iotdb.apache.org/zh/UserGuide/V0.13.x/Ecosystem%20Integration/Grafana%20Plugin.html
结合官方,补充几个遇到的问题和解决方法:
1.grafana-plugin 下载
在这里插入图片描述
这个git clone https://github.com/apache/iotdb.git就是从github中获得源码。
2.grafana-plugin 编译
在这里插入图片描述
如果没有安装mvn,会提醒sudo apt-get 安装,这里要注意,通过这种方式安装的maven可能版本对比上,后续会在打包的过程中提醒,所以这里直接去官网下载maven-3.8.4后,自行安装配置的(可直接找度娘)。
3.grafana-plugin 插件安装
在这里插入图片描述
启动命令:hadoop@ubuntu:~$ sudo service grafana-server start
重启命令:hadoop@ubuntu:~$ sudo service grafana-server restart

4.配置 IoTDB REST 服务
这里是0.12.5与0.13.0版本不同的地方,0.12.5里面没有这个rest功能。
在这里插入图片描述
5.使用 Grafana 插件
确保iotdb、grafana服务打开
在这里插入图片描述
这里要注意:在使用firefox打开grafana(http://localhost:3000/)时,可能会提醒firefox版本太低,直接网上搜索更新方法,将其更新即可。
在这里插入图片描述

6.添加 IoTDB 数据源

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在Data source那里选择你刚才add的数据源,在select那里直接进行SQL查询后,图中就能展示数据(本文只设置了2个数据点,所以看上去没有什么东西)
在这里插入图片描述
至此,集成工作完成。

iotdb spark

在这里插入图片描述
①在刚才之前git clone 下载iotdb源码的目录(一般在Home目录下能找到)下找到spark-iotdb-connector,在其目录下执行mvn clean scala:compile compile install,执行结束后,在target目录下生成spark-iotdb-connector-0.13.0-SNAPSHOT.jar
②在/Home/iotdb/jdbc目录下执行 mvn clean package -DskipTests -P get-jar-with-dependencies,在target目录下找到iotdb-jdbc-0.13.0-SNAPSHOT-jar-with-dependencies.jar
③将两个包拷贝到spark目录下jars文件夹,在spark根目录下执行bin/spark-shell --jars spark-iotdb-connector-0.13.0.jar,iotdb-jdbc-0.13.0-jar-with-dependencies.jar
④在spark-shell下对iotdb进行操作:
import org.apache.iotdb.spark.db._
val df = spark.read.format(“org.apache.iotdb.spark.db”).option(“url”,“jdbc:iotdb://127.0.0.1:6667/”).option(“sql”,“select * from root”).load
df.printSchema()
df.show()
至此,集成完成。

*另,*如果过程中需要打包生成iotdb-jdbc-0.13.0.jar:
①删除/Home根目录下隐藏文件.m2/repository/.cache/download-maven-plugin目录(ctrl+h显示隐藏文件)
②在/Home/iotdb跟目录下执行mvn clean install -DskipTests
③可能会出现
在这里插入图片描述
这是github的raw.githubusercontent.com域名解析被污染了,参照https://blog.csdn.net/sscc_learning/article/details/105574354修改hosts即可。
在这里插入图片描述

后续

将在spark平台上对iotdb中数据进行分析处理,可能会设计智能算法、神经网络等。敬请期待。。。。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐