Articles by Erick Erickson

Blog

Indexing Existing Data with SolrJ in Apache Solr

How to use the SolrJ client with Apache Solr for indexing data.
Read Now
Blog

Solr’s DateRangeField, How Does It Perform?

Techniques for optimizing performance of the DateRangeField for date range queries in Apache Solr.
Read Now
Blog

Apache Solr and Join Queries

The ins and outs of join queries in Apache Solr.
Read Now
Blog

Improving the Search Experience With Solr Suggester

How to configure and optimize Apache Solr's suggester component including both FST-based and AnalyzingInfix approaches (and a few 'gotchas' along the way).
Read Now
Blog

Apache Solr and Optimizing Your Index

Tips and techniques when using optimize/forceMerge and/or expungeDeletes in Apache Solr.
Read Now
Blog

Apache Solr Segment Merging, Deleted Documents, and Why Optimize May Be Bad For You

How to optimize your Apache Solr index by merging segments to prevent wasted space caused by deleted documents. For Apache Solr 7.4 and earlier.
Read Now
Blog

Streaming Expressions in SolrJ

Here at Lucidworks we recently had an "exciting" adventure. A client wanted to access Streaming Expression functionality through SolrJ. This...
Read Now
Blog

Quantifying Performance Gains When Batching Indexing Updates to Solr

Batching when indexing is good: For quite some time it's been part of the lore that one should batch updates when...
Read Now
Blog

Understanding Transaction Logs, Soft Commit and Commit In SolrCloud

The difference between Apache Solr's hard and soft commits and when to use each - including using openSearcher option for hard commits.
Read Now
Blog

End-to-end Payload Example in Solr

Note: This example and solution presented below is no longer necessary in most cases. If you’re using Solr 6.6 or...
Read Now
Blog

UpdateRequestProcessors, Transforming Data Entering Solr

Update processors have been around for a long time, but they don't seem to have garnered much attention. This post...
Read Now
Blog

Memory comparisons between Solr 3x and trunk

Or, "Trunk can use about 1/3 of the memory required by 3.x" Please note that these tests were created with...
Read Now