2011-06-07 4 views
1

Моих фиксаций, кажется, занимают слишком много времени, если вы заметили, от статуса Dataimport , приведенного ниже, чтобы совершить 1000 установок Документов его занимает больше времени, чем за 24 минутSolr коммит слишком долго

<str name="status">busy</str> 
<str name="importResponse">A command is still running...</str> 
<lst name="statusMessages"> 
<str name="Time Elapsed">0:24:43.156</str> 
<str name="Total Requests made to DataSource">1001</str> 
<str name="Total Rows Fetched">1658</str> 
<str name="Total Documents Skipped">0</str> 
<str name="Full Dump Started">2011-06-07 09:15:17</str> 
<str name=""> 
Indexing completed. Added/Updated: 1000 documents. Deleted 0 documents. 
</str> 
</lst> 

Что может быть причина этого , Я пробовал искать причину или способ улучшить , но просто не могу найти. При таком раскладе мои документы никогда не будут индексироваться , учитывая, что я имею более 100 000 записей, поступающих в базу данных каждый час.

С уважением, Rohit

+0

Чтобы получить лучшую идею, вам нужно будет увидеть конфигурацию обработчика импорта данных. – hross

+0

Вы просматривали латентность базы данных? Выполните тот же запрос в своей базе данных и посмотрите, сколько времени потребуется ... – hross

ответ

1

Я не знаю, если вы используете solrj

public abstract class SolrServer 

, но если вы делаете, что вам действительно нужно индексировать по chuncks/коллекции:

public UpdateResponse add(Collection<SolrInputDocument> docs) 

и не один за другим

0

Добавили optimize = false в обработчик импорта данных. В некоторой степени это ускорило ситуацию, теперь я оптимизируюсь только во время пиковых часов.

Смежные вопросы