Я пытаюсь создать приложение в C # .NET 4.0 и WPF, которое индексирует:
- Имена файлов ("taskmgr.exe")
- Описания файлов («Диспетчер задач Windows»)
- Абсолютный родительский каталог ("C: \ Windows \ System32")
на всех жестких дисках компьютера пользователя.
Я не индексирую содержимое файлов - только имена файлов / пути / описания. Также обратите внимание, что я индексирую только практические файлы расширений .DOC, .MP3, .EXE, .CS, .CPP. Я не буду индексировать файлы без расширений, пользовательские расширения, библиотеки DLL или другие подобные файлы.
Я совершенно новичок в Lucene, и я прочитал несколько статей для начинающих о том, как проектировать структуру документа / индекса.
Я думал, что моя структура документа Lucene может быть такой, что каждый файл является новым документом с тремя полями, перечисленными выше в качестве трех значений пары ключей. Это рекомендуется? Правильный ли выбор с Lucene? Будет ли поиск имени файла выполняться в реальном времени (список может без особых задержек динамически расширяться и сокращаться со всеми возможными именами файлов и путями)?
Если требуется какая-либо статистика, мой жесткий диск составляет 450 ГБ, и у меня всего 681 014 файлов (все расширения) и 165 732 папки.