solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
来源:互联网 发布:mac ppt设置透明色 编辑:程序博客网 时间:2024/05/21 17:25
在solr中通常包含以下一些操作,包括显式的和隐式的操作
1、addDocument,对文档进行分析,分词处理,创建索引段segment,每当flush缓冲区中增加的文档,索引文件都会新建一个段segment。
2、commit,除了向Directory对象提交索引变化,搜索器query的重新建立
commit提交后,索引flush到硬盘上,并触发listener,创造新的insexSearcher(新的insexReader,从硬盘中加载索引),这样后续的查询就用新的insexsearcher了。
在solr4.0之后,有两种commit,一种是hard commit,一种是softcommit;
hardcommit的时候,要flush document到存储上,并且会warm 新的searcher;而softcommit是在NRT实时搜索中提出的,不会flush到持久化存储,也可以使得document被搜索到,代价比hardcommit要小的多;对实时性要求比较高的场景下,可以做softcommit操作,不过还是要定时hardcommit,确保 索引持久化到存储。
3、rollback,回滚对文档的索引的变动
4、flush,当内存中文档的索引的大小大于一定的阀值时,会flush到硬盘上
满足下面两个条件,缓存自动flush到storage上;但是此时并不能搜索到已add但未提交的索引。
<ramBufferSizeMB>100</ramBufferSizeMB>
<maxBufferedDocs>1000</maxBufferedDocs>
Solr4.0以后启用了事务日志updatelog的概念,可以保证不丢失数据;在宕机后,完全可以根据updatelog来进行恢复,自动建立索引,及时索引未来得急flush到磁盘上。
5、close,lucene中对IndexWrite的close操作,隐含进行flush操作,后做commit操作
6、optimize(merge),
有点像硬盘上整理磁盘碎片的操作。为了提高搜索速度,它会将索引重组在一起,然后移除需要被删除或是更新的文档,请注意,solr是没有update的这种操作的,只有增加与删除。solr在优化时,将需要删除或是被替换的索引标记为deleted,然后再创建新的文档替换掉需要被替换的。optimize就是执行此操作。所以在优化的时候,你的索引会增大,然后再减小。optimize操作会创建一个全新的的索引结构,所以,你需要预备出2倍于你commit时索引大小的空间。
- solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
- solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
- solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
- solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
- Solr 中的commit与optimize
- solr的optimize操作导致性能骤降
- IndexWriter中的commit、rollback和close
- MySQL事务回滚rollback与提交commit的操作
- commit,rollback的提交及时性
- JDBC的commit和rollback
- COMMIT和ROLLBACK的用法
- MYSQL的COMMIT和ROLLBACK
- MYSQL的COMMIT和ROLLBACK
- COMMIT和ROLLBACK的用法
- MYSQL的COMMIT和ROLLBACK
- MYSQL的COMMIT和ROLLBACK
- MYSQL的COMMIT和ROLLBACK
- MYSQL的COMMIT和ROLLBACK
- 非常好看的JS网站客服列表
- 比特币权威问答
- C# unsafe code(轉)
- IOS开发之查看网络链接是否可用 - 2
- Hive性能调校
- solr的相关操作(addDocument,flush,commit,rollback,optimize,close)解析
- 腾讯第三方qq登入
- Win32 Application (VC\MFC) 控制台mini调试工具 mDebug 0.1
- Linux常用命令随记(1)查找命令locate、find
- 科学家发现黑洞事件视界后或存在神秘能量墙
- 笔记本电脑系统设置wifi热点共享技巧
- qemu的freebsd与windows共享文件夹
- 不能使用任何库函数,不能定义任何变量实现strlen和strrev
- 张家港SAP交流群