/ / Lucene.Net версії і може пропускати оптимізацію (для lucene 3.0.3)? - .net, lucene

Lucene.Net та може пропускати оптимізацію (для lucene 3.0.3)? - .net, lucene

Ми працюємо над пошуковою системою.Net та використання бібліотек Lucene.net. Під час індексації, ми трохи повільно, і коли в Google про це ми бачили, ми побачили, що в цій області є кілька покращень у більш високій версії, ніж ми використовуємо.

Це виглядає як найвища .Net версія для Lucene 3.0.3, в той час як в Java версія набагато вище.

Хто-небудь знає про вищу версію .net для Lucene? Чи є версії Java Lucene однаковими для версій Lucene .net?

Ми маємо досить багато даних, які нам потрібно індексуватитому ми не впевнені, чи варто буде повністю пропустити крок оптимізації (для версії 3.0.3 lucene). Крім того, хтось знає, що станеться, якщо ми не назвемо Dispose на Writer, коли ми закінчимо працювати з ним?

Відповіді:

1 для відповіді № 1
  • Lucene.Net 4.8 зараз у бета-версії, перевірте це тут.

  • Так, для Lucene.Net версія має бути в значній мірі ідентична тій же версії Lucene.

  • Ви, мабуть, можете вижити без оптимізації. Оптимізація, як правило, зробить пошук трохи швидшим, але це досить дорога операція. Якщо ви індексуєте весь набір даних, і він залишатиметься в значній мірі статичним після цього, це може бути гарною ідеєю, оскільки він оптимізує ефективність пошуку для поточний стан або індекс ні рекомендується після написання лише декількох документів. Оптимізація матеріалу здійснюється на льоту, у фоновому режимі, з MergePolicy письменника. Якщо ваші дані постійно змінюються і оновлюються, ви можете просто дозволити MergePolicy зробити це. У розділі 4.8 оптимізація замінюється на ForceMergeбути більш явним (і менш привабливим) про те, що він робить.

  • Ви завжди повинні телефонувати Dispose коли ви закінчите з письменником. Якщо ваші зміни не можуть бути змінені, і блокування не на індексі може не бути випущено.