了解 ignore_above 参数对 Elasticsearch 中磁盘使用的影响

在 Elasticsearch 中,ignore_above 参数允许你忽略(而不是索引)长于指定长度的字符串。 这对于限制字段的大小以避免性能问题很有用。 在本文中,我们将探讨 “ignore_above” 参数如何影响 Elasticsearch 中字段的大小,并将比较两个不同的 ignore_above 参数之间的磁盘使用情况。

首先,我们创建一个名为 “test_index” 的索引,其中包含三个字段:“field_ignore_above_4”、“field_ignore_above_256” 和 “field_ignore_above_512”。 每个字段的类型都是 “keyword”,并且具有不同的 “ignore_above” 设置:

PUT test_index
{"mappings": {"properties": {"field_ignore_above_4": {"type": "keyword","ignore_above": 4},"field_ignore_above_256": {"type": "keyword","ignore_above": 256},"field_ignore_above_512": {"type": "keyword","ignore_above": 512}}}
}

接下来,我们将文档插入到 `test_index` 中:

PUT test_index/_doc/1
{"field_ignore_above_4": "some value","field_ignore_above_256": "some value","field_ignore_above_512": "some value"
}

当我们对 “test_index” 执行搜索时,我们可以看到 “field_ignore_above_4” 被忽略,因为它的值超出了 “ignore_above” 限制:

GET test_index/_search

响应显示 “field_ignore_above_4” 被忽略。这是因为 "some value" 的字符串长度超过 4。

我们做如下的查询:

GET test_index/_search
{"query": {"term": {"field_ignore_above_256": {"value": "some value"}}}
}

上面显示是有一个文档的。我们如下针对字段  field_ignore_above_4 来做查询:

GET test_index/_search
{"query": {"term": {"field_ignore_above_4": {"value": "some value"}}}
}

上面是不显示任何的文档的。这说明这个 field_ignore_above_4 字段确实是被忽略了。

现在,我们可以使用 “_disk_usage” API 计算字段的大小:

POST /test_index/_disk_usage?run_expensive_tasks=true&filter_path=**.fields.field*

响应提供有关每个字段大小的详细信息:

{"test_index": {"fields": {"field_ignore_above_256": {"total": "30b","total_in_bytes": 30,"inverted_index": {"total": "19b","total_in_bytes": 19},"stored_fields": "0b","stored_fields_in_bytes": 0,"doc_values": "11b","doc_values_in_bytes": 11,"points": "0b","points_in_bytes": 0,"norms": "0b","norms_in_bytes": 0,"term_vectors": "0b","term_vectors_in_bytes": 0,"knn_vectors": "0b","knn_vectors_in_bytes": 0},"field_ignore_above_512": {"total": "30b","total_in_bytes": 30,"inverted_index": {"total": "19b","total_in_bytes": 19},"stored_fields": "0b","stored_fields_in_bytes": 0,"doc_values": "11b","doc_values_in_bytes": 11,"points": "0b","points_in_bytes": 0,"norms": "0b","norms_in_bytes": 0,"term_vectors": "0b","term_vectors_in_bytes": 0,"knn_vectors": "0b","knn_vectors_in_bytes": 0}}}
}

从响应中,我们可以看到 field_ignore_above_256 和 field_ignore_above_512 的总大小相同,均为 30 字节。

有趣的是,“field_ignore_above_4” 不包含在磁盘使用统计信息中,因为它在索引过程中由于 “ignore_above” 设置而被忽略。 这演示了如何使用 “ignore_above” 参数来控制字段的大小并优化 Elasticsearch 存储的使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/189072.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django-Redis

NoSQL:(不支持sql语句) Redis MongoDB Hbase hadoop Cassandra hadoop key-value数据库(非关系性数据库) redis优势 性能高,读取速度快,存在内存中 Redis应用场景 用来做缓存 在某些特定场景下替代传统数据库---社交…

SqlServer_分页_OFFSET_FETCH

使用SQL server分页 使用SQL server分页的时候踩了一个坑&#xff1a; 用mybatis-plus分页的时候始终报错 代码&#xff1a;Page<SystemDictCatalog> page new Page<>(data.getPage(), data.getLimit()); QueryWrapper<SystemDictCatalog> wrapper new Qu…

python接口自动化之allure报告优化,并且教你用后缀为bat文件执行pytest指令,来运行用例

1.定制化标签 使用方法参数值参数说明allure.epic()项目名称敏捷里面的概念&#xff0c;定义史诗&#xff0c;往下是featureallure.feature()模块名称功能点的描述&#xff0c;往下是storyallure.story()接口名称用户故事&#xff0c;往下是titleallure.title(用例的标题)用例…

matlab 路面裂缝检测识别系统设计GUI

1、内容简介 略 23-可以交流、咨询、答疑 2、内容说明 路面裂缝检测识别系统设计GUI 基于matlab的GUI设计路面裂缝检测识别系统 matlab、GUI、直方图、裂缝检测、二值化 3、仿真分析 4、参考论文 略 链接&#xff1a;https://pan.baidu.com/s/1AAJ_SlHseYpa5HAwMJlk…

电话号码的字母组合(C++实现)

电话号码的字母组合 题目代码思路及代码讲解代码&#xff08;有注释版&#xff09; 题目 电话号码的字母组合 代码 class Solution {const char* numsStrArr[10]{"","","abc","def","ghi","jkl","mno"…

ringboot-cve_2021_21234:latestSpring Boot 目录遍历 (CVE-2021-21234)漏洞复现

Spring Boot 目录遍历 &#xff08;CVE-2021-21234&#xff09;漏洞复现 Spring-boot-actuator-logview 0.2.13之前版本存在路径遍历漏洞&#xff0c;攻击者可通过该缺陷读取系统任意文件。 名称: Spring Boot 目录遍历 &#xff08;CVE-2021-21234&#xff09; 描述: Sprin…

Kubernetes(K8s)Pod控制器详解-06

Pod控制器详解 Pod控制器介绍 Pod是kubernetes的最小管理单元&#xff0c;在kubernetes中&#xff0c;按照pod的创建方式可以将其分为两类&#xff1a; 自主式pod&#xff1a;kubernetes直接创建出来的Pod&#xff0c;这种pod删除后就没有了&#xff0c;也不会重建 控制器创建…

【MySQL】MySQL安装 环境初始化

MySQL安装 MYSQL官网 安装完成后,傻瓜下一步即可 配置一下环境变量即可 (1) 初始化MySQL, 管理员身份运行 mysqld --initialize-insecure(2) 注册 mysqld mysqld -install# 如果记录以前的版本执行下面指令 mysqld -remove(3) 启动MySQL服务 // 启动mysql服务 net start …

adb环境搭建(adb下载与安装)

文章目录 前言一、adb下载二、adb安装1.将下载的安装包解压缩2.将解压缩后的文件夹放到自己想存放的目录下&#xff08;不要放到带有中文的目录下&#xff09;——我这放到D盘根目录下3.配置环境变量3.1.鼠标放到 "此电脑"→鼠标右击→选择属性3.2.点击 "高级系…

pycharm closing卡住 解决办法

别处看到的&#xff0c;亲测有效 1.升级 pycharm 到 2023.3 2.pycharm 主页 Help -> Find Action -> 输入 Registry -> 禁用ide.await.scope.completion PyCharm 2023.1.2版本关闭后一直显示正在关闭项目 - 知乎

matlab基于线性二次调节器(LQR)法实现机器人路径规划可变轨迹跟踪

1、内容简介 略 可以交流、咨询、答疑 2、内容说明 基于线性二次调节器(LQR)法实现机器人路径规划可变轨迹跟踪 3、仿真分析 略 load path.mat %% 轨迹处理 % 定义参考轨迹 refPos_x path(:,1); refPos_y path(:,2); refPos [refPos_x, refPos_y];% 计算航向角和曲率 …

java设计模式学习之【对象池模式】

文章目录 引言对象池模式简介定义与用途实现方式 使用场景优势与劣势对象池模式在Spring中的应用JDBC对象池示例代码地址小结 引言 对象池模式在资源管理和性能优化方面发挥着重要作用。这种模式通过重复使用已经初始化的对象&#xff0c;而不是频繁创建和销毁&#xff0c;减少…

解决tailwind与element样式冲突

解决tailwind与element样式冲突 一、问题描述1.环境&#xff1a;2.问题3.原因 二、解决方法1.在tailwind.config.js中关闭默认样式2.拷贝Tailwind默认样式修改并引用3.在main.js中引用preflight.css 一、问题描述 1.环境&#xff1a; TailwindCSS Element plus 2.问题 el-…

现代 C++ 函数式编程指南

现代 C 函数式编程指南 什么是 柯里化 &#xff08;Curry&#xff09;什么是 部分应用 &#xff08;Partial Application&#xff09; 二元函数 &#xff08;Partial Application&#xff09;参数排序 &#xff08;Partial Application&#xff09; 应用场景 计算碳衰减周期求年…

基于Java SSM框架实现汽车在线销售系统项目【项目源码+论文说明】

基于java的SSM框架实现汽车在线销售系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人们所认识&a…

quick_快应用_广告接入

目录 接入厂商广告oppo广商接入广告banner广告信息流广告[1] 组件封装[2] 渲染数据[3] 测试[4] 样式调整[5] 加载失败[6] 预加载[7] 应用要素信息 接入厂商广告 广告接口 [1] 接口声明 {"name":"service.ad"}[2] 导入模块 import ad from service.ad 或 c…

[FUNC]判断窗口在哪一个屏幕上

#Requires AutoHotkey v2.0#z:: { ToolTip "Notepad窗口所在显示屏是&#xff1a;" GetMonitor() } GetMonitor() {CoordMode("Mouse", "Screen"); MouseGetPos &mx, &myWinGetPos &mx, &my,,,"ahk_class Notepad"…

【小布_ORACLE笔记】Part11-6 RMAN Backups

【小布_ORACLE笔记】Part11-6 RMAN Backups 1.track文件的作用 当做差异性备份时&#xff0c;server process对应的RMAN客户端的server process就不用去每个块每个块的检查&#xff0c;只要到trackfile 里面去读一下&#xff0c;看哪个块改变了就直接把哪个块备份下来&#x…

matlab 混沌动力学行为-分岔图-李雅普指数等

1、内容简介 略 24-可以交流、咨询、答疑 2、内容说明 混沌动力学行为-分岔图-李雅普指数等 包含各种类型的混沌模型求解&#xff0c;包含其分叉图、李雅普指数等 混沌、分叉图、李雅普指数 3、仿真分析 略 4、参考论文 略 链接&#xff1a;https://pan.baidu.com/…

无限移动的风景 css3 动画 鼠标移入暂停

<style>*{margin:0;padding:0;/* box-sizing: border-box; */}ul{list-style: none;}#nav{width:900px;height:100px;border:2px solid rgb(70, 69, 69);margin:100px auto; overflow: hidden;}#nav ul{animation:moving 5s linear infinite;width:200%; /*怎么模拟动画…