首页 文章

Solr Cloud Data Import Handler复制缓慢

提问于
浏览
0

我正在设置一个包含3个节点和3个分片的Solr Cloud部署 . 如果没有复制,我的数据导入处理程序会在约5分钟内非常快速地导入大约1.2M文档 . 这很好,但是当我启用复制时,即重新创建复制因子为2的集合时,数据导入处理程序变得非常慢,对于相同的1.2M文档大约需要1小时30分钟 .

我在3个4x16虚拟服务器上以 Cloud 模式使用solr 5.3.1,每个节点上都有一个zookeeper实例 . 数据导入来自MS SQL DB .

我的大部分配置都是Solr附带的默认配置,我尝试将硬提交和软提交的自动提交更改为很长但没有效果 .

任何想法/指针将非常感激 .

谢谢,Ewen

2 回答

  • 0

    也许不是一个正确的答案,但问题似乎解决了 . 当然,我们必须做一些事情来实现这一点,但是我们所能想到的就是删除log4j属性文件中的CONSOLE日志记录并删除它创建的11GB日志文件 .

    猜猜这可能至少可以为其他人提供其他东西来尝试谁有同样的问题 .

  • 0

    当您将文档发送到集合时,它首先被代理到该文档的领导者分片,然后领导者分片在本地应用它,然后将其发送到所有活动副本,然后返回到客户端 . 这意味着'send a document'请求保持打开状态,直到所有副本都收到文档或失败 . 这意味着插入文档的时间是任何副本插入文档的最长时间 .

    所以,假设固定数量的索引器连接,具有更高复制因子的集合将更慢地插入文档 .

    关于日志记录,Solr默认使用同步日志记录,因此如果您将日志写入非常慢的磁盘或nfs或其他东西,那肯定会影响查询时间 . 我强烈建议对所有内容进行异步日志记录,但这意味着要使用默认的Solr设置 .

相关问题