es索引indexfalse改为true

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es索引indexfalse改为true相关的知识,希望对你有一定的参考价值。

参考技术A 、mapping映射属性
mapping是对索引库中文档的约束,常见的mapping属性包括:

type:字段数据类型,常见的简单类型有:

字符串:text(可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址)

数值:long、integer、short、byte、double、float、

布尔:boolean

日期:date

对象:object

index:是否创建索引,默认为true

analyzer:使用哪种分词器

properties:该字段的子字段

例如下面的json文档:


"age": 21,
"weight": 52.1,
"isMarried": false,
"info": "加油,奥力给",
"email": "zy@itcast.cn",
"score": [99.1, 99.5, 98.9],
"name":
"firstName": "云",
"lastName": "赵"


登录后复制

对应的每个字段映射(mapping):

age:类型为 integer;参与搜索,因此需要index为true;无需分词器

weight:类型为float;参与搜索,因此需要index为true;无需分词器

isMarried:类型为boolean;参与搜索,因此需要index为true;无需分词器

info:类型为字符串,需要分词,因此是text;参与搜索,因此需要index为true;分词器可以用ik_smart

email:类型为字符串,但是不需要分词,因此是keyword;不参与搜索,因此需要index为false;无需分词器

score:虽然是数组,但是我们只看元素的类型,类型为float;参与搜索,因此需要index为true;无需分词器

name:类型为object,需要定义多个子属性

name.firstName;类型为字符串,但是不需要分词,因此是keyword;参与搜索,因此需要index为true;无需分词器

name.lastName;类型为字符串,但是不需要分词,因此是keyword;参与搜索,因此需要index为true;无需分词器

2、索引库的CRUD
2

Es查询结果集默认是10000,更新设置

Es查询结果集默认是10000,结果集大小是int,最大为21亿左右

PUT _all/_settings?preserve_existing=true

{

  "index.max_result_window" : "2000000000"

}

 

 

将所有的索引结果窗口集改为20亿,这个是已经存在的索引

新建的索引还会默认是10000,需要修改模板配置

删除模板,在原模板加入"max_result_window":2000000000     然后重新导入模板,新匹配的索引就会是20亿
————————————————
版权声明:本文为CSDN博主「程序人省」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_26531719/article/details/82378571

以上是关于es索引indexfalse改为true的主要内容,如果未能解决你的问题,请参考以下文章

定期删除es(elasticsearch)索引

ES 实战索引翻滚 Rollover Index使用说明

ES实战索引无法写入场景一

elasticsearch

MySQL慢查询日志ES索引模板

es数据库如何倒时间查看数据