Why require Searchengine? Why not use database for full text search in Enterprise application.
Most of the database has support of full text search, basically indexing and saarching. MySQL, Oracle and many more databases has in-built full text search. Then what is the need to go for external search engine like Lucene, Sphinx, Solr etc. Below of are the benifits of using Searchengine over Database.
- Inverted Indexing: Searchengine uses inverted indexing, text are broken in to words and mapping of each term to the document is stored. When search on particular term, it is easy to return the set of documents.
- Support of Analyzer: How the words should be analysed while indexing and searching. There are lot more in-built analyzer in every searchengine library. There is also support to build own custom analyzer.
- Caching support is available. Index will be loaded in to memory which leads to faster search.
- Has more search capabilities
- Few searchengines support Distributed search.
Summary: Searchengine cannot replace Database. In case of more volume, using searchengine gives search performance faster. If the data volume is less and you are not interested in learning one more library then stick around with Database is not a bad idea.