HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式。

 
 

在InfluxDB学习的上一篇文章:InfluxDB学习之InfluxDB的基本操作 中,我们提到 InfluxDB操作有三种方式,其中一种是HTTP API的方式。

HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式。更多InfluxDB详细教程请看:InfluxDB系列学习教程目录

InfluxDB技术交流群:580487672(点击加入)

一、说明

为了方便,本文主要使用curl来发起http请求,示例当中也是使用curl这个工具来模拟HTTP 请求。

在实际使用中,可以将请求写入代码中,通过其他编程语言来模拟HTTP请求。

二、InfluxDB通过HTTP API操作数据库

1)建立数据库

  1. curl -POST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"

执行这个语句后,会在本地建立一个名为mydb的数据库。

2)删除数据库

  1. curl -POST http://localhost:8086/query --data-urlencode "q=DROP DATABASE mydb"

其实使用HTTP API就是向 InfluxDB 接口发送相应的POST请求。

将语句通过POST方式发送到服务器。

三、InfluxDB通过HTTP API添加数据

InfluxDB通过HTTP API添加数据主要使用如下格式:

  1. curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'

说明:db=mydb是指使用mydb这个数据库。

--data-binary后面是需插入数据。

cpu_load_short是表名(measurement),tag字段是host和region,值分别为:server01和us-west。

field key字段是value,值为0.64。

时间戳(timestamp)指定为1434055562000000000。

这样,就向mydb数据库的cpu_load_short表中插入了一条数据。

其中,db参数必须指定一个数据库中已经存在的数据库名,数据体的格式遵从InfluxDB规定格式,首先是表名,后面是tags,然后是field,最后是时间戳。tags、field和时间戳三者之间以空格相分隔。

四、InfluxDB通过HTTP API添加多条数据

InfluxDB通过HTTP API添加多条数据与添加单条数据相似,示例如下:

  1. curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server02 value=0.67
  2. cpu_load_short,host=server02,region=us-west value=0.55 1422568543702900257
  3. cpu_load_short,direction=in,host=server01,region=us-west value=2.0 1422568543702900257'

这条语句向数据库mydb的表cpu_load_short中插入了三条数据。

第一条指定tag为host,值为server02,第二条指定tag为host和region,值分别为server02和us-west,第三条指定tag为direction,host,region,值分别为:in,server01,us-west。

五、InfluxDB 的HTTP API响应

在使用HTTP API时,InfluxDB的响应主要有以下几个:

1)2xx:204代表no content,200代表InfluxDB可以接收请求但是没有完成请求。一般会在body体中带有出错信息。

2)4xx:InfluxDB不能解析请求。

3)5xx:系统出现错误。

好了,有关InfluxDB的HTTP API写入操作就先为大家介绍到这里,下一篇将会介绍下如何使用 InfluxDB的HTTP API执行查询操作。

更多InfluxDB详细教程请看:InfluxDB系列学习教程目录

InfluxDB技术交流群:580487672(点击加入)

InfluxDB学习之InfluxDB的HTTP API写入操作的更多相关文章

  1. InfluxDB学习之InfluxDB的HTTP API查询操作

    在 InfluxDB学习 的上一篇文章:InfluxDB学习之InfluxDB的HTTP API写入操作 中,我们介绍了使用InfluxDB的HTTP API进行数据写入操作的过程,本文我们再来介绍下 ...

  2. InfluxDB学习之InfluxDB的安装和简介

    最近用到了 InfluxDB,在此记录下学习过程,同时也希望能够帮助到其他学习的同学. 本文主要介绍InfluxDB的功能特点以及influxDB的安装过程.更多InfluxDB详细教程请看:Infl ...

  3. InfluxDB学习之InfluxDB的基本操作| Linux大学

    来源地址:https://www.linuxdaxue.com/influxdb-study-series-manual.html 本文属于<InfluxDB系列教程>文章系列,该系列共包 ...

  4. InfluxDB学习之InfluxDB连续查询(Continuous Queries)

    在上一篇:InfluxDB学习之InfluxDB数据保留策略(Retention Policies) 中,我们介绍了 InfluxDB的数据保留策略,数据超过保存策略里指定的时间之后,就会被删除. 但 ...

  5. InfluxDB学习之InfluxDB的基本操作

    InfluxDB提供类SQL语法,如果熟悉SQL的话会非常容易上手.本文就为大家介绍一下InfluxDB的基本操作.     InfluxDB提供类SQL语法,如果熟悉SQL的话会非常容易上手. 本文 ...

  6. InfluxDB学习之InfluxDB数据保留策略(Retention Policies)

    InfluxDB每秒可以处理成千上万条数据,要将这些数据全部保存下来会占用大量的存储空间,有时我们可能并不需要将所有历史数据进行存储,因此,InfluxDB推出了数据保留策略(Retention Po ...

  7. InfluxDB学习之InfluxDB的基本概念

    InfluxDB与传统数据库在概念上有许多的不同,本文就给大家介绍下InfluxDB中的一些基本概念,更多InfluxDB详细教程请看:InfluxDB系列学习教程目录 InfluxDB技术交流群:5 ...

  8. InfluxDB学习系列教程,InfluxDB入门必备教程

    nfluxDB是一个当下比较流行的时序数据库,InfluxDB使用 Go 语言编写,无需外部依赖,安装配置非常方便,适合构建大型分布式系统的监控系统. 本文是一系列InfluxDB学习教程的目录,现主 ...

  9. Elasticsearch学习笔记-Delete By Query API

    记录关于Elasticsearch的文档删除API的学习 首先官网上Document APIs介绍了 Delete API 和Delete By Query API. Delete API可以通过指定 ...

随机推荐

  1. 更新日志 - fir.im「高级统计」功能上线

    距离 2016 年到来只剩 10 个日夜,fir.im 也准备了一些新鲜的东西,比如「高级统计」功能和「跳转应用商店」功能,帮助你更好地管理.优化应用,欢迎大家试用反馈:) 新增高级统计功能 这次更新 ...

  2. 每天一个linux命令(36):diff 命令

    diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的 ...

  3. Highcharts结合PhantomJS在服务端生成高质量的图表图片

    项目背景 最近忙着给部门开发一套交互式的报表系统,来替换原有的静态报表系统. 老系统是基于dotnetCHARTING开发的,dotnetCHARTING的优势是图表类型丰富,接口调用简单,使用时只需 ...

  4. localStorage使用

    localStorage使用 需要注意的是,HTML5本地存储只能存字符串,任何格式存储的时候都会被自动转为字符串,所以读取的时候,需要自己进行类型的转换. 支持的情况如上图,IE在8.0的时候就支持 ...

  5. urldecode解码方法

    输入为带有urldecode转码文本,输出正常文本. //20130625 by zhangyl private string ConvertToString(string input) { inpu ...

  6. ObjectOutputStream和ObjectInputStream

    官方解释: ObjectOutputStream 将 Java 对象的基本数据类型和图形写入 OutputStream.可以使用 ObjectInputStream 读取(重构)对象.通过使用流中的文 ...

  7. 【博客美化】04.自定义地址栏logo

    博客园美化相关文章目录: [博客美化]01.推荐和反对炫酷样式 [博客美化]02.公告栏显示个性化时间 [博客美化]03.分享按钮 [博客美化]04.自定义地址栏logo [博客美化]05.添加Git ...

  8. Java多线程系列--“基础篇”03之 Thread中start()和run()的区别

    概要 Thread类包含start()和run()方法,它们的区别是什么?本章将对此作出解答.本章内容包括:start() 和 run()的区别说明start() 和 run()的区别示例start( ...

  9. PHP的学习--可变函数

    PHP 支持可变函数的概念.这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它.可变函数可以用来实现包括回调函数,函数表在内的一些用途. 可变函数不能用于例如 ech ...

  10. Zepto中文API

    原文地址:http://zeptojs.com/ 译文地址:http://www.html-5.cn/Manual/Zepto/ Zepto是一个轻量级的针对现代高级浏览器的JavaScript库,  ...