Я хотел бы использовать компоненты, которые бесплатны для коммерческого использования.
Я посмотрел на комбинацию Lucene и MongoDB, но удивляюсь, есть ли лучшие подходы, в идеале - одна система.
Sphinx также может обрабатывать миллиарды документов http://sphinxsearch.com/info/powered/
(хотя я также использую Lucene и не могу сказать, лучше ли Sphinx)