这篇文章主要为大家展示了“Solr Transaction Log有什么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Solr Transaction Log有什么用”这篇文章吧。
记录了原始文档,用于索引恢复功能。在 SolrCloud 中,每个节点都有自己的 tlog。在更新的时候,整个文档会写入 tlog 中。在原子更新(Atomic update)时,仍然是整个文档写进来,包括了从老文档中读取出来的内容,换言之,原子更新时,写到 tlog 的不是增量数据。Tlog 是保证一致性的关键,有了它,就算索引段(segment)关闭前 JVM 崩溃了,索引也不会丢失。
solr硬提交(hard commit)的时候会写入Transaction Log,Transaction Log有点类似于mysql的redo log。
硬提交是提交数据持久化到磁盘里面,它内部做的事情如下:
1、生成一个新的tlog文件,删除旧的tlog。
2、把内存中的索引文件fsync到磁盘,并创建一个index descriptor,即使jvm崩溃或者宕机,也不影响这部分索引。
3、使得索引在searcher中可见。
以上是“Solr Transaction Log有什么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/205299.html