Nazar Seniuk

Paul Anderson photo

Lead Software Engineer
EPAM

Nazar Seniuk is a Lead Software Engineer at Epam Systems. His main core skill is Java programming language and in particular search direction. He had a chance to successfully use technologies as Solr cloud, Solr/Lucene search engine, Docker swarm on company’s projects. Last year challenge for him was architecting/designing and implementation of solr plugin that has possibility to execute multi queries in one request using custom top hits collectors, comparators and extended priority queues and he would like to share this knowledge at Activate 2019.

 

Nazar Seniuk is speaking at the following session/s

Elevation Query Extension: Introducing “Subselects” into Lucene Queries

Thursday | 1:30PM - 2:10PM | Jefferson West

While tuning the relevance calculation using available standard parameters it is sometimes difficult to achieve the correct sorting order of the top hits. Quite often good rules exist for how to determine the first hits with their ordering, e.g. relying on entities extraction applied to a user query. Given that those rules can be translated to Solr queries the presented Solr extension allows to combine many subqueries into single Solr query and evaluate them in one pass similar to SQL subselects. The order of subqueries determines the relative order of the results. We will discuss the implementation idea, potential use cases and give examples of using the extension in the Solr parser, as a rule, base query extension and for building a suggester.

Audience Takeaway
With our plugin we introduce "subselects" for lucene queries, discuss the implementation and present a more powerful version of query elevation. We show how they can be used to have more control over the top hits, e.g. explicitly placing the subquery results on the top.

Intended Audience
Both the developers and solution architects interested in relevance tuning and query cooking will learn an additional tool to control the top hits using only configuration and extended query syntax, no prerequisite knowledge necessary.

Level:
All Levels