Introduction
ElasticSearch has a powerful way to extend its capabilities with custom scripts that can be written in several programming languages. The most common ones are MVEL, JavaScript, and Python.
We already have a taste of the scripting capabilities of ElasticSearch, in the previous chapter, using scripting for facets. In this chapter we will see how it's possible to create custom scoring algorithms, special processed return fields, custom sorting or complex update operations on records.
The scripting concept of ElasticSearch can be seen as an advanced stored procedures system in the NoSQL world; so, for an advanced use of ElasticSearch, it is very important to master it.