0

我想知道我需要更改哪些参数(如果存在)以减少 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.

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

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


编辑

第一项措施:1 个 CSV 文件,包含 10000 个 solr 文档 -> QTime:6293ms

第二个措施:1 个 CSV 文件,包含 10000 个 solr 文档 -> Qtime:1560781 毫秒

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

在此时间间隔内索引的文档数:26720000 个文档


我想这可以改进,但我不知道女巫设置修改以获得更好的性能。

与我的系统相关的信息

  • 我有 1 个带有一个核心的 solr 实例。
  • 我的系统在具有 8 个 CPU 和 16GB RAM 的虚拟机上运行
  • 我使用大约 30% 的 RAM
  • 我的 JVM 是:1.7.0_09-icedtea OpenJDK Runtime Environment (rhel-2.3.8.0.el6_4-x86_64) OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

问题

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

任何帮助我更快完成更新的提示,将不胜感激。

谢谢。

4

2 回答 2

1

看看下面的链接。这可能对你有帮助..

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

于 2013-08-22T17:02:45.777 回答
0

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

于 2019-05-09T08:11:14.967 回答