我应该对弹性搜索中的非日志数据使用基于时间的索引吗?

Posted

技术标签:

【中文标题】我应该对弹性搜索中的非日志数据使用基于时间的索引吗?【英文标题】:Should I use time based indexes for non-log data in elasticsearch? 【发布时间】:2021-11-29 03:22:06 【问题描述】:

例如,如果我想存储订单/预订信息,那么我可以使用订单创建日期将数据索引到“order-yyyy”索引中。但是这样做有什么好处吗?对于日志数据,使用此类索引是一个好主意,因为它更容易删除旧日志。但是常规的和基于时间的数据呢?我想永久保留订单数据。

到目前为止,我想出了这个:这样做的唯一原因是,每年该策略都允许自动扩展集群并为新数据做好准备,这可能会提高性能。但直觉表明,在需要时手动进行细粒度重新分片会是更好的方法,我最好坚持使用“orders-vX”命名模式(以防映射更改)。

【问题讨论】:

【参考方案1】:

与其考虑非日志数据,不如考虑它是基于时间的。这样,日志数据与订单数据没有什么不同,它只是一个带有额外信息的时间戳,Elasticsearch 并不真正担心它是什么

除此之外,是的,以同样的方式处理它是 100% 的好主意。我建议使用ILM 来管理您的索引。

【讨论】:

以上是关于我应该对弹性搜索中的非日志数据使用基于时间的索引吗?的主要内容,如果未能解决你的问题,请参考以下文章

SYSLOG-NG:将相同的日志发送到弹性搜索中的两个不同索引

删除亚马逊弹性搜索中的旧索引

如何基于 Kubernetes 元数据创建索引

如何将弹性搜索索引或日志从一个弹性搜索服务器复制到另一台?

删除弹性搜索中的旧索引

在弹性搜索中将Json字段存储为字符串吗?