TL;DR InfluxDB 技术提示 - InfluxQL 子查询支持、CLI 使用保留策略支持及更多
作者:Regan Kuchan / 产品, 开发者
                    2017 年 1 月 19 日
                
                
              导航至
在这篇文章中,我们预览了 InfluxDB 1.2 版本中将发布的一些新功能。下周请继续关注更多关于 InfluxDB 和 TICK-stack 相关问题的精彩内容、解决方法、操作指南以及来自 GitHub、IRC 和 InfluxDB Google Group 的问答。
InfluxQL 子查询支持
从 1.2 版本开始,InfluxQL 的 SELECT 语句 支持子查询。子查询是嵌套在另一个查询的 FROM 子句 中的查询。您可以使用子查询将一个查询应用为外层查询的条件。
以下带子查询的查询计算了狗和猫数量之间的平均差值
> SELECT MEAN("difference") FROM (SELECT "dogs" - "cats" AS "difference" FROM "pet_daycare") name: pet_daycare time mean ---- ---- 1970-01-01T00:00:00Z 9
InfluxDB 首先执行子查询,计算 pet_daycare measurement 中 dogs 和 cats 字段 之间的差值。接下来,InfluxDB 计算这些差值的平均值。
请注意,在以前版本的 InfluxDB 中,该计算需要您执行 两个单独的查询。
CLI 使用保留策略支持
在以前版本的 InfluxDB 命令行界面 (CLI) 中,查询非 DEFAULT 保留策略 的唯一方法是在 FROM 子句中完全限定 measurement 名称。从 1.2 版本开始,CLI 支持在 USE 命令中使用以下语法指定备用保留策略:USE <database_name>.<retention_policy_name>。一旦您使用 USE 命令输入备用保留策略,就无需在每个 FROM 子句中包含该保留策略!
以下示例告诉 CLI 使用 life 数据库和非 DEFAULT lemons 保留策略
> USE "life"."lemons" Using database life Using retention policy lemons > SELECT * FROM "glasses" LIMIT 1 name: glasses time lemonade peach_lemonade raspberry_lemonade ---- -------- -------------- ------------------ 2017-01-17T04:41:21.874459122Z 1 8 5
InfluxQL 修复 SAMPLE(*) 问题
在以前版本的 InfluxDB 中,SAMPLE(*,<N>) 忽略了具有 字符串值 的 字段。该行为已在 1.2 版本中修复;现在 SAMPLE(*,<N>) 为 measurement 中的每个字段返回 N 个点的随机样本
> SELECT SAMPLE(*,2) FROM "all_kinds" name: all_kinds time sample_bool sample_i_feel_heard sample_num ---- ----------- ------------------- ---------- 2017-01-17T05:17:34.843212275Z true yes 456 2017-01-17T05:18:14.298348463Z false me too! 4
下一步是什么
- 下载 TICK-stack 可以在我们的“下载”页面上找到。
- 云端部署:开始免费试用 InfluxDB Cloud ,它具有完全托管的集群、Kapacitor 和 Grafana。
- 在您的服务器上部署:想在您的服务器上运行 InfluxDB 集群?免费试用 14 天 InfluxDB Enterprise ,它具有直观的 UI,用于部署、监控和重新平衡集群,以及管理备份和还原。
- 讲述您的故事: 超过 300 家公司 分享了 InfluxDB 如何帮助他们取得成功的故事。提交您的客户评价,即可获得限量版连帽衫作为感谢。