文档

定义自定义分区

使用 influxctl CLI 在创建数据库或表时定义自定义分区策略。默认情况下,InfluxDB 集群通过天来分区数据。

数据库或表的分区策略由一个 分区模板 决定,该模板定义了 分区键 的命名模式。分区键唯一标识每个分区。当分区模板应用于数据库时,它成为该数据库中所有表的默认模板,但在创建表时可以覆盖。

分区模板只能在创建时应用

您只能在创建数据库或表时应用分区模板。您不能更新现有资源的分区模板。

使用以下命令标志来识别 分区模板部分

  • --template-tag:用于分区模板的 InfluxDB 标签
  • --template-tag-bucket:一个 InfluxDB 标签 和将标签值分组到“桶”中的数量。提供标签键和将标签值分组到桶中的数量,通过逗号分隔:tagKey,N
  • --template-timeformat:指定分区模板中时间格式的 Rust strftime 日期和时间字符串,并确定分区的时间间隔。

分区模板可以包含最多7个总标签和标签桶部分,以及1个时间部分。

查看分区模板部分限制

使用自定义分区时始终提供时间格式

当使用任何 influxctl --template-* 标志为您数据库或表定义自定义分区模板时,始终包含 --template-timeformat 标志以及用于分区模板的时间格式。否则,InfluxDB 将省略分区模板中的时间,并且不会压缩分区。

使用自定义分区模板创建数据库

以下示例创建一个新的 example-db 数据库,并应用一个通过两个标签(roomsensor-type)的唯一值、customerID 标签的桶值以及使用时间格式 %Y-%m-%d 的每日值进行分区的分区模板。

influxctl database create \
  --template-tag room \
  --template-tag sensor-type \
  --template-tag-bucket customerID,500 \
  --template-timeformat '%Y-%m-%d' \
  example-db

使用自定义分区模板创建表

以下示例在指定的数据库中创建一个新的 example-table 表,并应用一个通过两个标签(roomsensor-type)的唯一值、customerID 标签的桶值以及使用时间格式 %Y-%m 的月值进行分区的分区模板。

influxctl table create \
  --template-tag room \
  --template-tag sensor-type \
  --template-tag-bucket customerID,500 \
  --template-timeformat '%Y-%m' \
  
DATABASE_NAME
\
example-table

在您的命令中替换以下内容

  • DATABASE_NAME:您的 InfluxDB 集群 数据库

示例分区模板

以下是一个具有 2024-01-01T00:00:00Z 时间戳的 行协议 示例

prod,line=A,station=weld1 temp=81.9,qty=36i 1704067200000000000
通过唯一标签值进行分区
描述标签部分时间部分结果分区键
按日(默认)%Y-%m-%d2024-01-01
按月%Y-%m2024-01
按年%Y2024
单个标签,按日%Y-%m-%dA | 2024-01-01
单个标签,按月%Y-%mA | 2024-01
单个标签,按年%YA | 2024
多个标签,按日linestation%Y-%m-%dA | weld1 | 2024-01-01
多个标签,按月linestation%Y-%mA | weld1 | 2024-01
多个标签,按年linestation%YA | weld1 | 2024
通过标签桶进行分区
描述标签部分标签桶部分时间部分结果分区键
唯一标签,标签桶,按日station,100%Y-%m-%dA | 3 | 2024-01-01
唯一标签,标签桶,按月station,500%Y-%mA | 303 | 2024-01

这个页面有用吗?

感谢您的反馈!


Flux 的未来

Flux 将进入维护模式。您可以继续像现在这样使用它,无需对代码进行任何更改。

阅读更多

InfluxDB v3 增强功能和 InfluxDB 集群版现已全面上市

新功能包括更快的查询性能和管理工具,推进了 InfluxDB v3 产品线。InfluxDB 集群版现已全面上市。

InfluxDB v3 性能和特性

InfluxDB v3 产品线在查询性能方面取得了显著提升,并提供了新的管理工具。这些增强包括一个用于监控 InfluxDB 集群健康的操作仪表板,InfluxDB Cloud Dedicated 中的单点登录(SSO)支持,以及用于令牌和数据库的新管理 API。

了解新的 v3 增强功能


InfluxDB 集群版全面上市

InfluxDB 集群版现已全面上市,并为您在自行管理的堆栈中提供了 InfluxDB v3 的功能。

与我们讨论 InfluxDB 集群版