elasticsearch/docs/reference/scripting-languages/painless/painless.md
Colleen McGinnis ab5ff67bce
[docs] Add products to docset.yml (#128274)
* add products to docset.yml

* add page-level painless tags
2025-05-21 13:55:32 -05:00

1.3 KiB
Raw Blame History

mapped_pages products
https://www.elastic.co/guide/en/elasticsearch/painless/current/index.html
https://www.elastic.co/guide/en/elasticsearch/painless/current/painless-guide.html
id
painless

Painless [painless-guide]

Painless is a simple, secure scripting language designed specifically for use with Elasticsearch. It is the default scripting language for Elasticsearch and can safely be used for inline and stored scripts. For a jump start into Painless, see A Brief Painless Walkthrough. For a detailed description of the Painless syntax and language features, see the Painless Language Specification.

You can use Painless anywhere scripts are used in Elasticsearch. Painless provides:

  • Fast performance: Painless scripts run several times faster than the alternatives.
  • Safety: Fine-grained allowlist with method call/field granularity.
  • Optional typing: Variables and parameters can use explicit types or the dynamic def type.
  • Syntax: Extends a subset of Javas syntax to provide additional scripting language features.
  • Optimizations: Designed specifically for Elasticsearch scripting.