elasticsearch 如何调整小索引的translog保留?
目前正在开发一个电子商务解决方案,我们正在使用Elasticsearch 6.x对产品进行全文搜索 我们有88个索引,每个索引都有一个大约50mb的primary.store.size。每个主服务器都有一个副本。我们经常通过固定id的批量指数化来重新生成这些指数。正因为如此,translog正在增长 我的每个索引都与通过_cat/index提供的这些数据非常相似:
elasticsearch 如何调整小索引的translog保留?,
elasticsearch,
elasticsearch,目前正在开发一个电子商务解决方案,我们正在使用Elasticsearch 6.x对产品进行全文搜索 我们有88个索引,每个索引都有一个大约50mb的primary.store.size。每个主服务器都有一个副本。我们经常通过固定id的批量指数化来重新生成这些指数。正因为如此,translog正在增长 我的每个索引都与通过_cat/index提供的这些数据非常相似: index pri rep docs.count docs.deleted store.size pri.st
index pri rep docs.count docs.deleted store.size pri.store.size
myindex_1 1 1 105533 0 79.4mb 39.7mb
对于相同的索引,以下是_cat/恢复数据:
index shard time type stage snapshot files files_recovered files_percent files_total bytes bytes_recovered bytes_percent bytes_total translog_ops translog_ops_recovered translog_ops_percent
myindex_1 0 14ms empty_store done n/a 0 0 0.0% 0 0 0 0.0% 0 0 0 100.0%
myindex_1 0 22ms peer done n/a 1 1 100.0% 1 233 233 100.0% 233 0 0 100.0%
对于同一索引,以下是_cat/shard数据:
index shard prirep state docs store
myindex_1 0 p STARTED 105533 39.7mb
myindex_1 0 r STARTED 105533 39.7mb
在默认配置中,translog保留大小为512mb,保留时间为12h。根据文档,translog现在保存的时间更长,以实现更快的碎片恢复机制
鉴于我们索引的大小与translog大小相比非常小,我可以安全地调整translog保留时间或保留大小吗?或者我最好增加存储空间以考虑默认的translog属性?保留设置控制translog文件的数量和保存时间,以便在恢复期间刷新脱机副本 translog文件中保存的信息越多,成功恢复的机会就越大,但大型文件将需要更多的服务器资源,其处理时间也将更长。所以,你必须在这里保持良好的平衡
如果您遇到高吞吐量工作负载,那么保留大小的默认设置为512 MB是不够的,因此您可以安全地将其增加到1024 MB。保留期限也可以更改,并且可能会导致您增加磁盘存储,因此,一旦更新了这两个设置,请密切关注可用磁盘空间,并根据需求计划所需的磁盘存储升级。您能否提供与索引大小相关的更多信息,碎片数量和translog大小<代码>获取猫/索引?v+
获取猫/碎片?v
+获取猫/恢复?v
您好,谢谢您的回答,我提供了有关我们索引数据的更多信息。然而,我们能不能抽象出我的服务器配置的这个“问题”?我很想知道回到以前的恢复系统是否比使用依赖于撤消/重做日志的恢复系统更快,因为索引translog可能大于我的索引大小。我知道对非常大的索引使用translog更有效,但对于我的用例我真的不知道。谢谢你的回答。然而,根据一篇文章,如果我对6.x之前的版本没有错的话,Elasticsearch碎片恢复机制依赖于lucene段拷贝。对于6.x版,如果translog太旧,我们应该采用这种策略。鉴于索引存储的大小比translog大小小,我是否可以冒险改变保留大小,因为我知道复制Lucene段应该很快(可能比使用非常大的translog快)文件复制通常是一项昂贵的操作,只有通过测试两种恢复方法:translog和旧的基于文件的技术,您才能找到哪种方法更快。当您有一个相当大的translog时,尝试模拟一个失败,然后用两种方法恢复失败的复制副本。接下来,您可以轻松地衡量您所付出的努力,并做出最终决策—重新复制方法。我投票支持translog的快速恢复,除非您遇到硬件崩溃。