Solr - Reindex рекомендуемый размер партии - PullRequest
4 голосов
/ 03 апреля 2012

Я только что установил Solr в своем приложении на Rails (используя sunspot).

Я хочу, чтобы solr переиндексировал пару столбцов в одной из моих таблиц, таблицы довольно большие (~ 50 миллионов записей)).

Какой рекомендуемый размер партии использовать?в настоящее время я использую 1000 и работает более суток.

Есть идеи?

1 Ответ

3 голосов
/ 03 апреля 2012

Размер партии не так важен, 1000, вероятно, в порядке, хотя я бы не стал больше, чем это.Это зависит от размера документов, сколько байтов текста проиндексировано для каждого.

Вы делаете коммит после каждого пакета?Это может быть медленно.Я загружаю 23М индекс документа с одним коммитом в конце.Документы небольшие, метаданные для книг, и это занимает около 90 минут.Чтобы получить такую ​​скорость, мне нужно было использовать один SQL-запрос для загрузки.Использование любых подзапросов делало его примерно в 10 раз медленнее.

Я использую поддержку JDBC в DataInputHandler, хотя я могу перейти к некоторому пользовательскому коду, который выполняет запрос к БД и отправляет пакеты.

IВы слышали, что обработчик ввода CSV очень эффективен, поэтому он может сработать, чтобы вывести ваши данные в CSV, а затем загрузить их с этим обработчиком.

...