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

打印 上一主题 下一主题

主题 846|帖子 846|积分 2538

目录
一、es脚本语言介绍
1.1 什么是es脚本
1.2 es脚本支持的语言
1.3 es脚本语言特点
1.4 es脚本使用场景
二、环境准备
2.1 docker搭建es过程
2.1.1 拉取es镜像
2.1.2 启动容器
2.1.3 配置es参数
2.1.4 重启es容器并访问
2.2 docker搭建kibana过程
2.2.1 拉取kibana镜像
2.2.2 启动kibana容器
2.2.3 修改配置文件
2.2.4 重启容器并访问
三、Scripting 使用详解
3.1 数据准备
3.1.1 创建索引
3.1.2 添加测试数据
3.2 es脚本常用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,J

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

圆咕噜咕噜

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表