Обновления Solr очень медленные - PullRequest
3 голосов
/ 20 октября 2010

Я вижу очень медленные обновления Solr в моей базе данных.База данных насчитывает всего 900 документов.Мы используем autocommit со следующими настройками, и время от времени для autocommit требуются длительные блокирующие обновления:

<autoCommit> 
  <maxDocs>10000</maxDocs>
  <maxTime>1000</maxTime>
</autoCommit>

То, что в мире может происходить в течение 74 секунд с 900 документами.

Идеи?

Вот фрагмент журнала:

18 октября 2010 11:52:46 org.apache.solr.core.SolrCore выполнить INFO: [] webapp = / solr path =/ update params = {} status = 0 QTime = 59569 18 октября 2010 г. 11:52:46 org.apache.solr.update.SolrIndexWriter getDirectory

18 октября 2010 г. 11:53:21 org.apache.solr.core.SolrCore выполнить INFO: [] webapp = / путь пути = / обновить параметры = {} status = 0 QTime = 33586 18 октября 2010 г. 11:53:21:00 org.apache.solr.update.processor.LogUpdateProcessor finish

18 октября 2010 г. 11:54:40 org.apache.solr.core.SolrCore выполнить INFO: [] webapp = / solr path =/ update params = {} status = 0 QTime = 76098 18 октября 2010 г. 11:54:41 org.apache.solr.update.DirectUpdateHandler2 commit

И журнал фиксации:

18 октября 2010 г., 11:54:00. Org.apache.solr.update.DirectUpdateHandler2 commit

INFO: запуск фиксации (optimize = false, waitFlush = true, waitSearcher = true)

18 октября 2010 г., 11:54:00. Org.apache.solr.search.SolrIndexSearcher

ИНФОРМАЦИЯ: Открытие Searcher @ 29b003 main

18 октября 2010 г. 11:54:00 org.apache.solr.update.DirectUpdateHandler2 commit

INFO: end_commit_flush

18 октября 2010 г. 11:54:00 org.apache.solr.search.SolrIndexSearcher warm

ИНФО: autowarm Searcher @ 29b003 main от Searcher @ 718c93 main filterCache {lookups = 0, hit = 0, hitratio = 0.00, insert = 512, evictions = 0, size = 257, warmupTime = 19294, cumulative_lookups = 3330661, cumulative_hits = 12 5437,cumulative_hitratio = 0,03, cumulative_inserts = 3207537, cumulative_evictions = 3184094}

18 октября 2010 11:54:20 org.apache.solr.search.SolrIndexSearcher warm

INFO: результат автоматического прогрева для Searcher@ 29b003 main filterCache {lookups = 0, hit = 0, hitratio = 0.00, insert = 256, выселениеs = 0, размер = 256, warmupTime = 19739, cumulative_lookups = 3330661, cumulative_hits = 12 5437, cumulative_hitratio = 0.03, cumulative_inserts = 3207537, cumulative_evictions = 3184094}

18 октября 2010 г. 11:54.apache.solr.search.SolrIndexSearcher warm

ИНФОРМАЦИЯ: автоподогрев Searcher @ 29b003 main от Searcher @ 718c93 main queryResultCache {lookups = 0, хитов = 0, hitratio = 0.00, вставок = 256, выселений = 0, размер= 256, warmupTime = 18604, cumulative_lookups = 3084, cumulative_hits = 996, cumulative_hitratio = 0.32, cumulative_inserts = 2313, cumulative_evictions = 0}

18 октября 2010 г. 11:54:40 org.apache.solr.se.SolrIndexSearcher warm

ИНФОРМАЦИЯ: результат автоматического прогрева для Searcher @ 29b003 main queryResultCache {lookups = 0, hit = 0, hitratio = 0.00, insert = 256, evictions = 0, size = 256, warmupTime = 19925, cumulative_lookups =3084, cumulative_hits = 996, cumulative_hitratio = 0.32, cumulative_inserts = 2313, cumulative_evictions = 0}

18 октября 2010 11:54:40 утра org.apache.solr.search.SolrIndexSearcher warm

ИНФОРМАЦИЯ:автоподогрев Searcher @ 29b003 main от Searcher @ 718c93 main documentCache {lookups = 0, hit = 0, hitratio = 0.00, insert = 0, выселения = 0, size = 0, warmupTime = 0, cumulative_lookups = 41846, cumulative_hits = 33712, cumu lative_hittio= 0,80, cumulative_inserts = 8134, cumulative_evictions = 0}

18 октября 2010 11:54:40 org.apache.solr.search.SolrIndexSearcher warm

ИНФОРМАЦИЯ: результат автоматического прогрева для Searcher @29b003 основной documentCache {lookups = 0, hit = 0, hitratio = 0.00, вставки = 0, выселения = 0, size = 0, warmupTime = 0, cumulative_lookups = 41846, cumulative_hits = 33712, cumu lative_hitratio = 0,80, cumulative_inumtions = 8134, cumulative_insertions = 8134= 0}

18 октября 2010 г. 11:54:40 org.apache.solr.core.SolrCore registerSearcher

INFO: [] Зарегистрированный новый поисковик Searcher @ 29b003 main

18 октября 2010 г., 11:54:40 org.apache.solr.search.SolrIndexSearcher close

1 Ответ

7 голосов
/ 20 октября 2010

С <maxTime>1000</maxTime> вы будете иметь коммит каждую секунду. Каждый раз, когда Solr выполняет фиксацию, происходит несколько вещей: поисковый индекс закрывается и снова открывается, кеши прогреваются старыми кешами, и некоторые запросы могут запускаться автоматически (посмотрите настройки newSearcher в вашем solrconfig) , В какой-то момент вы можете иметь перекрывающийся коммит. Solr обычно будет очень медленным, если это произойдет.

Так что спросите себя, действительно ли вам нужно делать коммит каждую секунду. Если да, то, вероятно, лучше удалить все запросы из 'newSearcher', так как коммит, который часто делает их бесполезными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...