SolrJ为PDF建索引越来越慢

SolrJ为PDF建索引越来越慢

甜柠檬 发布于 2021-11-30 字数 808 浏览 704 回复 1

使用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。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

疾风者 2021-11-30 1 楼

问题解决了,导致建索引慢的问题是up声明在循环体外面。导致up.addfile增量添加文件。。。索引抽取事件也越来越慢。此外每次都会commit的问题,只要不设置setaction就可以了。默认上传文件不commit.