Documentation

使用 InfluxQL 探索您的模式

InfluxDB 3 Core 处于公开 Alpha 阶段

InfluxDB 3 Core 处于公开 alpha 阶段,可用于测试和反馈,但不适用于生产环境。产品和本文档均在不断完善中。我们欢迎并鼓励您提供关于 alpha 体验的反馈,并邀请您加入我们的公共频道以获取更新和分享反馈。

Alpha 预期和建议

使用 InfluxQL SHOW 语句返回有关您的数据模式的信息。

InfluxDB v1 到 InfluxDB 3 数据模型

InfluxQL 围绕 InfluxDB v1 数据模型设计,但仍可用于查询 InfluxDB 3 Core 中的数据。当使用 InfluxDB 3 Core InfluxQL 实现时,数据模型在以下方面有所不同

  • InfluxDB v1 的数据库和保留策略组合合并为一个 InfluxDB 3 数据库实体。
  • InfluxDB v1 的measurement(度量)等同于 InfluxDB 3 的 table(表)

示例数据

以下示例使用示例数据集中提供的数据。要运行示例查询并返回相同的结果,请按照为每个示例数据集提供的说明将数据写入您的 InfluxDB 3 Core 数据库。

列出数据库中的 measurements(度量)

使用 SHOW MEASUREMENTS 列出您的 InfluxDB 数据库中的 measurements(度量)。

SHOW MEASUREMENTS

查看示例输出

列出包含特定标签键值对的 measurements(度量)

要仅返回具有特定标签键值对的 measurements(度量),请包含一个 WHERE 子句,其中包含要查询的标签键值对。

SHOW MEASUREMENTS WHERE room = 'Kitchen'

查看示例输出

列出与正则表达式匹配的 measurements(度量)

要仅返回名称与正则表达式匹配的 measurements(度量),请包含一个 WITH 子句,将 MEASUREMENT 与正则表达式进行比较。

SHOW MEASUREMENTS WITH MEASUREMENT =~ /^home/

查看示例输出

列出 measurement(度量)中的 field keys(字段键)

使用 SHOW FIELD KEYS 返回 measurement(度量)中的所有 field keys(字段键)。包含一个 FROM 子句以指定 measurement(度量)。如果未指定 measurement(度量),则查询返回数据库中的所有 field keys(字段键)。

SHOW FIELD KEYS FROM home

查看示例输出

列出 measurement(度量)中的 tag keys(标签键)

使用 SHOW TAG KEYS 返回 measurement(度量)中的所有 tag keys(标签键)。包含一个 FROM 子句以指定 measurement(度量)。如果未指定 measurement(度量),则查询返回数据库中的所有 tag keys(标签键)。

SHOW TAG KEYS FROM home_actions

查看示例输出

列出包含特定标签键值对的 measurements(度量)中的 tag keys(标签键)

要返回包含特定标签键值对的 measurements(度量)的所有 tag keys(标签键),请包含一个 WHERE 子句,其中包含要查询的标签键值对。

SHOW TAG KEYS WHERE room = 'Kitchen'

查看示例输出

列出特定 tag key(标签键)的 tag values(标签值)

使用 SHOW TAG VALUES 返回 measurement(度量)中特定标签的所有值。

  • 包含一个 FROM 子句以指定要查询的一个或多个 measurements(度量)。
  • 使用 WITH 子句将 KEY 与要列出值的 tag keys(标签键)进行比较。
  • 使用 WHERE 子句将搜索限制在特定时间范围内(默认时间范围是最近一天)。
SHOW TAG VALUES FROM weather WITH KEY = location

包含 FROM 子句

我们强烈建议在 SHOW TAG VALUES 语句中包含 FROM 子句,以指定 1-50 个表进行查询。如果没有 FROM 子句,InfluxDB 查询引擎必须从所有表中读取数据,并从每个表中返回唯一的标签值。

根据数据库中表的数量以及每个表中唯一标签值的数量,排除 FROM 子句可能会导致查询性能不佳、查询超时或不必要的资源分配,这可能会影响其他查询。

查看示例输出

列出多个标签的 tag values(标签值)

要返回多个特定 tag keys(标签键)的 tag values(标签值),请在 WITH 子句中使用 IN 运算符将 KEY 与 tag keys(标签键)列表进行比较。

SHOW TAG VALUES FROM home_actions WITH KEY IN ("level", "action")

查看示例输出

列出与正则表达式匹配的标签的 tag values(标签值)

要仅从与正则表达式匹配的 tag keys(标签键)返回 tag values(标签值),请在您的 WITH 子句中使用正则表达式比较运算符将 KEY 与正则表达式进行比较。

SHOW TAG VALUES FROM home, home_actions WITH KEY =~ /oo/

查看示例输出

列出与特定标签键值对关联的 tag values(标签值)

要列出与特定标签键值对关联的标签的 tag values(标签值)

  • 使用 WITH 子句来标识要为其返回值的 tag keys(标签键)。
  • 包含一个 WHERE 子句,用于标识要查询的标签键值对。

以下示例返回 actionlevel 标签的 tag values(标签值),其中 room 标签值为 Kitchen

SHOW TAG VALUES FROM home_actions WITH KEY IN ("action", "level") WHERE room = 'Kitchen'

查看示例输出


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。您可以继续像当前一样使用它,而无需对代码进行任何更改。

阅读更多

InfluxDB 3 开源版现已公开 Alpha 测试

InfluxDB 3 开源版现已可用于 alpha 测试,根据 MIT 或 Apache 2 许可授权。

我们正在发布两个产品作为 alpha 测试的一部分。

InfluxDB 3 Core 是我们的新开源产品。它是一个用于时间序列和事件数据的最新数据引擎。InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看