SolrJ为PDF建索引越来越慢
使用SolrJ提供的官方方法 :
ContentStreamUpdateRequest up = new ContentStreamUpdateRequest("/update/extract");
up.addFile(new File("mailing_lists.pdf"));
up.setParam("literal.id", "mailing_lists.pdf");
up.setAction(AbstractUpdateRequest.ACTION.COMMIT, true, true);//true和false改了没多大差别
result = server.request(up);
发现每次server.request都会导致一次commit。当我新建800个PDF文档时,每新建一个就commit一次(softcommit也一样)。导致每个文件建索引的时间从1S增加到20S。
solrJ有没有先上传富文本文档,在上传完毕后再提交的方法?(普通的文本可以通过add实现这个功能,没找到富文本的)。
类似simpleposttool一样,先将文档post至solr,最后再执行commit。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题解决了,导致建索引慢的问题是up声明在循环体外面。导致up.addfile增量添加文件。。。索引抽取事件也越来越慢。此外每次都会commit的问题,只要不设置setaction就可以了。默认上传文件不commit.