当前位置: 首页 > news >正文

ElasticSearch映射与模板介绍

一、前言

前面有相关系列文章介绍了ES的基本概念和各种版本SDK的使用,ES现在已升级到8.5版本,有些概念和SDK用法都有很大变化,后续ES相关的文章会以8.3版本为基准介绍一些实际中应用需要掌握的概念以及一些比较实际的例子。

二、映射

ES环境搭建好后最先要考虑的就是如何定义映射,映射相当于表结构,它是定义文档及其包含的字段如何存储在索引库的过程。

映射分为动态映射和显式映射

1、动态映射

使用动态映射在写入索引数据时不需要先创建索引和定义字段。字段和字段类型会根据规则自动创建。

在kinaba的dev tools中直接写入索引数据

然后我们用命令get /dy_idx/_mapping 查一下索引结构

返回几个字段表示它会根据规则自动给你设置了类型,count是long类型,create_date是date类型,memo是text类型。

然后我们再写入一条数据,把count改成字符串

这时会报错,因为字段类型根据第一次写入已经设置好了,后面写入的数据会受类型的约束。

映射规则如下,大致了解一下就行:

默认是采用"dynamic":true规则。

注:另外可以自己定义日期和数字检测规则或关闭掉自动检测。

2、显式映射

写入数据前需要先定义好映射结构,定义后写入数据受类型约束,一般使用这种方式定义会更简单一些。

写入数据

注:因为定义中birth字段包含了时间,写数据时也必须符合格式带上时间。

3、ElasticSearch字段类型

常用类型

     binary(存base64结果值或二进制值)、boolean、keyword(不分词不能进行全文检索)、numbers(long、double)、date、alias(别名)、text(存储时会分词并建立索引,适合全文搜索)。

对象和关系类型

    object(json对象)、nested(嵌套)、array。

其它类型

    range、rank_feature、token_count、ip、geo_point、geo_shape

三、索引模板

这里我们仅介绍静态模板,动态模板比较复杂暂时也用不到。

索引模板的使用场景:比如我们的库存快照数据需要按天创建索引存储数据,即每天一个索引文件,如果没有索引模板,我们就需要每天定时创建索引映射,但有了索引模板,你插入数据时会检查有没有此索引名称匹配的索引模板,如果有就按模板创建索引映射最后插入数据。

1、创建模板

注:这里index_patters 设置为正则匹配。

2、写入数据

2022年11月15日一个索引文件

2022年11月16日一个索引文件

注:下面这个为批量写入的语法,第一条store_id为"aa"写入会失败,因为受到索引模板字段类型的约束。

在kinaba的Index Manager中可以看到生成了两个索引文件。

相关文章:

ElasticSearch映射与模板介绍

一、前言 前面有相关系列文章介绍了ES的基本概念和各种版本SDK的使用,ES现在已升级到8.5版本,有些概念和SDK用法都有很大变化,后续ES相关的文章会以8.3版本为基准介绍一些实际中应用需要掌握的概念以及一些比较实际的例子。 二、映射 ES环…...

通过 Azure 日志分析加强云安全

Microsoft Azure 云服务在安全日志存储、访问、可伸缩性、降低成本和易于部署方面提供了巨大的优势,因此在企业中很受欢迎。 Microsoft Azure 日志记录工具(如 Log360)可帮助管理 Azure 云基础结构中所有设备和应用程序(如虚拟机…...

[H5动画制作系列 ]变量,帧频,监听器等的生命周期基础测试

模式:按照上述抓图,actions层,1帧,写初始化代码,10帧写返回代码到2帧代码,2-10帧之间一直循环。1帧及10帧代码如下: 如果程序在1-10之间循环,会反复创建变量i,多个监听器等。所以,第一帧最好执行一次即可,程序在2-10帧之间一直循环。...

基于SpringBoot的服装生产管理系统的设计与实现

目录 前言 一、技术栈 二、系统功能介绍 登录界面的实现 系统主界面的实现 用户管理模块的实现 人事安排管理模块的实现 工资管理模块的实现 考勤管理模块的实现 样板管理模块的实现 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 本协力服装厂服装生…...

动态内存操作(2)

接上一篇文章http://t.csdn.cn/1ONDq&#xff0c;这次我们继续讲解关于动态内存的相关知识。 一、常见的动态内存错误 1.对NULL指针进行解引用操作 #include<stdio.h> #include<stdlib.h> #include<limits.h> int main() {int* p (int*)malloc(INT_MAX/4);…...

Windows-Delphi 窗口置顶

露从今夜白&#xff0c;月是故乡明。 1.Delphi将窗口置顶 if topHwnd <> 0 thenbeginSetWindowPos(topHwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);tmr1.Enabled : True;end; 其中topHwnd是目标窗口的句柄。 2.窗口取消置顶 if topHwnd <> 0 th…...

CVE-2020-11978 Apache Airflow 命令注入漏洞分析与利用

简介 漏洞软件&#xff1a;Apache Airflow影响版本&#xff1a;< 1.10.10 环境 Vulhub 漏洞测试靶场 复现步骤 进入 /root/vulhub/airflow/CVE-2020-11978/ 目录运行以下命令启动环境 # 初始化数据库 docker compose run airflow-init # 开启服务 docker compose up -…...

面试经典算法1:DFS

一、前言 1、题目描述和代码仅供参考&#xff0c;如果有问题欢迎指出 2、解题代码采用acm模式&#xff08;自己处理输入输出&#xff09;&#xff0c;不采用核心代码模式&#xff08;只编程核心函数&#xff09; 3、解题代码采用C语言&#xff08;ai一键翻译任意语言&#xff…...

Windows系统利用cpolar内网穿透搭建Zblog博客网站并实现公网访问内网!

文章目录 1. 前言2. Z-blog网站搭建2.1 XAMPP环境设置2.2 Z-blog安装2.3 Z-blog网页测试2.4 Cpolar安装和注册 3. 本地网页发布3.1. Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1. 前言 想要成为一个合格的技术宅或程序员&#xff0c;自己搭建网站制作网页是绕…...

SmartCode ViewerX VNC 3.11 Crack

SmartCode ViewerX VNC 查看器 ActiveX 轻松地将 VNC 查看器功能添加到您的应用程序中 SmartCode ViewerX VNC Viewer ActiveX 使开发人员可以使用一组直观的 ActiveX 属性和方法完全访问 VNC 查看器功能。借助ViewerX控件&#xff0c;开发人员可以轻松地为其应用程序提供屏幕共…...

傻瓜式Java操作MySQL数据库备份

文章目录 前言存储数据库存储数据表 前言 数据库备份是开发工作中经常要做的事情&#xff0c;好处是mysql提供了一个非常好的命令 mysqldump&#xff0c;直接调用它就可以将数据以sql文件的形式备份出来。但是直接写命令非常不方便&#xff0c;遇到定时备份或者指定备份那么就需…...

redis常用操作命令

日升时奋斗&#xff0c;日落时自省 注&#xff1a;命令区分有点细&#xff0c;择取自己需要的即可 目录 1、单机架构 2、数据库和应用分离 3、分布式基本概念 3.1、应用&#xff08;Application&#xff09;/系统(System) 3.2、模块&#xff08;Module&#xff09;/组件&…...

pytorch gpu安装

cuda https://blog.csdn.net/qq_51570094/article/details/124148671 https://blog.csdn.net/zxdd2018/article/details/127705627 cudnn https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#installlinux-tar 更改cudnn 保证文件目录中只有一个解压后…...

uni跳转页面不缓存上一个页面的方法

一、前言 要实现一个需求&#xff0c;从a页面跳转到b页面&#xff0c;从b页面跳转到c页面&#xff0c;然后按返回&#xff0c;从c页面直接返回a页面&#xff08;不返回b页面&#xff09; a->b->c c->a 二、实现方法 前端框架使用的是uni-app&#xff0c;我们修改…...

排序:败者树和置换选择排序(解决外部排序中的优化问题)

1.算法目的&#xff08;败者树&#xff09; 解决多路平衡归并带来的问题。 在外部排序中&#xff0c;使用k路平衡归并策略, 选出一个最小元素需要对比关键字(k-1)次&#xff0c; 导致内部归并所需时间增加。&#xff08;可用“败者树”进行优化&#xff09; 2.败者树的定义 …...

【超分:光谱响应函数】

Spectral Response Function-Guided Deep Optimization-Driven Network for Spectral Super-Resolution &#xff08;光谱响应函数引导的深度优化驱动网络光谱超分辨&#xff09; 高光谱图像&#xff08;HSI&#xff09;是许多研究工作的关键。光谱超分辨率&#xff08;SSR&a…...

IoT 物联网 JavaScript 全栈开发,构建家居环境监控系统实战

智能家居环境监测端到端场景&#xff0c;全栈JavaScript开发&#xff0c;串联Ruff硬件、温湿度和空气质量传感器、阿里云 IoT、Serverless函数计算、百度ECharts可视化、最终以微信小程序形式在微信里实时展示家中实时温度&#xff0c;湿度&#xff0c;PM2.5指数。 01 技术架构…...

jupyter notebook可以打开,但无法打开.ipynb文件,报错500 : Internal Server Error

1、错误信息 2、解决办法 打开Anaconda Promt界面&#xff0c;进入自己的虚拟环境。在命令行输入以下指令&#xff1a; pip install --upgrade nbconvert...

latex图片编号+表格编号

对编号重新自定义 \renewcommand{\thefigure}{数字编号x}重新命名图的编号\renewcommand{\thetable}{数字编号x}重新命名表的编号编号含义 平时看书经常看到“图1.2”这样的编号&#xff0c;含义是第1章的第2幅插图&#xff1b;或者“图1.1.2”&#xff0c;含义是第1章第1节的…...

【1day】用友时空KSOA平台 imagefield接口SQL注入漏洞学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录...

利用Taotoken模型广场为不同业务场景快速选型合适模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken模型广场为不同业务场景快速选型合适模型 为聊天机器人、代码生成助手或内容创作工具挑选一个合适的大模型&#xff0…...

计网实验一

课程实验报告专 业&#xff1a;物联网工程 班 级&#xff1a;2303学 号&#xff1a;231040700302 姓 名&#xff1a;杜子健实验名称&#xff1a;实验一实验类型&#xff1a;实验实验日期&#xff1a;2025年11月12日一 实…...

基于Petals分布式网络的大语言模型聊天应用后端部署与API调用实战

1. 项目概述&#xff1a;一个基于分布式协作的大语言模型聊天应用后端最近在折腾大语言模型应用的时候&#xff0c;发现了一个挺有意思的项目&#xff1a;chat.petals.dev。这不仅仅是一个开源的聊天机器人Web应用&#xff0c;更关键的是&#xff0c;它背后连接着一个名为Petal…...

为 OpenClaw 配置 Taotoken 以驱动你的 AI 智能体工作流

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 为 OpenClaw 配置 Taotoken 以驱动你的 AI 智能体工作流 如果你正在使用 OpenClaw 框架构建 AI 智能体&#xff0c;并且希望它能通…...

C++多线程编程:深入剖析std::thread的使用方法

一、线程std::thread简介std::thread 是 C11 中引入的一个库&#xff0c;用于实现多线程编程。它允许程序创建和管理线程&#xff0c;从而实现并发执行。std::thread 在 #include<thread>头文件中声明&#xff0c;因此使用 std::thread 时需要包含 #include<thread>…...

基于AutoHotkey v2的Cursor AI编程效率工具:CapsLock快捷键方案详解

1. 项目概述&#xff1a;当CapsLock键成为你的AI编程副驾如果你是一名Windows用户&#xff0c;同时又是Cursor编辑器的深度使用者&#xff0c;那么你很可能和我一样&#xff0c;每天都在重复着一些机械操作&#xff1a;选中代码、复制、切换到AI聊天框、粘贴、再敲入一段提示词…...

CodePush-Server安全配置最佳实践:保护你的热更新服务

CodePush-Server安全配置最佳实践&#xff1a;保护你的热更新服务 【免费下载链接】code-push-server CodePush service is hot update services which adapter react-native-code-push and cordova-plugin-code-push - 热更新 项目地址: https://gitcode.com/gh_mirrors/co/…...

OctoSuite代码审查:深入理解GitHub数据模型设计的5个关键要点

OctoSuite代码审查&#xff1a;深入理解GitHub数据模型设计的5个关键要点 【免费下载链接】octosuite Terminal-based toolkit for GitHub data analysis. 项目地址: https://gitcode.com/gh_mirrors/oc/octosuite OctoSuite是一个强大的终端GitHub数据分析工具包&#…...

Simba MCP Server:用AI助手对话式驱动贝叶斯营销组合模型分析

1. 项目概述&#xff1a;当贝叶斯营销组合模型遇上AI助手如果你是一名市场分析师、营销科学家&#xff0c;或者任何需要回答“我的营销预算到底花得值不值”的人&#xff0c;那么你对营销组合模型&#xff08;MMM&#xff09;一定不陌生。这玩意儿是量化不同营销渠道&#xff0…...

BG3模组管理器版本兼容性终极指南:告别游戏崩溃和模组失效

BG3模组管理器版本兼容性终极指南&#xff1a;告别游戏崩溃和模组失效 【免费下载链接】BG3ModManager A mod manager for Baldurs Gate 3. This is the only official source! 项目地址: https://gitcode.com/gh_mirrors/bg/BG3ModManager BG3模组管理器是《博德之门3》…...