TL;DR InfluxDB 技术提示 - SHOW 查询的语法整合
作者:Regan Kuchan / 开发者
2016 年 11 月 24 日
导航到
在这篇文章中,我们回顾了您可能在最新 InfluxDB 版本中错过的一些新功能,包括 SHOW 查询的语法整合。请在下周查看更多关于 InfluxDB 和 TICK-stack 相关问题的有趣内容、解决方法、操作指南以及来自 GitHub、IRC 和 InfluxDB Google Group 的问答。
您可能听说过我们最近发布了 InfluxDB v1.1。除了各种性能和稳定性改进之外,版本 1.1 还提供了几个新功能和语法开发。以下是您可能错过的一些更新
SHOW 查询的语法整合
在 1.1 之前的版本中,SHOW
查询的语法不一致。一些查询,例如 SHOW RETENTION POLICIES
,需要 ON <database_name>
子句,但其他查询,例如 SHOW MEASUREMENTS
,会自动查询 HTTP API 的 db
查询字符串参数或 CLI 的 USE
数据库指定的数据库。
在 1.1+ 版本中,所有 SHOW
查询都支持 ON <database_name>
子句,并且该子句是可选的。如果 SHOW
查询未指定 ON
子句,则必须在 CLI 中使用 USE <database_name>
或在 HTTP API 请求中使用 db
查询字符串参数来指定数据库。有关相关的 SHOW
查询以及有关更新语法的更多信息,请参阅模式探索页面。
一些示例
# HTTP API request with the ON clause
~# curl -G "http://localhost:8086/query?pretty=true" --data-urlencode 'q=SHOW MEASUREMENTS ON "thanksgiving"'
{
"results": [
{
"series": [
{
"name": "measurements",
"columns": [
"name"
],
"values": [
[
"cornucopia"
],
[
"cornbread"
],
[
"pie"
],
[
"sweet_potatoes"
],
[
"turkey"
]
]
}
]
}
]
}
# HTTP API request without the ON clause
~# curl -G "http://localhost:8086/query?db=thanksgiving&pretty=true" --data-urlencode 'q=SHOW MEASUREMENTS'
{
"results": [
{
"series": [
{
"name": "measurements",
"columns": [
"name"
],
"values": [
[
"cornucopia"
],
[
"cornbread"
],
[
"pie"
],
[
"sweet_potatoes"
],
[
"turkey"
]
]
}
]
}
]
}
新函数:SAMPLE()
新的 SAMPLE()
函数 从指定数据返回 N
个点的随机样本。它使用 蓄水池抽样 来生成随机样本,并且支持所有 字段类型。
示例
> SELECT * FROM "pies"
name: pies
time pumpkin
---- -------
2016-11-21T17:00:00Z 34
2016-11-21T18:00:00Z 33
2016-11-21T19:00:00Z 2
2016-11-21T20:00:00Z 0
2016-11-21T21:00:00Z 1
> SELECT SAMPLE("pumpkin",2) FROM "pies"
name: pies
time sample
---- ------
2016-11-21T18:00:00Z 33
2016-11-21T21:00:00Z 1
新函数:CUMULATIVE_SUM()
新的 CUMULATIVE_SUM()
函数 返回连续字段值的累积和。该函数支持 int64 和 float64 字段类型。
示例
> SELECT * FROM "couch_naps"
name: couch_naps
time value
---- -----
2016-11-21T17:00:00Z 2
2016-11-21T17:10:00Z 3
2016-11-21T17:20:00Z 16
> SELECT CUMULATIVE_SUM("value") FROM "couch_naps"
name: couch_naps
time cumulative_sum
---- --------------
2016-11-21T17:00:00Z 2
2016-11-21T17:10:00Z 5
2016-11-21T17:20:00Z 21
下一步是什么
- 下载适用于 TICK-stack 的下载已在我们的“下载”页面上线
- 在云端部署:开始免费试用 InfluxDB Cloud,其中包含完全托管的集群、Kapacitor 和 Grafana。
- 在您的服务器上部署:想在您的服务器上运行 InfluxDB 集群吗?免费试用 14 天的 InfluxDB Enterprise,其中包含用于部署、监控和重新平衡集群以及管理备份和恢复的直观 UI。
- 讲述您的故事:超过 100 家公司分享了他们关于 InfluxDB 如何帮助他们取得成功的故事。提交您的客户评价,即可获得限量版连帽衫作为感谢。