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