使用 InfluxDB 进行基础设施监控 | 现场演示
基数
在数据库上下文中,基数是存储在数据库中的唯一数据集的数量。具体而言,它指的是表列或数据库等效项中可能的唯一值的总数。
什么是基数?
在数据库上下文中,基数是存储在数据库中的唯一数据集的数量。具体而言,它指的是表列或数据库等效项中可能的唯一值的总数。
对于许多时间序列数据库,如果选择具有无界值字段作为标签,基数可能会成为问题。这包括用户 ID、电子邮件地址、IP 地址、跟踪跨度 ID、容器 ID 等数据。由于某些时间序列数据库索引数据的方式,高基数可能会导致大规模性能问题。
InfluxDB Cloud powered by IOx 中的基数
随着 InfluxDB 基于列存储引擎的发布,InfluxDB 可以处理包含无界基数的时间序列数据和工作负载。这有效地消除了基数问题,并促进了需要高基数数据的可观测性和分布式跟踪等用例。
InfluxDB TSM 的基数
InfluxDB 用户通常通过以下两种方式之一发现他们存在基数问题
- InfluxDB Cloud 在他们达到基数限制时通知他们。
- 他们注意到 InfluxDB Cloud 或 InfluxDB OSS 2.0 上的读取速度(有时写入速度)变得越来越慢。
InfluxDB 使用您写入数据库的度量和标签来创建索引,以加快读取速度。但是,当创建的索引过多时,写入和读取都可能开始减速。这需要在标记某些工作负载的数据时进行额外的规划,以避免可能影响性能的与基数相关的问题。
InfluxDB 模板
对于那些使用 InfluxDB 的时间序列合并树 (TSM) 引擎的用户,以下模板可以帮助识别和监控数据基数。