ElasticSearch----索引详解(第三节)

ElasticSearch----索引详解(第三节),第1张

ElasticSearch----索引详解(第三节) ElasticSearch之索引详解
上一节我们了解了es一系列的语法但却不知道其检索的原理,我们本节来一块了解下其创建索引时的原理,根据前面两节的学习我们或多或少了
解到分词,映射等关键词。事实上它们都是在创建索引时对索引的一系列设置,比如settings,mapping等。接下来我们将一一作出解释
详解篇

1, 倒排索引
2, mapping–映射
  2.1 字段类型
3, settings–设置
  3.1, analyzer-tokenizer-分词类型
  3.2, analyzer-char_filter-字符过滤器
  3.3, analyzer-filter-内容过滤器
4, 过滤查询

# 倒排索引
	名词解释:根据创建索引时设置字段映射(mappings)中的分词类型进行分词,文本以空格进行分词,并进行记录文本对应的主键id  
		请看图(explain-one)
# mapping--映射
	名词解释:创建索引文档时对其字段类型的设置,默认会根据添加的字段内容进行默认设置,通俗的将就是给文档字段设置类型
	具体解释请看图:
		创建索引时,手动设置字段映射(图-explain-set-mapping)
		创建索引时,默认生成文档字段映射(图-explain-get-mapping-default)
	注:
		此处以英文进行举例, 此处涉及到 同义词-待补充。
		倒排索引与MySQL中的聚簇索引与非聚簇索引含义相似
		字段映射仅可增加,删除,不能修改。增加按(图-explain-set-mapping) *** 作即可,删除映射需直接删除索引(delete /index)
			重新创建索引映射。
		创建字段时可创建复杂类型,如object等类型具体请看上述 2.1字段类型
		设置字段中analyzer与search_analyzer时,分词类型最好都一致。
		二级索引(fields):为字段设置二级索引,用于检索时精确查找或排序。
		在设置字段映射时 index : false 表示该字段不参与分词与keyword类型一致,只进行精确查找。
			eg : "field":{"type":"text", "index":false} ,如上设置该字段不进行分词。				
# 索引-settings
	主要作用:为索引增加自定义分词器等选项,此处只简单罗列各类型设置已附上地址,有兴趣的小伙伴自行查看文档
	其个字段含义如图(index-settings)
# filter 过滤查询
	名词解释:使用filter查询其查询项相关度(score)不包含在query查询中, 常应用在范围,精确值查询
	filter与query对比:
		filter:不进行相关度计算,不按照相关度排序,内置缓存
		query: 进行相关度计算,按照相关度排序,实时查询
	查询举例: 
		query过滤范围查询  (图 search-query-range),
		filter过滤范围查询 (图 search-filter-range),

图 - explain-one

图 - explain-set-mapping

图 - explain-get-mapping-default

图: search-query-range

图: search-filter-range
图: index-settings

总结

  文档转载
    ElasticSearch官方文档
    禁止转载,违者必究
  补录
  第一节,ElasticSearch----安装部署
  第二节,ElasticSearch----语法学习
  第三节,ElasticSearch----索引详解
  第四节,ElasticSearch----IK分词器
  第五节,ElasticSearch----PHP交互

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5676357.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存