Chapter 9. Scripting

In this chapter, we will cover the following recipes:

  • Painless scripting
  • Installing additional script plugins
  • Managing scripts
  • Sorting data using scripts
  • Computing return fields with scripting
  • Filtering a search via scripting
  • Using scripting in aggregations
  • Updating a document using scripts
  • Reindexing with a script

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 Painless, Groovy, JavaScript, and Python.

In this chapter, we will see how it's possible to create custom scoring algorithms, special processed return fields, custom sorting, and complex update operations on records.

The scripting concept of Elasticsearch is an advanced stored procedures system in the NoSQL world; so, for an advanced use of Elasticsearch, it is very important to master it.

Elasticsearch natively provides scripting in Java (a Java code compiled in JAR), Painless, Groovy, Express, and Mustache; but a lot of interesting languages are available as plugins, such as JavaScript and Python.

In older Elasticsearch releases, prior to version 5.0, the official scripting language was Groovy, but for better sandboxing and performance, the official language is now Painless, which is provided by default in Elasticsearch.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.167.173