Elasticsearch 中的数据流生命周期设置

编辑

Elasticsearch 中的数据流生命周期设置

编辑

以下是用于配置数据流生命周期的可用设置。

集群级别设置

编辑
data_streams.lifecycle.retention.max
(动态, 时间单位值) 将应用于所有由数据流生命周期管理的用户数据流的最大保留期。最大保留期还将覆盖配置的保留期超过最大保留期的数据流的保留期。它应该大于 10s
data_streams.lifecycle.retention.default
(动态, 时间单位值) 将应用于所有由数据流生命周期管理的、且未配置保留期的用户数据流的保留期。它应该大于 10s 且小于或等于 data_streams.lifecycle.retention.max
data_streams.lifecycle.poll_interval
(动态, 时间单位值) Elasticsearch 检查具有内置生命周期的所有数据流的下一个操作的频率。默认为 5m
cluster.lifecycle.default.rollover

(动态, 字符串) 此属性接受格式化的键值对字符串,并配置在数据流配置了 lifecycle 时触发滚动更新的条件。此属性是实现细节,可能会发生更改。目前,它默认为 max_age=auto,max_primary_shard_size=50gb,min_docs=1,max_primary_shard_docs=200000000,这意味着如果满足以下任何条件,您的数据流将滚动更新:

  • 任何主分片达到 50GB 的大小,
  • 或者任何主分片包含 200,000,000 个文档
  • 或者索引达到一定的使用期限,该期限取决于您的数据流的保留时间,
  • 并且至少有一个文档。
data_streams.lifecycle.target.merge.policy.merge_factor
(动态, 整数) 数据流生命周期通过更新目标后备索引的 Lucene 合并策略因子来实现尾部合并。合并因子既是将要合并在一起的段的数量,也是我们在给定层中期望找到的最大段数。此设置控制数据流生命周期在目标索引上配置的值。它默认为 16。该值将在目标索引上的 index.merge.policy.merge_factor 索引设置下可见。
data_streams.lifecycle.target.merge.policy.floor_segment
(动态) 数据流生命周期通过更新目标后备索引的 Lucene 合并策略基准段来实现尾部合并。此基准段大小是一种防止索引具有很长的小段尾部的方法。此设置控制数据流生命周期在目标索引上配置的值。它默认为 100MB
data_streams.lifecycle.signalling.error_retry_interval
(动态, 整数) 表示数据流生命周期必须在错误步骤中对索引执行的重试次数,以便发出信号表明索引没有进展(即,它卡在错误步骤中)。当前的信令机制是在 error 级别记录日志语句,但是,信令机制将来可以扩展。默认为 10 次重试。

索引级别设置

编辑

以下索引级别设置通常在数据流的后备索引上配置。

index.lifecycle.prefer_ilm
(动态, 布尔值) 此设置确定在后备索引具有索引生命周期管理 (ILM) 策略,并且数据流也具有内置生命周期时,哪个功能正在管理数据流的后备索引。当 true 时,此索引由 ILM 管理;当 false 时,后备索引由数据流生命周期管理。默认为 true
index.lifecycle.origination_date
(动态, 长整型) 如果指定,这是在后备索引滚动更新后,用于计算后备索引生成时间的戳。生成时间用于确定数据保留,因此,如果您创建包含旧数据的后备索引,并且希望确保保留期或生命周期的其他部分将基于数据的原始时间戳而不是它们被索引的时间戳应用,则可以使用此设置。指定为 Unix 纪元值,以毫秒为单位。