The Request Handlers Jungle – handleSelect and qt Parameter

The target of this blog post is to shed some light on the topic of request handlers and their relation with the QT request parameter in recent Apache Solr ( >= 7.0). Definitions A Request Handler is defined with a name and a class.It defines an API endpoint to handle and process http requests. The … Continue reading The Request Handlers Jungle – handleSelect and qt Parameter

Apache Solr Facets and ACL Filters Using Tag and Exclusion

What happens with facets aggregations on fields when documents in the results have been filtered by Access Control Lists ?In such scenarios it is important to use the facet mincount parameter.That specifies the minimum count in the result set for a facet value to appear in the response: mincount=0, all the facet values present in … Continue reading Apache Solr Facets and ACL Filters Using Tag and Exclusion

Apache Solr Distributed Facets

Apache Solr distributed faceting feature has been introduced back in 2008 with the first versions of Solr (1.3 according to this jira[1]) . Until now, I always assumed it just worked, without diving too much into the details. Nowadays distributed search and faceting are extremely popular, you can find them pretty much everywhere (in the … Continue reading Apache Solr Distributed Facets

Synonyms and Stopwords: Vademecum

In this post we'll cover two additional synonyms scenarios and we'll try to summarise all previous tips in a coincise form. Following the approach of the previous posts [1] [2] [3], everything can be applied both to Apache Solr and Elasticsearch. Preconditions Synonyms and stopwords at query time: this is not just a "theoretical" constraint; … Continue reading Synonyms and Stopwords: Vademecum

Still Synonyms + Stopwords?? Mamma mia!

The Context Brief recap of where we arrived in the preceding article: we had the following synonyms and stopwords settings: synonyms = {"out of warranty","oow"} stopwords = {"of"} Both of those filters were configured exclusively at query-time; the synonym filter first and then the stopwords filter. Using the built-in StopFilter we had a synonym detection … Continue reading Still Synonyms + Stopwords?? Mamma mia!

Synonyms + Stopwords?? OMG!

The Context The scenario description is quite simple: we want to use synonyms and stopwords. Following the path of our previous article, we will introduce an additional component in the analysis chain: a StopFilter, which, as the name suggests, removes a set of words from an incoming token stream. We will use the following data … Continue reading Synonyms + Stopwords?? OMG!

Apache Solr/Elasticsearch: How to Manage Multi-term Concepts out of the Box?

This flash blog post will address a very specific and common problem : how to manage entities/concepts composed by multiple terms in a vanilla Apache Solr/Elasticsearch instance ( no plugins or extensions to install). The (deployment) context An Elasticsearch or Apache Solr infrastructure where you cannot install third-party components (e.g. plugins, filters, query parsers). This can … Continue reading Apache Solr/Elasticsearch: How to Manage Multi-term Concepts out of the Box?

SolrCloud exceptions with Apache Zookeeper

At the time we speak ( Solr 7.3.1 ) SolrCloud is a reliable and stable distributed architecture for Apache Solr. But it is not perfect and failures happen. Apache Zookeeper[1] is the system responsible of managing the communications across the SolrCloud cluster. It contains the shared collections configurations and it has the view of the … Continue reading SolrCloud exceptions with Apache Zookeeper

SolrCloud Leader Election Failing

At the time we speak ( Solr 7.3.0 ) SolrCloud is a reliable and stable distributed architecture for Apache Solr. But it is not perfect and failures happen. This lightening blog post will present some practical tips to follow when a specific shard of a collection is down with no leader and the situation is … Continue reading SolrCloud Leader Election Failing

Distributed Search Tips for Apache Solr

Distributed search is the foundation for Apache Solr Scalability : It's possible to distributed search across different Apache Solr nodes of the same collection ( both in a  legacy[1] or SolrCloud[2] architecture), but it is also possible to distribute search across different collections in a SolrCloud cluster. Aggregating results from different collections may be useful … Continue reading Distributed Search Tips for Apache Solr