
Мне нужно индексировать довольно большой объем данных с помощью Windows Search, поэтому я хотел бы получить оценку размера индекса. Я проиндексировал подмножество данных (около 60 ГБ; 13e6 страниц текстовых данных каждая примерно по 4-5 КБ).
Индекс вырос до 78 ГБ, так что теперь он занимает больше места, чем сами данные. Эти результаты противоречат тому, что я читалздесь:
Средний размер индекса составляет около 10% от размера всего индексируемого контента.
Это ожидаемый размер индекса? Что можно сделать, чтобы его уменьшить?
решение1
Средний размер индекса не является показателем того, каким будет ваш. Вероятно, это связано с тем, что в дополнение ко всем вашим файлам, которые индексируются (и это уже будет большим процентом размера, поскольку все ваши файлы небольшие), содержимое текстовых файлов также индексируется, что еще больше увеличивает размер индекса.
решение2
Правило 10% основывается на ряде предположений:
- Корпус содержит файлы с прозой на человеческом языке.
- Файлы в среднем достаточно большие по сравнению с их метаданными.
- Корпус не содержит файлов кода (.cpp, .cs и т.д.)
Номер 3 — потому что индекс сжимается на диске, предполагая, что слова будут часто повторяться. Это верно для большинства текстов (проверьте, сколько раз 'the' встречается в вашем индексе), но для кода существует так много уникальных 'слов' из имен переменных, что это нарушает это предположение.
В вашем случае я подозреваю, что проблема номер 2, большое количество маленьких файлов. Существует фиксированный объем метаданных, которые идут с каждым файлом, который необходимо сохранить в индексе. Например, индекс должен хранить полный путь, дату изменения, дату создания и т. д. для каждого файла поверх содержимого. Это составляет около 3 КБ на файл, и если средний размер файла составляет 4-5 КБ, то, скорее всего, проблема в этом.
Если поиск важен, и вы не можете объединить файл, я рекомендую отключить индексацию содержимого тех типов файлов, которых у вас много. Это должно несколько уменьшить размер, при этом метаданные файла останутся доступными для поиска.
решение3
Я отключил свою поисковую службу для Windows. Я использую альтернативные поисковые приложения. «Everything» размером всего 900 КБ для сверхбыстрого поиска файлов и «FileSeek Pro» для поиска по содержимому файлов.