Digging in the Solr code: 5 minutes howto

Let’s say you need to write a component, a request handler, or in general some piece of custom code that needs to be plugged into Solr. Or, you need to have a deeper understanding about some Lucene/Solr internals, following what actually happens within the code.   I know: unit tests, integration tests, everything to make … Continue reading Digging in the Solr code: 5 minutes howto

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?

Rated Ranking Evaluator: Help the poor (Search Engineer)

A Software Engineer is always required to give his customers a concrete evidence about deliverables quality. A Search Engineer deals with a specialisation of such generic Software Quality, which is called Search Quality. What is Search Quality? And why is it so important in a search infrastructure? After all, the "Software Quality" should be omni-comprensive, … Continue reading Rated Ranking Evaluator: Help the poor (Search Engineer)

Apache Solr: orchestrating Known item and Full-text search

Scenario You’re working as a search engineer for XYZ Ltd, a company which sells electric components. XYZ provided you the application logs of the last six months, and some business requirements. Two kinds of customers, two kinds of requirements, two kinds of search The log analysis shows that XYZ has mainly two kinds of customers: … Continue reading Apache Solr: orchestrating Known item and Full-text search

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

Give the height the right weight: quantities detection in Apache Solr

Quantity detection? What is a quantity? And why do we need to detect it? A quantity, as described by Martin Fowler in his "Analysis Patterns" [1] is defined as a pair which combines an amount and unit (such as 30 litres, 0.25 cl, or 140 cm). In search-based applications, there are many cases where you may … Continue reading Give the height the right weight: quantities detection in Apache Solr

ECIR 2018 Experience

This blog is a quick summary of my (subjective) experience at ECIR 2018 : the 40th European Conference on Information Retrieval, hosted in Grenoble (France) from 26/03/2018 to 29/03/2018. Deep Learning and Explicability Eight long papers accepted were about Deep Learning. The topics "Neural Network" and "Word Embedding" were the most occurring in the accepted … Continue reading ECIR 2018 Experience