【Elasticsearch】es 脚本编程使用详解

AI摘要

本文详细介绍了ES脚本编程,包括脚本语言介绍、支持的语言、特点及使用场景。还说明了用Docker搭建ES和Kibana环境的过程,以及Scripting的使用,如数据准备、CRUD操作、参数化脚本使用与存储,最后讲解了函数式编程的格式与应用。

目录

一、es脚本语言介绍

1.1 什么是es脚本

1.2 es脚本支持的语言

1.3 es脚本语言特点

1.4 es脚本使用场景

二、环境准备

2.1 docker搭建es过程

2.1.1 拉取镜像

2.1.2 启动容器

2.1.3 配置参数

2.1.4 重启容器并访问

2.2 docker搭建kibana过程

2.2.1 拉取镜像

2.2.2 启动容器

2.2.3 修改配置文件

2.2.4 重启容器并访问

三、Scripting 使用详解

3.1 数据准备

3.1.1 创建一个索引

3.1.2 添加测试数据

3.2 常用的CRUD操作

3.2.1 修改id为1001数据的价格

3.2.2 修改id为1005数据的tag

3.2.3 删除id为1005数据

3.2.4 upsert操作

3.2.5 使用expression查询

3.3 参数化脚本使用

3.3.1 修改1005这条数据的字段值

3.3.2 对字段值进行计算

3.3.3 对字段值进行计算并输出多个结果

3.4 参数化脚本的存储

3.4.1 自定义一个参数脚本

3.4.2 查询脚本模板

3.4.3 使用自定义脚本模板

四、Scripting 函数式编程

4.1 函数式编程格式

4.2 函数式编程使用

4.2.1 同时操作多个字段

4.2.2 条件表达式

4.2.3 数据统计与聚合

五、写在文末


一、es脚本语言介绍

1.1 什么是es脚本

Elasticsearch的 Scripting 是es支持的一种专门用于复杂场景下实现可编程的强大脚本功能。通过Scripting 脚本编程,可以实现更复杂的查询、数据处理、数据定制统计聚合以及柔性调整索引结构等。

1.2 es脚本支持的语言

es支持多种脚本语言,比如Painless,这是 Elasticsearch 自家开发的一种安全、高效并且易于学习的语言,其语法与Java很类似,编程中,也有注释、关键字、类型、变量、函数等,相较于其他支持的脚本语言性能更高,并且安全可靠,可以用于内联和存储脚本。

除了 Painless,Elasticsearch 也支持其他几种脚本语言,如 Lucene 的表达式语言,但 Painless 是推荐和默认的选项。具体来说,常用的支持语言如下:

  • groovy,ES1.4X~5.0默认的脚本语言;

  • Painless,Ja

828华为云征文|使用Flexus X实例集成ES搜索引擎 Flexus X实例是华为云推出的一款面向中小企业和开发者的柔性算力云服务器。Flexus X实例作为新一代云服务器,旨在为用户提供更加灵活和高效的计算资源管理方式。它具备多项独特优势,如柔性算力设计、智能感知业务负载、可灵活自定义vCPU内存配比等,以满足多样化的业务需求。包含有:柔性算力设计、智能感知业务负载、可灵活自定义vCPU内存配比、高性能、丰富的公共镜像、智能识别和全面的安全防护等特点,可以说是非常全面了 阅读详情

相关推荐

Elasticsearch搜索引擎

本篇博客系统地介绍了Elasticsearch 7.14.0在windows环境下安装、基本使用、Springboot集成Elasticsearch以及ELK搭建。

weixin_44490884的博客 1667

分布式搜索引擎之elasticsearch基本使用1

什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API分词器的作用是什么?创建倒排索引时对文档分词用户搜索时,对输入的内容分词IK分词器有几种模式?ik_smart:智能切分,粗粒度。

weixin_43956070的博客 1273

分布式搜索引擎之elasticsearch基本使用3

因为我们还需要部署kibana容器,因此需要让es和kibana容器互联。

weixin_43956070的博客 1430

elasticsearch(ES)简介及安装-----笔记

ES是一款非常强大的开源搜索引擎,可以帮助我们从海量数据中快速找到需要的内容。ES结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域。elasticsearch是elastic stack的核心,负责存储、搜索、分析数据。kibana负责数据可视化,elasticsearch负责存储、计算、搜索数据,logstash\Beats负责数据抓取。elasticsearch底层实现是Lucene计术。

weixin_44846205的博客 2385

13. 搜索引擎-ES(Elasticsearch)

Elasticsearch是一个开源的分布式搜索引擎,广泛应用于搜索、日志分析、监控等领域。它与MySQL等传统数据库不同,采用倒排索引机制实现高效搜索。Elasticsearch是ELK技术栈的核心组件,常与Logstash、Kibana等工具配合使用。

princemilo的博客 1717

【Elasticsearch】es脚本编程使用详解

es脚本编程使用详解

congge 6513

ECMAScript 详解

ECMAScript 标准定义了 JavaScript 语言的核心功能和语法,而 JavaScript 则是 ECMAScript 标准的具体实现之一。虽然 ECMAScript 是一个标准规范,JavaScript 则是其最著名的实现,但请注意,JavaScript 实际上包含了更多由浏览器或其他宿主环境提供的额外功能,如DOM操作、BOM(浏览器对象模型)等,这些并不属于 ECMAScript 标准。TC39 是 Ecma 国际中的一个技术委员会,负责推动 ECMAScript 标准的发展。

数字人生 1939

PPO(Proximal Policy Optimization)算法原理及实现,详解近端策略优化

接着上面的讲,PG方法一个很大的缺点就是参数更新慢,因为我们每更新一次参数都需要进行重新的采样,这其实是中on-policy的策略,即我们想要训练的agent和与环境进行交互的agent是同一个agent;与之对应的就是off-policy的策略,即想要训练的agent和与环境进行交互的agent不是同一个agent,简单来说,就是拿别人的经验来训练自己。举个下棋的例子,如果你是通过自己下棋来不断提升自己的棋艺,那么就是on-policy的,如果是通过看别人下棋来提升自己,那么就是off-policy的。

weixin_41106546的博客 9万+

基于STM32F407标准库与SimpleFOC实现无刷电机2804位置闭环控制的实战解析

本文详细解析了基于STM32F407标准库与SimpleFOC算法实现2804无刷电机位置闭环控制的实战过程。通过硬件选型、速度闭环调试到位置环PID参数整定,提供了完整的工程实现方案和抗饱和策略,帮助开发者掌握高精度电机控制技术。

oauth7security的博客 916

如何修复Windows卡在“正在准备Windows”的问题?这里有详细步骤

如何修复Windows卡在“正在准备Windows”的问题?这里有详细步骤。

wyxtx的博客 5656

MAPPO实战:从理论到代码的协作智能体训练指南

本文详细介绍了MAPPO算法在多智能体协作训练中的实战应用,从理论基础到代码实现全面解析。通过对比PPO与MAPPO的差异,深入讲解CTDE框架、网络架构设计、参数调优等关键环节,并提供实际项目中的调参经验和常见问题解决方案,帮助开发者快速掌握这一强化学习前沿技术。

weixin_42561040的博客 263

Globus数据下载全攻略:从零配置到批量下载大文件(附常见问题解决)

本文详细介绍了Globus数据下载的全流程,从零配置到批量下载大文件的实用技巧,包括环境准备、高级传输策略、性能优化及常见问题解决方案。Globus作为科研数据的高效传输工具,通过并行流传输和自动校验技术,显著提升大规模数据传输的效率和可靠性。

u9v0w的博客 661

多体动力学分析软件:ADAMS_(15).多体动力学建模与分析实践

1. 在工具栏中选择“Body”工具。2. 在图形窗口中点击鼠标左键选择刚体的中心点。3. 按住鼠标左键拖动,定义刚体的尺寸。4. 在弹出的属性对话框中设置刚体的质量、惯性参数等。关节是连接刚体的关键部件,定义关节时需要选择合适的关节类型并设置关节的参数。约束是对刚体运动的限制,定义约束时需要选择合适的约束类型并设置约束的参数。1. 在主菜单中选择“Model” > “Optimization” > “Objective Function”。

kkchenjj的博客 1310

Calibre 3Dstack Flow Example(5-2)

本文详细介绍了Calibre3DSTACK工具在3D-IC设计验证中的应用。主要内容包括:1)连通性检查(LVS)规则编写,重点说明connected命令的使用方法和多文本标签处理;2)设计规则检查(DRC)实现,涵盖层间距检查和焊盘重叠检查;3)系统网表生成器操作流程,从芯片导入到网连通性定义;4)两种规则文件语法(扩展语法和传统语法)的编写示例;5)验证报告文件格式解析。通过具体案例演示了如何建立完整的3D-IC验证流程,包括芯片定义、装配操作、电气连接验证和物理规则检查等关键步骤,为3D-IC设计验证

u013620135的博客 2335

【深度学习新浪潮】2025年末AI产业动态:泡沫争议、技术突破与2026投资机会解析

2025年末的AI产业在波动中完成了阶段性调整,技术突破与政策支持构筑了长期成长基石,而结构性分化与风险隐患则要求投资者更加精准地把握机会。2026年作为“风险资产的黄金年”,AI全产业链将持续成为资本聚焦的核心,无论是算力国产化的技术突破,还是应用场景的规模化落地,都有望催生一批优质企业。投资者需立足产业阶段特征,理性看待短期波动,聚焦核心技术与政策红利,方能在AI产业的成长浪潮中把握确定性机会。

专注:太空算力、AI infra、异构调度、大模型成本工程 1809

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: 【云原生】Docker Compose 从入门到实战使用详解
下一篇: 【大前端】Vue3 工程化项目使用详解
逆风飞翔的小叔
逆风飞翔的小叔 新星创作者: 大数据技术领域 新星创作者: 大数据技术领域
博客等级 码龄5年 1万+粉丝 215原创
评论 74
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆风飞翔的小叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值