elasticsearch映射及字段类型

news2024/11/18 3:40:16

查询映射关系

类型上对字段的类型进行映射,我们前面知道可以通过get方法请求_mapping查询指定类型的映射关系:

此语句可以查询get-together索引下的group类型的映射关系

更新映射关系

使用put方法可以更新类型的映射

这里指定了new-events类型的字段映射关系,声明了一个新的字段host,类型上String

值得思考的是,已经有其他索引了,这个新增的映射关系,会生效吗?答案是肯定的,ES会对现有的映射关系和新增的映射关系做一个merge

如果是对映射字段的类型进行修改,这样是无法操作的。需要删除数据,重新定义映射关系,并重新索引。

常见的字段类型

字符串

字符串在进行索引的时候,默认将单词变为小写,然后逐个添加索引

可以通过index选项指定索引方式

  1. analyzed: 默认的方式,逐个单词变小写建立索引

  1. not_analyzed:整个字符串整体建立索引

  1. no:不建立索引

数值类型

支持的数值类型和JAVA完全一致,byte,short,int,long,float,double

ES自己也会默认使用long和double识别数值

日期

日期类型可以使用默认的ISO 8601格式

也可以使用format指定格式

布尔类型

默认支持true和false

数组类型

数组可以使用[]进行索引

声明映射关系时,使用的是基础类型:

多字段

将某一字段建立索引的同时,使用不同的策略生成新的映射关系

此处对tags建立了两个匹配关系,一个是analyzed,对每一个单词建立索引,另外一个是针对整体的字段进行映射,not_analyzed

存储原始json文档

使用_source可以存储原始文档,便于文档的更新操作,

默认_source的enabled是true,表示支持存储原始json

在查询的时候就会返回原始文档的内容:

检索时,_source的作用

实际上_source存储了原始数据,我们在搜索时可以指定字段,而不是完整的_source

这样返回的就是指定的字段了

我们也可以在更新映射关系的时候,指定哪些字段需要存储:

这里使用了store属性,标记了name需要存储下来

检索时,_all的作用

默认不指定字段进行搜索的时候,检索范围是所有的字段

对于不知道从哪里查询的场景,这种是适用的

如果所有的检索场景都是指定字段的,可以使用enabled关闭所有字段检索:

当然,可以使用include_in_all来标记是否支持再全字段检索中使用:

如果不指定字段查询,_all检索的范围将不再包含organizer字段

在索引时,指定id

我们前面建立索引的时候使用的是put方法,指定了文档的id

此时的id就是指定的1st

由ES自主生成文档id

可以使用POST方法,让ES自动生成文档的id

注意,url中不再指定id,此时文档的id由ES生成

检索时,支持指定索引

默认情况下,不支持直接指定索引查询

可以通过配置_index的enabled来开启支持

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

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

相关文章

【C语言】qsort——回调函数

目录 1.回调函数 2.qsort函数 //整形数组排序 //结构体排序 3.模拟实现qsort //整型数组排序 //结构体排序 1.回调函数 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来…

基础篇——如何在HTML元素中设置CSS样式

CSS Id 和 Class选择器 如果你要在HTML元素中设置CSS样式,你需要在元素中设置"id" 和 "class"选择器。 id 选择器 id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。 HTML元素以id属性来设置id选择器,CSS 中 id 选择器以 "#" 来定义…

四、Java框架之SpringMVC2_SSM整合

黑马课程 文章目录1. SSM整合案例1.1 创建web项目,并导入坐标1.2 完整的配置类SpringConfigJdbcConfigMyBatisConfigSpringMvcConfigSpringMvcSupportServletConfig1.3 创建数据库及表1.4 编写功能模块domain包dao包service包controller包1.5 接口测试2. 表现层与前…

XSS跨站脚本攻击剖析与防御:初识XSS

目录 跨站脚本介绍 1. 什么是XSS跨站脚本 2. XSS跨站脚本实例 3. XSS漏洞的危害 XSS的分类 1. 反射型XSS 2. 持久性XSS XSS构造 1. 利用< >标记注射Html /Javascript 2. 利用HTML标签属性值执行XSS 3. 空格回车Tab 4. 对标签属性值转码 5. 产生自己的事件…

PorterDuffXfermode与圆角图片

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 圆角图片 在项目开发中&#xff0c;我们常用到这样的功能&#xff1a;显示圆角图片。 这个是咋做的呢&#xff1f;我们来瞅瞅其中一种实现方式 /*** param bitmap 原图* p…

ChatGPT的注册与使用方法

ChatGPT无疑是最近最火的一个大模型AI应用,当艺术家还在跟AI争论AI绘画的问题时,NLP领域中的ChatGPT大模型应用,仿佛一下子替代了AI绘画应用,成为了最新争论的话题。最近也看到很多人在讨论ChatGPT,当然,很多人就算不是人工智能领域的也开始讨论ChatGPT,可见ChatGPT的风…

代替swagger的api接口神器

自动化API文档-APIFOX 文章作者&#xff1a;老杨 一&#xff1a;概述 大家在后端开发开发过程中&#xff0c;最痛恨的两天事情&#xff1a;1.写文档&#xff0c;2.别人不写文档。而我们后端开发&#xff0c;必定经历的事情就是要和前端&测试对接&#xff0c;我们需要把我…

vue104-123

影院组件 更改滚动条范围&#xff1a; 动态结算高度 //动态结算高度 this.height document.documentElement.clientHeight-选项卡高度this.height document.documentElement.clientHeight- document.querySelector(footer).offsetHeight px组件库elementUI 网址elementUI…

Docker Compose编排

一、概念1、Docker Compose是什么Docker Compose的前身是Fig&#xff0c;它是一个定义及运行多个Docker容器的工具通过 Compose&#xff0c;不需要使用shell脚本来启动容器&#xff0c;而使用 YAML 文件来配置应用程序需要的所有服务然后使用一个命令&#xff0c;根据 YAML 的文…

Spring Boot课程评价管理系统

文章目录主要功能截图&#xff1a;主要代码展示数据库设计设计总结项目地址&#x1f345; 作者主页&#xff1a;Java韩立 &#x1f345; 简介&#xff1a;Java领域优质创作者&#x1f3c6;、【java韩立】公号作者✌ 简历模板、学习资料、面试题库【关注我&#xff0c;都给你】 …

handler解析(2) -Handler源码解析

目录 基础了解&#xff1a; 相关概念解释 整体流程图&#xff1a; 源码解析 Looper 总结&#xff1a; sendMessage 总结&#xff1a; ThreadLocal 基础了解&#xff1a; Handler是一套 Android 消息传递机制,主要用于线程间通信。实际上handler其实就是主线程在起了一…

聊聊并发与锁

持续坚持原创输出&#xff0c;点击蓝字关注我吧1.并发与并行并发可以充分地利用 CPU 资源&#xff0c;一般都会使用多线程实现。多线程的作用是提高任务的平均执行速度&#xff0c;但是会导致程序可理解性变差&#xff0c;编程难度加大。关于对并发与并行的概念&#xff0c;大家…

共享模型之无锁(三)

1.原子累加器 示例代码: public class TestAtomicAdder {public static void main(String[] args) {for (int i 0; i < 5; i) {demo(() -> new AtomicLong(0),(adder) -> adder.getAndIncrement());}for (int i 0; i < 5; i) {demo(() -> new LongAdder(),(…

C++复习笔记6

1.String类的实现 注意深浅拷贝&#xff0c; C语言字符串拼接函数strcat() #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<vld.h> #include<assert.h> using namespace std;class String {friend ostream& operator<<(ostream &am…

【DSView逻辑分析抓取波形CAN步骤-硬件连接-数据解析-底层波形认识CAN-工具使用】

【DSView逻辑分析抓取波形CAN步骤-硬件连接-数据解析-底层波形认识CAN】1、概述2、实验环境3、写在前面的一个问题4、实验准备&#xff08;1&#xff09;硬件连接1&#xff09;CAN卡连接开发板&#xff08;2&#xff09;逻辑分析仪连接开发板&#xff08;2) CAN卡连接软件&…

Linux 文件锁 - fcntl

什么是文件锁&#xff1f; 即锁住文件&#xff0c;不让其他程序对文件做修改&#xff01; 为什么要锁住文件&#xff1f; 案例&#xff0c;有两个程序&#xff0c;都对一个文件做写入操作。 #include <unistd.h> #include <stdio.h> #include <stdlib.h> …

【集群】Slurm作业调度系统的使用

最近使用集群进行实验&#xff0c;记录并学习集群系统进行深度学习的实验过程。集群所使用的作业调度系统为Slurm&#xff0c;这里记录下使用的常用命令和一些注意事项。 Slurm简介 Slurm是一个开源&#xff0c;容错&#xff0c;高度可扩展的集群管理和作业调度系统&#xff0…

excel数据处理: 如何用99个空格提取单元格数据

脑洞大开&#xff0c;提取单元格数据用99个空格就成&#xff01;真想扒开那些大神的脑袋看看&#xff0c;是怎么想出这样匪夷所思的方法的。需要从规格型号中提取容值、封装、耐压三组数据&#xff0c;如下&#xff1a;数据源在A列&#xff0c;数据量很大&#xff0c;需要提取的…

微信小程序Springboot短视频分享系统

3.1小程序端 用户注册页面&#xff0c;输入用户的个人信息点击注册即可。 注册完成后会返回到登录页面&#xff0c;用户输入自己注册的账号密码即可登录成功 登录成功后我们可以看到有相关的视频还有视频信息&#xff0c;我的信息等。 视频信息推荐是按照点击次数进行推荐的&am…

Zabbix 构建监控告警平台(四)

Zabbix ActionZabbix Macros1.Zabbix Action 1.1动作Action简介 当某个触发器状态发生改变(如Problem、OK)&#xff0c;可以采取相应的动作&#xff0c;如&#xff1a; 执行远程命令 邮件&#xff0c;短信&#xff0c;微信告警,电话 1.2告警实验简介 1. 创建告警media type&…