文档说明

分区最佳实践

在为存储在 InfluxDB 集群中的数据定义自定义分区策略时,请使用以下最佳实践。

根据您通常查询的特定值的标签进行分区

自定义分区主要有利于查询 WHERE 子句中寻找特定标签值的查询。例如,如果您经常查询与特定 ID 相关的数据,则按存储 ID 的标签进行分区可以帮助 InfluxDB 查询引擎更快地识别包含相关数据的分区。

为高基数标签使用标签桶

使用具有许多(10K+)唯一值的标签的不同值进行分区实际上可能会损害查询性能,因为会为每个唯一的标签值创建分区。相反,使用 标签桶 来按高基数标签进行分区。这种方法将标签值分组到“桶”中,并按桶进行分区。

只根据始终具有值的标签进行分区

您应该只根据始终具有值的标签进行分区。如果点没有该标签的值,InfluxDB 无法将其存储在正确的分区中,并且在查询时必须读取所有分区。

避免过度分区

在规划您的分区策略时,请注意数据可能会被“过度分区”——这意味着分区非常细粒度,查询最终必须从对象存储中检索和读取许多分区,这会损害查询性能。

  • 平衡分区时间间隔与每个间隔实际写入的数据量。如果单个间隔不包含大量数据,则最好按更大的时间间隔进行分区。
  • 不要根据您通常在查询工作中不使用的标签进行分区。
  • 不要根据高基数标签的唯一值进行分区。相反,使用标签桶 来按这些标签进行分区。

这个页面有帮助吗?

感谢您的反馈!


Flux 的未来

Flux 正在进入维护模式。您可以在不更改代码的情况下继续使用它。

阅读更多

InfluxDB v3 增强功能和 InfluxDB 集群现在已正式发布

新功能,包括更快的查询性能和管理工具,推动了 InfluxDB v3 产品线的进展。InfluxDB 集群现在已正式发布。

InfluxDB v3 性能和功能

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

了解新的 v3 增强功能


InfluxDB 集群正式发布

InfluxDB 集群现在已正式发布,并为您在自行管理的堆栈中提供了 InfluxDB v3 的功能。

与我们谈论 InfluxDB 集群