Вот одна ситуация, когда я должен использовать Lucene.
Учитывая комплект документов, выясните наиболее распространенные в них термины.
Здесь мне нужно получить доступ к векторам терминов каждого документа (используя низкоуровневые API TermVectorMapper). С Lucene это довольно просто.
Другой вариант использования - для очень специализированного упорядочивания результатов поиска. Например, я хочу, чтобы поиск по имени автора (который написал несколько книг) приводил к одной книге из каждого магазина в первых 10 результатах. В этом случае я найду результаты по каждому книжному магазину и, чтобы показать окончательные результаты, я выберу один результат из каждого книжного магазина. Здесь вы, по сути, делаете несколько поисков, чтобы получить окончательные результаты. Доступ к низкоуровневым API lucene определенно помогает.
Еще одна причина пойти на Lucene была в том, чтобы получить новые вкусности как можно скорее. Это больше не соответствует действительности, поскольку оба они были объединены, и будут синхронные выпуски.