elasticsearch 中的_all、_source和index、store

elasticsearch 中的_all、_source和index、store
一、_all
二、_source
四、store
一、_all
_all字段默认是关闭的,如果要开启_all字段,索引增大是不言而喻的。_all字段开启适用于不指定搜索某一个字段,根据关键词,搜索整个文档内容

二、_source
“includes”: [“path1.", "path2.”],包含那些字段,当"enabled": true,时
“excludes”: [“path3.*”] 不包含那些字段,当"enabled": true,时

存储文档时存储那些字段的原始值到elasticsearch,默认全部存储

如果_source不存储一个字段,这个字段的元数据是无法返回的。

在创建一个document的时候,使用的那个放在request
body中的json串,默认情况下,在get的时候,会原封不动的给我们返回回来。

_source字段默认是存储的,如果某个字段内容非常多,业务里面只需要能对该字段进行搜索,最后返回文档id,查看文档内容会再次到mysql或者hbase中取数据,把大字段的内容存在Elasticsearch中只会增大索引,这一点文档数量越大结果越明显,如果一条文档节省几KB,放大到亿万级的量结果也是非常可观的。

##三、index

“id”:{
“type”: “keyword”,
“index”: true,
},

no:不把此字段添加到索引中,也就是不建索引,此字段不可查询
not_analyzed:将字段的原始值放入索引中,作为一个独立的term,它是除string字段以外的所有字段的默认值。
analyzed:string字段的默认值,会先进行分析后,再把分析的term结果存入索引中。

四、store
“info”:{
“type”: “text”,
“store”: true
},

默认 no,false

是否在 _source 之外在独立(另外)存储一份,这里要说一下 _source 指的是源文档

当某个字段需没有存储在_source中时,对这个字段的高亮时无效的,因为没有存储这个字段的元数据,把这个字段的store属性设置为true,支持高亮。
————————————————
版权声明:本文为CSDN博主「dalong_bamboo」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dalong_bamboo/article/details/89051606

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章