Grafana如何连接DolphinDB?

Grafana是一个开源的基于web的数据展示工具,非常擅长做时序数据的动态展示。DolphinDB作为新一代的高性能时序数据库,不仅提供了Grafana的数据接口,还提供了Grafana的dolphindb-datasource插件。只要在Grafana中安装dolphindb-datasource,就可以通过图表的方式把DolphinDB Table的数据展示在Web上,特别适用于物联网中的实时性能监控、阈值预警和实时数据分析。

本教程将会介绍Grafana如何连接DolphinDB,把DolphinDB的数据展示在Web上。

1.安装并启动DolphinDB

用户可以直接到官网下载DolphinDB(0.8及以上版本)试用版。

2.安装并启动Grafana

用户可以直接到Grafana官网下载安装Grafana,并根据官方文档启动Grafana。本教程以Grafana5.2.4为例,使用Grafana的默认配置。

3.安装dolphindb-datasource插件

3.1 从dolphindb/grafana-datasource下载插件源码.

3.2 把源码解压到Grafana的安装目录grafana-5.2.4/data/plugins下,并把文件夹名称改为dolphindb-datasource。注意,data目录在启动Grafana会自动生成。

3.3 重新启动Grafana。在浏览器地址栏中输入http://localhost:3000访问Grafana。Grafana初始用户名和密码都是admin。登录之后,初始界面如下:

4.添加dolphindb datasource

点击“Add data source”进入添加datasource界面。

Name:datasource名称,本教程使用“test”。

Type:选择dolphindb

URL:输入DolphinDB datanode的地址,示例:http://localhost:8848

其他选项使用默认配置。点击“Save & Test”,DolphinDB datasource添加成功。

5.数据展示

下面通过一个例子来介绍如何在Grafana中展示DolphinDB数据。

首先,在DolphinDB中创建内存表testTable,每隔1秒向表里写入数据,持续200秒。

n=100000
t1=streamTable(n:0, `value`time,[DOUBLE,TIMESTAMP])
share t1 as testTable
t1=NULL
def writeData(){
	for (i in 0:200) {
		data = table(rand(35..50,1) as value,now()  as time)
		testTable.append!(data)
		sleep(1000)
	}
}
submitJob("jobId20180817001","writeDataToStreamingTable",writeData)

在Grafana中点击左侧第二个按钮,进入如下界面:

点击“New dashboard”,进入添加dashboard界面。

选择“Graph”,点击“Panel Title”,选择“Edit”。

在Metrics Tab中,Data Source选择“test”,Query中填写以下SQL语句来读取前5分钟的数据,并点击右上角保存按钮。

select gmtime(time) as time_sec,value as serie1 from testTable where time> now()-5*60*1000

保存后,点击右上角按钮,选择刷新频率。本例每2秒刷新一次。

更多Grafana的设置请参考Grafana官网

欢迎访问官网并下载 DolphinDB database 试用版

编辑于 2019-11-08

文章被以下专栏收录

    分布式时序数据库DolphinDB可用于存储、处理和分析设备传感器产生的多维度高频率的历史数据和实时数据。灵活的部署方式和分布式文件系统降低了数据的存储成本和带宽成本,具有极高的能效比。本专栏将会详细讲解DolphinDB在物联网中的应用。