Jump to content

Apache Solr

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Tliu108 (talk | contribs) at 03:17, 25 April 2016. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Solr
Developer(s)Apache Software Foundation
Stable release
6.0.0 / April 8, 2016; 8 years ago (2016-04-08)
Repository
Written inJava
Operating systemCross-platform
TypeSearch and index API
LicenseApache License 2.0
Websitelucene.apache.org/solr/

Solr (pronounced "solar") is an open source enterprise search platform, written in Java, from the Apache Lucene project. Its major features include full-text search, hit highlighting, faceted search, real-time indexing, dynamic clustering, database integration, NoSQL features[1] and rich document (e.g., Word, PDF) handling. Providing distributed search and index replication, Solr is designed for scalability and Fault tolerance.[2] Solr is the second-most popular enterprise search engine after Elasticsearch.[3]

Solr runs as a standalone full-text search server. It uses the Lucene Java search library at its core for full-text indexing and search, and has REST-like HTTP/XML and JSON APIs that make it usable from most popular programming languages. Solr's external configuration allows it to be tailored to many types of application without Java coding, and it has a plugin architecture to support more advanced customization.

Apache Lucene and Apache Solr are both produced by the same Apache Software Foundation development team since the two projects were merged in 2010. It is common to refer to the technology or products as Lucene/Solr or Solr/Lucene.

History

In 2004, Solr was created by Yonik Seeley at CNET Networks as an in-house project to add search capability for the company website.

In January 2006, CNET Networks decided to openly publish the source code by donating it to the Apache Software Foundation.[4] Like any new project at Apache Software Foundation it entered an incubation period which helped solve organizational, legal, and financial issues.

In January 2007, Solr graduated from incubation status into a standalone top-level project (TLP) and grew steadily with accumulated features, thereby attracting a robust community of users, contributors, and committers. Although quite new as a public project, it powered several high-traffic websites.[5]

In September 2008, Solr 1.3 was released with many enhancements including distributed search capabilities and performance enhancements among many others.[6]

In January 2009, solr & enterprise search Yonik Seeley along with Grant Ingersoll and Erik Hatcher went on to launch Lucidworks (formerly Lucid Imagination), being the first company providing commercial support and training for Apache Solr search technologies[citation needed]. Since then, support offerings around Solr has been abundant.[7]

November 2009 saw the release of Solr 1.4. This version introduced enhancements in indexing, searching and faceting along with many other improvements such as Rich Document processing (PDF, Word, HTML), Search Results clustering based on Carrot2 and also improved database integration. The release also features many additional plug-ins.[8]

In March 2010, the Lucene and Solr projects merged.[9] Solr became a Lucene sub project. Separate downloads continued, but the products were now jointly developed by a single set of committers.

In 2011 the Solr version number scheme was changed in order to match that of Lucene. After Solr 1.4, the next release of Solr was labeled 3.1, in order to keep Solr and Lucene on the same version number.[10]

In October 2012 Solr version 4.0 was released, including the new SolrCloud feature.[11] 2013 and 2014 saw a number of Solr releases in the 4.x line, steadily growing the feature set and improving reliability.

In February 2015, Solr 5.0 was released,[12] the first release where Solr is packaged as a standalone application,[13] ending official support for deploying Solr as a war. Solr 5.3 featured a built-in pluggable Authentication and Authorization framework.[14]

In April 2016, Solr 6.0 was released.[15] Added support for executing Parallel SQL queries across SolrCloud collections. Includes StreamExpression support and a new JDBC Driver for the SQL Interface.

Features

Official list of features
Excerpt:

  • Uses the Lucene library for full-text search
  • Faceted navigation
  • Hit highlighting
  • Query language supports structured as well as textual search
  • Schema-less mode and Schema REST API
  • JSON, XML, PHP, Ruby, Python, XSLT, Velocity and custom Java binary output formats over HTTP
  • HTML administration interface
  • Built-in security: Authentication, Authorization, SSL
  • Replication to other Solr servers - enables scaling QPS and High availability
  • Distributed Search through Sharding - enables scaling content volume
  • Search results clustering based on Carrot2
  • Extensible through plugins
  • Flexible relevance - boost through function queries
  • Caching - queries, filters, and documents
  • Embeddable in a Java Application
  • Geo-spatial search, including multiple points per documents and polygons
  • Automated management of large clusters through ZooKeeper
  • Function queries
  • Field Collapsing and grouping[16]
  • Auto-suggest
  • Streaming

Community and future

Solr has an active development community, both individuals and companies, who contribute new features and bug fixes. [17] [18] [19] [20] [21]

Integrating Solr

Solr is bundled as the built-in search in many applications such as CMS/ECM systems. The major Hadoop distributions from Cloudera,[22] Hortonworks[23] and MapR all bundle Solr as the search engine for their Big Data platforms. Solr is supported as an end point in various data processing frameworks and Enterprise integration frameworks.[citation needed]

Solr exposes industry standard HTTP REST-like APIs with both XML and JSON support, and will integrate with any system or programming language supporting these standards. For ease of use there are also client libraries available for Java, C#, PHP, Python, Ruby and most other popular programming languages[24]

See also

References

  1. ^ http://searchhub.org/2012/05/21/solr-4-preview/
  2. ^ What is Solr?
  3. ^ Ranking of Search Engines
  4. ^ Source code that CNET is granting to the ASF for the Solr project
  5. ^ Public Websites that use Solr
  6. ^ Solr 1.3 Announcement
  7. ^ [1]
  8. ^ Solr 1.4 Announcement
  9. ^ Lucene+Solr merger vote thread
  10. ^ Solr3.1 - Solr Wiki. Wiki.apache.org (2013-05-16). Retrieved on 2013-07-21.
  11. ^ Apache Lucene. Lucene.apache.org. Retrieved on 2013-07-21.
  12. ^ Solr 5.0.0 release announcement
  13. ^ [2]
  14. ^ "Solr 5.3 Release announcement". lucene.apache.org. Retrieved 2015-09-24.
  15. ^ Solr 6.0.0 release announcement
  16. ^ Solr Result Grouping
  17. ^ StackOverflow questions tagged solr
  18. ^ lucenerevolution.org
  19. ^ SF Bay Area Lucene & Solr Meetup Community
  20. ^ Oslo Solr Community
  21. ^ LinkedIn Solr Group
  22. ^ [3]
  23. ^ [4]
  24. ^ [5]

Bibliography