Scripting enables you to evaluate custom expressions.
As explored in 2. Insertion & Ingestion, we can modify fields.
And as mentioned in Points Closest to the Origin, we can dynamically score documents and calculate new values on-the-fly.
Scripts can be used in various contexts but are leveraged most often:
- during updates and reindexing
- in queries and aggregations where there are no alternatives (like here)
- and when sorting.
The default scripting language is
lang plugins enable you to run scripts written in other languages. Everywhere a script can be used, you can include a
lang parameter to specify the language of the script.
— slow and discontinued
painless— a sandboxed and secure general-purpose language extending a subset of Java’s syntax; offers optional typing through the
- and good old
java— supporting lower-level script engine modules