Cognitive Class

Solr 101

Looking for a needle in a hay stack is a challenging situation at best, but looking for it in a really big hay stack would be perplexing. Solr is the search engine, that can do just such. Take this opportunity to find out how to find what you are looking for.

Start the Free Course

About This Course

Learn the basics of Solr (pronounced "solar"), an open source enterprise search platform, written in Java, from the Apache Lucene project.

Solr is a standalone full-text search server that 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.

  • Learn about Solr's major features, including full-text search, hit highlighting, faceted search, real-time indexing, dynamic clustering, database integration, NoSQL features and rich document (e.g., Word, PDF) handling.
  • Learn how Solr is highly scalable and fault tolerant in providing distributed search and index replication.
  • Learn why Solr is the most popular enterprise search engine.


  • Module 1 - Search Engines
    1. Understand the importance of text search engines
    2. Understand the Solr search procedure
    3. Identify Solr components
  • Module 2 - Configure and Add Documents to Solr
    1. Identifying the important files in a Solr installation
    2. Define the schema for documents in the index
    3. Understand the various ways to add documents to Solr
  • Module 3 - Analyzers and Queries
    1. Use analyzers, tokenizers, and filters
    2. Construct queries
  • Module 4 - SolrJ and Customization
    1. Create SolrJ applications
    2. Understand the customization options available in Solr


  • This course is free.
  • It is self-paced.
  • It can be taken at any time.
  • It can be audited as many times as you wish.
  • Labs can be performed on the Cloud, or using a 64-bit system. If using a 64-bit system, you can install the required software (Linux-only), or use the supplied VMWare image. More details are provided in the section "Labs setup".

Recommended Skills Prior to Taking this Course

  • Basic knowledge of operating systems (UNIX/Linux).
  • Basic understanding of SQL and Java would be helpful.


  • None

Course Staff

James Priebe, Isntructor of Text Analytics Essentials

James Priebe

James Priebe is an IBM intern located in Toronto, Ontario. He spends his time creating proof of concept applications for IBM business partners and developing courses for customer education. He has worked with a variety of technologies in Big Data family, including Streams, Hadoop, and Annotation Query Language (AQL). James is from McMaster University, where he has completed his third year of the Software Engineering & Management program.