Lucene великолепен. Очень гибкий, удивительно быстрый и надежный API. Список рассылки чрезвычайно полезен.
Файлы требуют небольшого обслуживания, но это можно сделать с помощью предоставленных инструментов. Первостепенное значение имеет оптимизация индекса в отдельных случаях, но это необходимо, только если вы регулярно обновляете индекс.
Я бы тоже посоветовал заглянуть в Солр. По сути, это веб-приложение и инструменты, которые находятся поверх Lucene. Это упрощает создание новых индексов, их оптимизацию, а также обеспечивает синхронизацию главного / подчиненного для масштабируемого поискового кластера. Это, конечно, зависит от ваших реальных потребностей.
В качестве личного примера я использовал поисковый индекс для крупной, известной игровой компании. Индекс имел сотни тысяч записей на нескольких языках (по всему миру) и локали. Каждый день он выполнял миллион запросов в кластере, практически не используя процессор и разумное количество памяти. Он подвергался нагрузочной проверке примерно до 300 миллионов запросов в день на имеющемся у нас оборудовании и линейно масштабировался, просто добавляя больше блоков в cluser. Solr и Lucene были основными инструментами для этого.
Если бы у меня был , чтобы дать обратную сторону, это была бы кривая обучения. Здесь есть что понять, и если вы хотите действительно оптимизированное решение, вам нужно хорошо это знать. Тем не менее, это произойдет с любым инструментом поиска, который вы используете, если вы делаете это самостоятельно. Документация, вики и список рассылки обеспечивают достаточную поддержку для этого роста.