Elasticsearch映射定义

文章目录

认识映射

映射类似于关系型数据库中的Schema(模式)。Schema在关系型数据库中是指库表包含的字段及字段存储类型等基础信息。

映射定义由两部分组成:元字段、数据类型字段。

元字段

元字段用于自定义关于处理文档的相关元数据。元字段包括文档的index、id和source等。各种元字段都以一个下划线开头,例如_id和_source。

常见元字段类型如下。

(1)标识元字段

❑_index:表示文档所属的索引。

❑_id:表示文档的ID

2)文档源元字段

❑_source:表示代表文档正文的原始JSON对象。

❑_size:表示source字段的大小(以字节为单位)。

(3)索引元字段

❑_field_names:表示给定文档中包含非空值的所有字段。

❑_ignored:表示由于设置ignore_malformed而在索引时被忽略的字段。

(4)路由元字段

❑_routing:用于将给定文档路由到指定的分片。

(5)其他元字段

❑_meta:表示应用程序特定的元数据,通俗地解读为可用于给索引加必要注释信息。❑_tier:指定文档所属索引的数据层级别,如在查询文档时可以指定data_hot、data_warm、data_cold等。

数据类型

1.基本数据类型

这是指大多数系统都支持的基本数据类型,举例如下。

❑binary:编码为Base64字符串的二进制类型。

❑boolean:仅支持true和false的布尔类型。

❑keyword:支持精准匹配的keyword类型、const_keyword类型和wildcard类型。❑number:数值类型,如integer、long、float、double等。

❑date:日期类型,包括date和date_nanos。

❑alias:别名类型,区别于索引别名,此处的别名是字段级别的别名。

❑text:全文检索类型。

2.复杂数据类型

复杂数据类型是常见数据类型的组合,举例如下。

❑数组类型:Array。

❑JSON对象类型:Object。

❑嵌套数据类型:Nested。

❑父子关联类型:Join。

❑Flattened类型:将原来一个复杂的Object或者Nested嵌套多字段类型统一映射为扁平的单字段类型。

注意:

1)严格来讲,Elasticsearch无专门的数组类型。

2)任何类型都可以包含一个或者多个元素,当数据包含多个元素的时候,它就是数组类型。

3)数组类型要求一个组内的数据类型一致。

专用数据类型

❑坐标数据类型:用于保存地理位置详细信息,例如表示经纬度信息的geo_point数据类型。

❑IP类型:表示IPV4或IPV6地址。

❑completion类型:是Elasticsearch中的一种专用字段类型,旨在实现高效的自动补全功能。该类型的设计理念在于快速查找和返回符合查询条件的建议,从而实现如搜索框自动补全等交互性强的功能,极大提升用户体验。

多字段类型

相关推荐
做个文艺程序员9 小时前
第03篇:深入 Mapping 与数据类型设计——ES Schema 设计避坑指南
大数据·elasticsearch·搜索引擎·mapping设计
铭毅天下13 小时前
Easysearch 版本进化全图——从 ES 国产替代到 AI Native 搜索数据库
大数据·数据库·人工智能·elasticsearch·搜索引擎
Elastic 中国社区官方博客19 小时前
在 Elasticsearch 中,存储向量查询速度最高提升 3 倍
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
海兰20 小时前
从原始日志到系统知识:补齐 AI 可观测性的“上下文层“
人工智能·elasticsearch
逆境不可逃1 天前
【与我学 ClaudeCode】规划与协调篇 之 Skills:按需加载的领域知识框架
大数据·人工智能·elasticsearch·搜索引擎·agent·claudecode
奋斗的老史1 天前
LangChain4j + Elasticsearch 实现企业级向量存储(支持混合检索、元数据过滤)
elasticsearch·langchain4j
做个文艺程序员1 天前
第02篇:搭建 ES 集群 + Spring Boot 整合实战——从 Docker Compose 到 Java 客户端全覆盖
java·spring boot·elasticsearch
逸Y 仙X1 天前
文章二:Elasticsearch跨集群能力探查
java·大数据·服务器·elasticsearch·搜索引擎·全文检索
海兰1 天前
使用 ES|QL 调试 LLM 延迟、成本与 GPU 饱和度
大数据·elasticsearch·jenkins
Elastic 中国社区官方博客1 天前
用于调试 LLM 延迟、成本和 GPU 饱和度的 ES|QL 查询
大数据·人工智能·elasticsearch·搜索引擎·ai·云原生·serverless