ElasticSearch中怎么防止Mapping爆炸
ElasticSearch中怎么防止Mapping爆炸 ,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
创新互联专注于企业全网整合营销推广、网站重做改版、盖州网站定制设计、自适应品牌网站建设、H5页面制作、购物商城网站建设、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为盖州等各大城市提供网站开发制作服务。
1 故事背景
某天同事跟我说,ES数据不能进行插入,查询集群日志
requests java.lang.IllegalArgumentException: Limit of total fields [1000] in index [my_index] has been exceeded
2 Mapping 说明
mapping 做了映射保护,防止mapping 爆炸
以下设置允许您限制可手动或动态创建的字段映射的数量,以防止错误的文档导致映射爆炸:
index.mapping.total_fields.limit:
索引中的最大字段数。默认值为1000
index.mapping.depth.limit:
字段的最大深度,以内部对象的数量来衡量。例如,如果所有字段都是在根对象级别定义的,则深度为1。如果有一个对象映射,则深度为 2,等等。默认值为20。
index.mapping.nested_fields.limit
nested索引中的最大字段数,默认为50。使用100个嵌套字段索引1个文档实际上索引101个文档,因为每个嵌套文档都被索引为单独的隐藏文档
3 临时解决方案修改setting
PUT my_index/_settings { "index.mapping.total_fields.limit": 2000 }
关于ElasticSearch中怎么防止Mapping爆炸 问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
分享题目:ElasticSearch中怎么防止Mapping爆炸
文章URL:http://scyanting.com/article/igipcd.html