Вопрос

Существует ли известная математическая формула, которую я могу использовать для оценки размера нового индекса Lucene?Я знаю, сколько полей я хочу проиндексировать, и размер каждого поля.И я знаю, сколько элементов будет проиндексировано.Итак, как только они обрабатываются Lucene, как они преобразуются в байты?

Это было полезно?

Решение

Здесь документация по формату индекса lucene.Основной файл — это составной индекс (файл .cfs).Если у вас есть статистика срок, вы, вероятно, можете получить оценку для размера файла .cfs, обратите внимание, что это сильно варьируется в зависимости от используемого вами анализатора, и на типах поля, которые вы определяете.

Другие советы

Индекс сохраняет каждый «токен» или текстовое поле и т. д. только один раз… поэтому размер зависит от характера индексируемого материала.Добавьте к этому все, что хранится.Хороший подход может заключаться в том, чтобы взять образец и проиндексировать его, а затем использовать его для экстраполяции на полную коллекцию источников.Однако соотношение размера индекса к размеру источника также уменьшается со временем, поскольку слова уже есть в индексе, поэтому вы можете захотеть сделать выборку приличным процентом от оригинала.

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

Кроме того, вероятно, существует небольшая зависимость от того, используете ли вы векторы терминов или нет, и, конечно, сохраняете ли вы поля или нет.Можете ли вы предоставить более подробную информацию?Можете ли вы проанализировать частоту терминов в ваших исходных данных?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top