[DOCS] Move 'Scripting' section to top-level navigation. (#42939)

This commit is contained in:
James Rodewig 2019-06-06 10:45:04 -04:00
parent e35b240a43
commit 2de919e3a8
9 changed files with 26 additions and 33 deletions

View File

@ -43,6 +43,8 @@ include::cluster.asciidoc[]
include::query-dsl.asciidoc[]
include::scripting.asciidoc[]
include::mapping.asciidoc[]
include::analysis.asciidoc[]

View File

@ -46,20 +46,10 @@ The modules in this section are:
A Java node client joins the cluster, but doesn't hold data or act as a master node.
<<modules-scripting-painless,Painless>>::
A built-in scripting language for Elasticsearch that's designed to be as secure as possible.
<<modules-plugins,Plugins>>::
Using plugins to extend Elasticsearch.
<<modules-scripting,Scripting>>::
Custom scripting available in Lucene Expressions, ad Groovy. You can also
write scripts in the built-in scripting language,
<<modules-scripting-painless, Painless>>.
<<modules-snapshots,Snapshot/Restore>>::
Backup your data with snapshot/restore.
@ -102,8 +92,6 @@ include::modules/node.asciidoc[]
:edit_url:
include::modules/plugins.asciidoc[]
include::modules/scripting.asciidoc[]
include::modules/snapshots.asciidoc[]
include::modules/threadpool.asciidoc[]

View File

@ -1,9 +1,11 @@
[[modules-scripting]]
== Scripting
= Scripting
The scripting module enables you to use scripts to evaluate custom
expressions. For example, you could use a script to return "script fields"
as part of a search request or evaluate a custom score for a query.
[partintro]
--
With scripting, you can evaluate custom expressions in {es}. For example, you
could use a script to return "script fields" as part of a search request or
evaluate a custom score for a query.
The default scripting language is <<modules-scripting-painless, `Painless`>>.
Additional `lang` plugins enable you to run scripts written in other languages.
@ -11,7 +13,7 @@ Everywhere a script can be used, you can include a `lang` parameter
to specify the language of the script.
[float]
=== General-purpose languages:
== General-purpose languages
These languages can be used for any purpose in the scripting APIs,
and give the most flexibility.
@ -29,7 +31,7 @@ and give the most flexibility.
|=======================================================================
[float]
=== Special-purpose languages:
== Special-purpose languages
These languages are less flexible, but typically have higher performance for
certain tasks.
@ -67,7 +69,7 @@ sandboxed languages can be a security issue, please read
<<modules-scripting-security, Scripting and security>> for more details.
=================================================
--
include::scripting/using.asciidoc[]

View File

@ -1,5 +1,5 @@
[[modules-scripting-engine]]
=== Advanced scripts using script engines
== Advanced scripts using script engines
A `ScriptEngine` is a backend for implementing a scripting language. It may also
be used to write scripts that need to use advanced internals of scripting. For example,

View File

@ -1,5 +1,5 @@
[[modules-scripting-expression]]
=== Lucene Expressions Language
== Lucene expressions language
Lucene's expressions compile a `javascript` expression to bytecode. They are
designed for high-performance custom ranking and sorting functions and are

View File

@ -1,5 +1,5 @@
[[modules-scripting-fields]]
=== Accessing document fields and special variables
== Accessing document fields and special variables
Depending on where a script is used, it will have access to certain special
variables and document fields.
@ -17,7 +17,7 @@ API will have access to the `ctx` variable which exposes:
`ctx._index` etc:: Access to <<mapping-fields,document meta-fields>>, some of which may be read-only.
[float]
== Search and Aggregation scripts
== Search and aggregation scripts
With the exception of <<search-request-script-fields,script fields>> which are
executed once per search hit, scripts used in search and aggregations will be
@ -80,7 +80,7 @@ GET my_index/_search
[float]
[[modules-scripting-doc-vals]]
=== Doc Values
=== Doc values
By far the fastest most efficient way to access a field value from a
script is to use the `doc['field_name']` syntax, which retrieves the field
@ -140,7 +140,7 @@ access `text` fields from scripts.
[float]
[[modules-scripting-stored]]
=== Stored Fields and `_source`
=== Stored fields and `_source`
_Stored fields_ -- fields explicitly marked as
<<mapping-store,`"store": true`>> -- can be accessed using the

View File

@ -1,5 +1,5 @@
[[modules-scripting-painless]]
=== Painless Scripting Language
== Painless scripting language
_Painless_ is a simple, secure scripting language designed specifically for use
with Elasticsearch. It is the default scripting language for Elasticsearch and

View File

@ -1,5 +1,5 @@
[[modules-scripting-security]]
=== Scripting and security
== Scripting and security
While Elasticsearch contributors make every effort to prevent scripts from
running amok, security is something best done in

View File

@ -1,5 +1,5 @@
[[modules-scripting-using]]
=== How to use scripts
== How to use scripts
Wherever scripting is supported in the Elasticsearch API, the syntax follows
the same pattern:
@ -45,7 +45,7 @@ GET my_index/_search
// CONSOLE
[float]
=== Script Parameters
=== Script parameters
`lang`::
@ -107,7 +107,7 @@ minute will be compiled. You can change this setting dynamically by setting
[float]
[[modules-scripting-short-script-form]]
=== Short Script Form
=== Short script form
A short script form can be used for brevity. In the short form, `script` is represented
by a string instead of an object. This string contains the source of the script.
@ -131,12 +131,13 @@ The same script in the normal form:
[float]
[[modules-scripting-stored-scripts]]
=== Stored Scripts
=== Stored scripts
Scripts may be stored in and retrieved from the cluster state using the
`_scripts` end-point.
==== Request Examples
[float]
==== Request examples
The following are examples of using a stored script that lives at
`/_scripts/{id}`.
@ -196,7 +197,7 @@ DELETE _scripts/calculate-score
[float]
[[modules-scripting-using-caching]]
=== Script Caching
=== Script caching
All scripts are cached by default so that they only need to be recompiled
when updates occur. By default, scripts do not have a time-based expiration, but