es“limit of total fields” 和“field expansion mathes too many fields”问题解决

es的“limit of total fields” 和“field expansion mathes too many fields”问题都是因为字段过多引起的,前者是因为插入时,后者是在查询时。解决方案如下:

limit of total fields

es“limit of total fields” 和“field expansion mathes too many fields”问题解决_第1张图片
字段过多,使用时报错。
total fields超过1000
解决方案:

PUT index名/_settings
{
	"index.mapping.total_fields.limit": 2000或更大
}

如果因为某些原因删除了当前index,后期又重新建立了同样的index,原先的index.mapping.total_fields.limit设置会失效。
解决方案:创建索引时,设置setting

PUT index名
{
	"settings": {
		"index.mapping.total.fields.limit": 2000或更大,
		……
	},
	"mappings": {
		……
	}
}

高级解决方案:使用模板(待验证)
链接:
ES 处理日志字段超出 1000 引发的报错.
初探 Elasticsearch Index Template(索引模板).

field expansion mathes too many fields

修改es配置文件(elasticsearch.yml)
增加下句:
indices.query.bool.max_clause_count: 20000
并重启 ES
链接: Elasticsearch出现field expansion matches too many fields异常.

你可能感兴趣的:(es,elasticsearch)