目录
1. influxdb max-series-per-database = 1000000
2. max-values-per-tag = 100000
3. influxdb 物理机内存不足,influxdb 内存占用过高,被操作系统OOM-Killer
5. influxdb 写入保留策略以为时间的数据,直接丢掉
1. influxdb max-series-per-database = 1000000
设置数据库的时间序列线最大值,该值为 0 时表示无限制,默认值为 1000000
max-series-per-database = 0
如果不配置这个值,series 超过 1000000 就会报一下异常,导致数据丢失。
influxdb中,series是一个很重要的概念,它是retentionPolicy、measurement、tag set相同的集合,包含了监控对象的元数据信息,series的数量=RP*measurement*tag set。
一般来讲,监控对象稳定后,series基本是固定的;influxdb将series放在内存作为索引,加快了数据查询,这使得series的数量不能太大,否则influxdb内存会被撑爆,默认单个database内series限制为<100W个。
2021-12-02 20:29:38.712 [defaultEventExecutorGroup-2-7] ERROR com.test.daq.parse.HL7DataMsg - HL7DataMsg.parse err, e = {}
org.influxdb.InfluxDBException: partial write: max-series-per-database limit exceeded: (1000000) dropped=4783
at org.influxdb.InfluxDBException.buildExceptionFromErrorMessage(InfluxDBException.java:161)
at
2. max-values-per-tag = 100000
The maximum number of tag values allowed per