原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/modules-scripting.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/modules-scripting.html
本地英文版地址: ../en/modules-scripting.html
重要: 此版本不会发布额外的bug修复或文档更新。最新信息请参考 当前版本文档。
通过使用脚本,你可以在Elasticsearch中评估自定义表达式。 例如,你可以使用脚本返回“脚本字段(script fields)”作为搜索请求的一部分,或者评估查询的自定义分数。
默认的脚本语言是Painless
。
附加的lang
插件使你能够运行用其他语言编写的脚本。
在任何可以使用脚本的地方,都可以包含一个lang
参数来指定脚本的语言。
通用语言
这些语言可以在脚本API中用于任何目的,并提供最大的灵活性。
语言 | 是否沙箱化 | 必要的插件 |
---|---|---|
是 |
(内置的,不需要) |
特殊用途的语言
这些语言不太灵活,但对于某些任务来说通常具有更好的性能。
语言 | 是否沙箱化 | 必要的插件 | 目的 |
---|---|---|---|
是 |
(内置) |
快速自定义排名和排序 |
|
是 |
(内置) |
模板 |
|
未知 |
你自己写! |
专家级API |
脚本和安全
沙盒化语言的设计考虑了安全性。 然而,非沙盒化语言可能是一个安全问题,请阅读脚本和安全性以了解更多细节。