Тормозит Lucene.NET при индексации
listsпокажи как lists достается.
была схожая проблема решилась первичной загрузкой lists в память полностью, тоже Lucene.Net
using (var file = File.OpenRead(CacheFileName
{
Data = ProtoBuf.Serializer.Deserialize<List<ResultItem>>(file);
}
…
List<List<ResultItem>> lists = new List<List<ResultItem>>
var list = new List<ResultItem>
lists.Add(list);
int countVal = 0;
foreach (var @value in Data.Values)
{
list.Add(@value);
if (list.Count == foldCount)
{
list = new List<ResultItem>
lists.Add(list);
}
countVal++;
}
ResultItem — сериализуемая структура.
Проблема решилась обновлением Lucene.NET до версии 2.9.
Оставить комментарий
okis
Проблема следующая:Индексирую документы. ~1M записей, запись — строка из нескольких слов.
Данный код, как при использовании RAMDirectory, так и без, после 100К документов жутко тормозит, грешил на сборщик мусора, но не в нём дело. Тормозит — значит тратит более 0.02с на индексацию очередной строки.
На Java то же самое запускать ещё не пробовал.