我怎样才能减少Qtime?

时间:2013-08-22 16:04:31

标签: solr lucene

我想知道我需要更改哪些参数(如果存在)以减少Qtime。

 Qtime : The elapsed time (in milliseconds) between the arrival of the request (when the SolrQueryRequest object is created) and the completion of the request handler. It does not include time spent in the response writer formatting/streaming the response to the client.

我在更新文档时记录了卷曲响应,并且我注意到QTime在此期间增加了。

例如,我的第一个回复(对应于我的第一个索引的文档)是6293毫秒。在大量索引文档之后,我的QTime变得更长:1560781 ms所以大约26分钟!


修改

第一个衡量标准:1个包含10000个solr文档的CSV文件 - > QTime:6293ms

第二项措施:1个包含10000个solr文档的CSV文件 - > Qtime:1560781 ms

这些措施之间的延迟= 32分19秒

在此间隔期间索引的数字文档:26720000个文档


我想这有可能改善,但我不知道女巫设置修改以获得更好的表现。

与我的系统相关的信息

  • 我有一个带有一个核心的solr实例。
  • 我的系统适用于具有8个CPU和16GB RAM的虚拟机
  • 我使用大约30%的RAM
  • 我的JVM是:1.7.0_09-icedtea OpenJDK运行时环境(rhel-2.3.8.0.el6_4-x86_64) OpenJDK 64位服务器VM(版本23.7-b01,混合模式)

问题

  • 也许我需要设置更多线程来更新文档或类似的东西。
  • 这种行为可能与Jetty有关吗? (我认为Jetty没有链接,有人可以证实吗?)
  • 如何使用更多RAM来索引数据? (我已经将JVM设置为使用此命令为Solr分配足够的RAM:java -Xms2048M -Xmx8192M -jar start.jar)
  • 我应该使用更多的solr实例(SolrCloud?)来解决它吗?
  • 为什么Qtime会随着更新负载而增加?它是Solr限制(RAM,磁盘)吗?

有任何提示可以帮助我更快地完成更新,我们将不胜感激。

感谢。

2 个答案:

答案 0 :(得分:1)

查看以下链接。这可能对你有所帮助..

http://wiki.apache.org/solr/SolrPerformanceFactors

答案 1 :(得分:0)

首先改进Delta Imports中使用的SQl查询,这将改进很多尤其是数据类型,然后使用solr REST服务进行solr中的即时更新。