Solr is an open source enterprise search server based on Lucene. Developing a high performance, feature rich application that uses Lucene directly is difficult and it’s limited to Java applications. Solr solves this by exposing the wealth of power in Lucene via configuration files and HTTP parameters, while adding some features of its own. Configuration files, most notably for the index’s schema, which defines the fields and configuration of their text analysis.
In addition to the standard ability to return a list of search results for some query, Solr has numerous other features such as result highlighting, faceted navigation, query spell correction, query completion etc. It is written in Java, is used to further extend and modify Solr through simple plug-in interfaces. Its web based administrative interface provides runtime search and cache performance statistics, schema browser with index statistics on each field. It provides distributed search support and index replication for scaling.