Jump to content

Apache Solr

From Alfawiki
Apache Solr
Company typeOpen-source software project
IndustryEnterprise search, Information retrieval
Founded2004; 22 years ago (2004)
FounderYonik Seeley
Area served
Worldwide
Key people
Yonik Seeley
ProductsEnterprise search platform, full-text search server
OwnerApache Software Foundation
Websitesolr.apache.org

Solr (pronounced "solar") is a Java-based open-source platform designed for enterprise-level search solutions. It offers a comprehensive suite of functionalities such as full-text search, hit highlighting, faceted search, real-time indexing, dynamic clustering, integration with databases, support for NoSQL data stores, and advanced document processing (including formats like Word and PDF). Built with scalability and fault tolerance in mind, Solr enables distributed searching and index replication. It enjoys widespread use in enterprise search and analytics environments and benefits from a vibrant development community that regularly updates the software.

Functioning as an independent full-text search server, Solr leverages the Lucene Java library to perform indexing and search operations. It provides REST-style HTTP/XML and JSON interfaces compatible with most programming languages. Users can configure Solr externally without needing to write Java code, while its plugin system allows for sophisticated customization and feature extensions.

The Apache Solr project, managed under the auspices of the Apache Software Foundation, has seen continuous evolution since its initial release.

History

Solr was initially developed in 2004 by Yonik Seeley at CNET Networks to improve website search functionality. In January 2006, it was contributed to the Apache Software Foundation. Following a period of incubation that addressed organizational and legal formalities, Solr was promoted to a top-level Apache project in January 2007. Early implementations included use on high-traffic websites.

The release of Solr 1.3 in September 2008 brought distributed search capabilities and enhanced performance. In January 2009, Yonik Seeley along with others founded Lucidworks, the first company dedicated to providing commercial support and training for Solr, which accelerated growth in professional services around the platform.

Solr 1.4, launched in November 2009, improved indexing, searching, faceting features, rich document processing for formats like PDF, Word, and HTML, integrated search result clustering through Carrot2, database connectivity enhancements, and introduced new plug-ins.

In March 2010, the Lucene and Solr projects merged their development efforts while maintaining separate distributions. To synchronize versioning with Lucene starting in 2011, Solr’s version number jumped from 1.4 to 3.1.

October 2012 saw the debut of Solr 4.0 featuring SolrCloud for distributed searching. Subsequent releases in the 4.x series up through 2014 concentrated on expanding features and improving stability.

February 2015 marked the launch of Solr 5.0 as a standalone application, discontinuing official support for WAR file deployments. Version 5.3 introduced a modular authentication and authorization framework.

Released in April 2016, Solr 6.0 added support for Parallel SQL queries across SolrCloud collections, StreamExpression capabilities, and a new JDBC driver enabling SQL access.

Version 7.0 arrived in September 2017 with enhancements including multiple replica types, automatic scaling features, and an embedded mathematical engine.

Solr 8.0 was released in March 2019 with numerous bug fixes and updates such as HTTP/2 support between nodes, administrative UI login options including BasicAuth and Kerberos integration, plus improved compatibility with Apache Zeppelin for rendering mathematical expressions.

In November 2020, Bloomberg contributed the Solr Operator project to simplify Kubernetes deployments.

Solr attained independent status as an Apache top-level project in February 2021.

May 2022 introduced Solr 9.0 as the first release decoupled from Lucene dependencies and requiring Java 11. Major improvements included KNN "Neural" search functionality, enhanced modular architecture, expanded security plugin options, and strengthened enterprise-grade features.

Operations

Apache Solr manages document search through several essential phases:

  1. Indexing: transforming documents into formats that machines can interpret.
  2. Querying: processing user inputs, which may consist of keywords or images.
  3. Mapping: linking queries to stored documents to find pertinent matches.
  4. Ranking: organizing search outcomes based on their relevance.

Community

The development and enhancement of Solr are driven by contributions from both individuals and organizations who introduce new features and resolve issues. The project fosters active participation through various events and groups, including Lucene/Solr Revolution, local meetups, and LinkedIn networks.

Integrating Solr

Solr is commonly embedded as the primary search solution within numerous content management and enterprise content management platforms. Prominent Hadoop distributors such as Cloudera, Hortonworks, and MapR incorporate Solr into their big data ecosystems. DataStax also integrates Solr with Apache Cassandra as part of its enterprise offerings. Additionally, Solr supports connectivity with a range of data processing and enterprise integration tools.

Solr delivers standardized HTTP REST-like APIs that support XML and JSON formats, ensuring interoperability with any system or programming language compatible with these protocols. There are client libraries available for Java, C#, PHP, Python, Ruby, and other widely used languages, enabling smooth integration across varied technology environments.

See also

Bibliography


External links