码迷,mamicode.com
首页 > 数据库 > 详细

InfluxDB学习之InfluxDB的基本操作

时间:2016-12-09 08:52:38      阅读:672      评论:0      收藏:0      [点我收藏+]

标签:explorer   管理工具   series   数据库   median   

InfluxDB 是一个开源分布式时序、事件和指标数据库。

使用 Go 语言编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。


它有三大特性:

1. Time Series (时间序列):你可以使用与时间有关的相关函数(如最大,最小,求和等)

2. Metrics(度量):你可以实时对大量数据进行计算

3. Eevents(事件):它支持任意的事件数据

特点

schemaless(无结构),可以是任意数量的列

Scalable

min, max, sum, count, mean, median 一系列函数,方便统计

Native HTTP API, 内置http支持,使用http读写

Powerful Query Language 类似sql

Built-in Explorer 自带管理工具


安装好influxdb后通过终端登录到数据库,http api over 8086,页面为8083

[root@mycat ~]# inf

influx          influx_inspect  influx_tsm      infocmp         infotocap

influxd         influx_stress   info            infokey     


通过influx登陆终端

[root@mycat ~]# influx

Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.

Connected to http://localhost:8086 version 0.13.0

InfluxDB shell version: 0.13.0

1、Creating a database,注意关键词的大小写

> CREATE DATABASE mydb;

> SHOW DATABASES;

name: databases

---------------

name

telegraf

_internal

mytab

mydb

2、切换库,有的关键字也没那么规范

> use mydb

Using database mydb

> USE mydb

Using database mydb

3、Writing and exploring data,写入一条数据需要基础格式

1、a short primer on the datastore#存放数据的实体对象,相当在关系型数据的表名

数据在时序数据库(influxDB)是有组织的时间序列,包含一个 测量值(即在RMDB中的字段),在INFLUXDB中如cpu_load或者temperature,


Points are written to InfluxDB using the Line Protocol, which follows the following format:

<measurement>[,<tag-key>=<tag-value>...] <field-key>=<field-value>[,<field2-key>=<field2-value>...] [unix-nano-timestamp]


The following lines are all examples of points that can be written to InfluxDB:


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

payment,device=mobile,product=Notepad,method=credit billed=33,licenses=3i 1434067467100293230

stock,symbol=AAPL bid=127.46,ask=127.48

temperature,machine=unit42,type=assembly external=25,internal=37 1434067467000000000

这3条例子具体写法:


InfluxDB中没有显式的新建表的语句,只能通过insert数据的方式来建立新表。如下所示:

insert disk_free,hostname=server01 value=442221834240i 1435362189575692182

其中 disk_free 就是表名,hostname是索引,value=xx是记录值,记录值可以有多个,最后是指定的时间

> insert cpu,host=serverA,region=us_west value=0.64

> select host,region ,value from cpu ##官方写法是把这些测量值加引号

name: cpu

---------

time host region value

1481203149917071248 serverA us_west 0.64


insert disk_free,hostname=server01 value=442221834240i 1435362189575692182

在这条语句中,disk_free是表名,hostname=server01是tag,属于索引,value=xx是field,这个可以随意写,随意定义。


A point with the measurement name of cpu and tags host and region has now been written to the database, with the measured value of 0.64.


另一种类型的数据存储,在相同的测量两个字段:

相同的测量值包含两个字段类型的数据

INSERT temperature,machine=unit42,type=assembly external=25,internal=37

> select * from temperature

name: temperature

-----------------

time external internal machine type

1481203797530630901 25 37 unit42 assembly

删除一个度量值

delete from cpu

show 支持的方法

 CONTINUOUS, DATABASES, DIAGNOSTICS, FIELD, GRANTS, MEASUREMENTS, QUERIES, 

RETENTION, SERIES, SHARD, SHARDS, STATS, SUBSCRIPTIONS, TAG, USERS


SHOW TAG KEYS FROM "temperature" 显示度量值的标签===show create table aa

influxdb支持正则



series操作

series表示这个表里面的数据,可以在图表上画成几条线,series主要通过tags排列组合算出来

show series from mem


本文出自 “DBSpace” 博客,请务必保留此出处http://dbspace.blog.51cto.com/6873717/1880952

InfluxDB学习之InfluxDB的基本操作

标签:explorer   管理工具   series   数据库   median   

原文地址:http://dbspace.blog.51cto.com/6873717/1880952

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!