Оптимизировать пакетную индексацию Lucene - PullRequest
2 голосов
/ 02 ноября 2010

Это вопрос:

Я использую Lucene.Net и импортирую около 255 тыс. Документов с ~ 6 полями в каждом. Я пробовал несколько вещей, но процесс занимает много (~ 1 день). Я не использую какой-либо странный анализатор, просто стандартный анализатор, и я токенизирую только одно из полей. Я попытался изменить максимальное слияние документов и ничего.

Кто-нибудь сталкивался с этой проблемой?

Спасибо и наилучшими пожеланиями

Ответы [ 2 ]

2 голосов
/ 20 ноября 2010

Я возьму другую альтернативу, и я решил опубликовать результат, поэтому, если кто-то столкнется с той же проблемой, может найти этот другой путь.

Lucene.net имеет интересную функцию, позволяющую объединить два индекса, поэтому моя идея состоит в том, чтобы проиндексировать мой контент в несколько меньших индексов и объединить их с помощью функции объединения.

Это сработало для меня. Я протестировал это решение, индексируя WordNet для выполнения запросов, и оно работало безупречно.

1 голос
/ 03 ноября 2010

Если у вас нет доступа к профилировщику ( Redgate ANTS очень хорошо), тогда:

  1. Решите ваше узкое место: это код Lucene или вашсчитыватель данных?Закомментируйте код индексации Lucene, оставив только читателя данных.Должно быть легко определить, на чьей стороне лежит ваша проблема.
  2. Убедитесь, что вы используете lucene, созданный из SVN.Версия 2.9.x от Subversion намного лучше, чем в более ранних версиях, особенно в том, что касается скорости индексации
  3. Использование коэффициентов слияния по умолчанию и т. Д. Lucene, похоже, гораздо лучше, чем мои попытки настройки.
  4. И наконец (и, возможно, самое главное!) Имеет значение, что индексирование идет медленно?Если вам когда-нибудь придется делать это один или два раза в год: я бы сказал, не беспокойтесь об этом.(Если это не учебное упражнение или что-то подобное)

Надеюсь, это поможет,

...