Elasticsearch关键术语 系列博文 目的只用来了解概念 ; 其中 涉及到的配置和使用 是为了方便日后使用时查询的
Field字段
数据类型
简单类型
-
text
- 概念
- 一段文本 全文本 是非结构化的文本数据 ; 数组类型[]在ES属于Text类型
- 使用时机
- 当一个字段需要全文搜索时
- 作用
- 索引时 分词 (如果想精确匹配 可在mapping时将text类型设置为keyword类型 keyword不会做分词处理 用字段名.keyword搜索可精确匹配)
- 不能排序
- 也很少用于聚合
- 配置
- 不需要存储 默认存储
语法示例"index": "false"
PUT indexname { "mappings": { "blog": { "properties": { "summary": { "type": "text", "index": "false" } } } } }
- 不需要存储 默认存储
- 概念
-
keyword
- 概念
- 包括 数字 日期 一个具体的字符串
- 使用时机
- 当一个字段需要按精确值 进行过滤 排序 聚合等操作时
- 作用
- 索引时 不分词
- 配置
- 不需要存储 默认存储
"index": "true"
PUT indexname { "mappings": { "blog": { "properties": { "tags": { "type": "keyword", "index": "true"} } } } }
- 不需要存储 默认存储
- 概念
-
数字类型
- 使用时机
- 尽可能选择范围小的 索引和搜索效率越高
- 分类 (8种)
- byte – 有符号的8位整数 [-128 ~ 127]
- short – 有符号的16位整数 [-32768 ~ 32767]
- integer – 有符号的32位整数 [ − 2 31 -2^{31} −2
- 使用时机