Tick技术栈之InfluxDB

Tick简介

InfluxData公司研发的四款监控开源产品,包括Telegraf、InfluxDB、Chronograf、Kapacitor。其中InfluxDB使用最广泛,是开源的时序数据库,一个比较常见的应用场景为日志存储。Kapacitor提供了基于influxdb的监控报警方案,支持多种数据聚合,选择,变换,预测方法。Chronograf用于对数据进行展示,可以使用功能更强大的Grafana替代。

InfluxDB简介

一种比较流行的时序数据库,使用Golang语言开发,社区活跃度较高,支持多种数据类型,包括Numeric和Strings。提供http接口调用,同时支持sql操作。支持grafana展示。

InfluxDB安装

下载源代码

git clone https://github.com/influxdata/influxdb.git

安装依赖包

go get ./...

编译

go build ./...

安装

go install ./...

启动

./nfluxd & > /tmp/influxd.log 2>&1

InfluxDB使用

sql操作

启动客户端

influx -precision rfc3339

创建数据库

create database mydb

展示数据库列表

show databases

使用指定数据库

use mydb

插入一条记录

数据格式:<measurement>[,<tag-key>=<tag-value>...] <field-key>=<field-value>[,<field2-key>=<field2-value>...] [unix-nano-timestamp]

INSERT cpu,host=serverA,region=us_west value=0.64

 查询数据

SELECT "host", "region", "value" FROM "cpu" 

http操作

写入一条记录
curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'

查询数据

curl -G 'http://localhost:8086/query?pretty=true' --data-urlencode "db=mydb" --data-urlencode "q=SELECT \"value\" FROM \"cpu_load_short\" WHERE \"region\"='us-west';SELECT count(\"value\") FROM \"cpu_load_short\" WHERE \"region\"='us-west'"

参考文档

kapacitor项目git地址:https://github.com/influxdata/kapacitor

kapacitor使用文档:https://docs.influxdata.com/kapacitor/v1.4/introduction/getting_started/

influxdb项目git地址:https://github.com/influxdata/influxdb

influxdb使用文档:https://docs.influxdata.com/influxdb/v1.4/



 

猜你喜欢

转载自blog.csdn.net/xal0610/article/details/79502576