Elasticsearch 参考指南(脚本)

news/2024/7/16 21:39:41

脚本

脚本模块使你可以使用脚本来评估自定义表达式,例如,你可以使用脚本将“脚本字段”作为搜索请求的一部分返回,或者为查询评估自定义分数。

默认脚本语言是Painless,附加的lang插件使你可以运行用其他语言编写的脚本,在可以使用脚本的任何地方,都可以包含一个lang参数来指定脚本的语言。

通用语言:

这些语言在脚本API中可用于任何用途,并提供最大的灵活性。

语言沙盒必需的插件
painlessyes内建的

专用语言:

这些语言不太灵活,但通常对某些任务具有更高的性能。

语言沙盒必需的插件用途
expressionyes内建的快速自定义排名和排序
mustacheyes内建的模板
javan/a你编写它!专家API

脚本和安全性

沙盒语言在设计时考虑了安全性,但是,非沙盒语言可能是一个安全问题,请阅读脚本和安全性以获取更多详细信息。

Painless脚本语言

painless是一种简单,安全的脚本语言,专为与Elasticsearch一起使用而设计,它是Elasticsearch的默认脚本语言,可以安全地用于内联和存储脚本,有关painless语法和语言功能的详细说明,请参阅Painless语言规范。

你可以在Elasticsearch中使用脚本的任何地方使用Painless脚本,Painless提供:

  • 性能快:Painless脚本运行速度比备选方案快几倍。
  • 安全:具有方法调用/字段粒度的细粒度白名单,有关可用类和方法的完整列表,请参阅Painless API参考。
  • 可选输入:变量和参数可以使用显式类型或动态def类型。
  • 语法:扩展Java的语法,以提供Groovy样式的脚本语言功能,使脚本更易于编写。
  • 优化:专为Elasticsearch脚本编写而设计。

准备开始使用Painless编写脚本了吗?请参阅Painless脚本语言指南中的Painless入门。


下一篇:如何使用脚本


http://lihuaxi.xjx100.cn/news/235974.html

相关文章

Linux08-日志

目录 一、systemd的日志 1.1、sytemd-journald与systemd日志 1.2、systemd日志的持久化 二、系统常规日志 2.1、系统日志概述 2.2、查看系统日志文件 2.3、日志的轮转 2.4、分析系统日志 2.5、使用logger发送消息到日志 RHEL7的日志由2个服务负责记录,分别…

Unity Log重新定向

Unity Log重新定向 使用Unity的Log的时候有时候需要封装一下Debug.Log(message),可以屏蔽Log或者把log内容写到文本中。通过把文本内容传送到服务器中,查找bug出现的原因。但是封装之后的日志系统如果双击跳转的时候,会跳转到自定义的日志系统…

redis4.0.6集群部署(5.0.2版本更新补充)

Redis集群安装4版本需要ruby 5版本不需要ruby就能集群1集群机器分布192.168.1.133 redis1192.168.1.134 redis2192.168.1.135 redis32 免密登录ssh-keygenssh-copy-id 192.168.1.133ssh-copy-id 192.168.1.134ssh-copy-id 192.168.1.1353 关闭防火墙sy…

Windows Server 2016 笔记

从业界普遍实践结果来看,Windows Server在服务器领域真是不太好用。但是,有些时候由于种种原因不得不用,所以还是有必要了解一下的。今天参加了一个Windows Server的培训,主要面对Windows Server 2016,写下这篇博客备忘…

阿里P7架构师告诉你Java架构师必须知道的 6 大设计原则

在软件开发中,前人对软件系统的设计和开发总结了一些原则和模式, 不管用什么语言做开发,都将对我们系统设计和开发提供指导意义。本文主要将总结这些常见的原则,和具体阐述意义。 开发原则 面向对象的基本原则(solid)是五个&#…

hadoop无法访问50070端口怎么办?

转载请注明出处:www.oldboyedu.com Hadoop 50070是hdfs的web管理页面,在搭建Hadoop集群环境时,有些大数据开发技术人员会遇到Hadoop 50070端口打不开的情况,引起该问题的原因很多,想要解决这个问题需要从以下方面进行排…

编译OpenSSH8.4的RPM包及升级

目录 一、安装相关依赖包 二、创建rpmbuild目录并下载源码 三、打包及排错 四、升级到OpenSSH 8.4p1 以下是打包好的OpenSSH 8.4p1,包括7个rpm包,欢迎下载使用。 OpenSSH-8.4p1-Bundle 一、安装相关依赖包 根据以往经验,需要安装wget、…

JAVA springboot微服务b2b2c电子商务系统(十三)断路器聚合监控(Hystrix Turbine)

讲述了如何利用Hystrix Dashboard去监控断路器的Hystrix command。当我们有很多个服务的时候,这就需要聚合所以服务的Hystrix Dashboard的数据了。这就需要用到Spring Cloud的另一个组件了,即Hystrix Turbine。一、Hystrix Turbine简介看单个的Hystrix D…