TL;DR InfluxDB技术技巧 - InfluxDB命名规范、选择无值的标签与写入InfluxDB数据

导航到

在这周的文章中,我们回顾了上周在GitHub、IRC和InfluxDB Google Group上出现的最有趣的InfluxDB时序和TICK-stack相关的问题、解决方案、如何操作和问答。

InfluxDB命名规范

问:我正在尝试向InfluxDB写入一些数据。我的写入似乎成功了,但我无法查询数据;有什么问题吗?

> INSERT energy,time=morning index=2.3    <--- No error

> SELECT * FROM "energy"
name: energy
time                            index      <--- The time tag doesn't appear in the results
----                            -----
2017-02-08T22:16:39.290463266Z  2.3

答:在InfluxDB中,time是一个特殊的关键词。time可以是一个连续查询名称、数据库名称、测量名称、保留策略名称、订阅名称和用户名称。在这些情况下,查询中不需要双引号。 time不能是一个字段键标签键。如果行协议time作为字段键或标签键,InfluxDB会接受写入并返回204,但InfluxDB会静默删除该字段键或标签键及其关联的值。

查看常见问题解答页面以获取更多信息。

选择无标签值的标签

问:如何使用没有值的标签进行SELECT数据?

答:使用空标签值''指定。例如

> SELECT * FROM "vases" WHERE priceless=''
name: vases
-----------
time                   origin   priceless
2016-07-20T18:42:00Z   8

写入数据到InfluxDB

问:我最近开始使用InfluxDB。当我向数据库写入数据时,时间戳的精度重要吗?

答:是的。为了最大限度地提高性能,我们建议在写入InfluxDB数据时使用尽可能粗略的时间戳精度。

例如,我们建议使用以下两个请求中的第二个请求的秒

curl -i -XPOST "https://127.0.0.1:8086/write?db=weather" --data-binary 'temperature,location=1 value=90 1472666050000000000'

curl -i -XPOST "https://127.0.0.1:8086/write?db=weather&precision=s" --data-binary 'temperature,location=1 value=90 1472666050'

接下来是什么

  • 下载 页面上的TICK-stack下载已上线。
  • 云上部署:免费试用InfluxDB Cloud ,提供全托管集群、Kapacitor和Grafana。
  • 本地服务器部署:想在您的服务器上运行InfluxDB集群?免费试用14天的InfluxDB Enterprise ,提供直观的UI用于部署、监控和集群均衡,以及备份和恢复管理。
  • 分享您的故事:300多家公司 分享了他们如何利用InfluxDB取得成功的故事。提交您的评价,即可获得限量版卫衣作为感谢。