Igor Bobriakov

We have already considered many concepts from Elasticsearch and studied various filters and search nuances. In this article, we discuss sorting and relevance of documents.

Let’s see how elasticsearch scoring is calculated. To begin, let’s find out what happens during a search. First, Elasticsearch finds all the appropriate documents. This means it receives a Boolean response of 0 if the document is not suitable, and 1 if the document is suitable. Next, for all documents with the response equal to 1, the scoring will be calculated and they will be sorted by this value.

Keep reading

In this post we cover Elasticsearch Aggregations. Elasticsearch Aggregation API’s main task allows you to summarize, calculate, and group the data in near real time. An important feature here is that our aggregations can implement sub-aggregations, which in turn implement more sub-aggregations. You can implement these sub-aggregations as much as needed. You can use aggregations in a variety of actions, from building analytical reports, to getting real-time analysis of data and taking quick actions. This allows for a flexible API.

The aggregation functionality is completely different from search and enables you to ask sophisticated questions to the data. Let’s practice with this tool.

Note: If you have no experience with aggregations in Elastic, please read this article first.

Keep reading

Free querying allows people to use any words which they know. However, sometimes it is difficult for program to map these words to standard database scales. For example, the color ‘blue’ has more than 400 shades and people use them by querying every day. The solution tp this problem is creating a dictionary with synonyms and using the Synonym Token Filter. In this article we tell you how do this in a few steps.

Keep reading

Elasticsearch is document oriented, meaning that it stores entire objects or documents. Aside from storing them, it indexes the contents of each document in order to make them searchable. In Elasticsearch you can index, search, sort, and filter documents—not rows of column data. This is a fundamentally different way of thinking about data and it is one of the reasons Elasticsearch can perform complex full-text search.

The objects in the application are rarely simple lists of keys and values. More often objects are complex data structures that may contain dates, geo locations, other objects, or arrays of values.

Keep reading

Imagine we have a website where users can put any query in any number of formats. We should map them to standard format and use the words that we have in the fields of our data set.

The main problems we can meet are:

– Incorrect words

– Pluralsingular forms

– Too many stopwords

In this post we will show you how to solve these problems in order to improve your free query results.

Keep reading