2022.1.17 elastic

今天主要是页面根据一字段查询没有结果,我去kibana查发现报错:
Cannot search on field [xxx] since it is not indexed
查了下这个索引mapping,确实messageId字段index设置为false
语法:

GET index_name/_mapping

其实默认是true的,也就是,针对这个字段创建倒排索引,即能通过这个字段搜索文档,但同时写template时候手误把它置为false。好在这个功能不常用,且有替代方案查询。

修改也很容易,改了个值,因为是个依赖包,兼容修改,没有升级版本号,依赖的地方都在测试环境重新部署了。(之前我问同事是不是直接重启就行,他说不不,还要重新build镜像,原来,我一直把构建部署当作重启的方法)

当然这个地方勾起了我对pom maven的好奇,就是parent和modules,还有就是什么是服务与组件,另开了文章记录。

当然还没完,当前改动,并没有对之前的索引产生影响,所以,必须等这些过期失效了,按照那个字段查询才真正修复,现在只是能对fix后创建的索引正常查询。

这个过期时间又是个问题,我看了下这个template下索引,设置的过期时间15天,我不知道在哪设置的,问了下同事,是关于ILM(Index lifecycle management)
这个以后再看吧,贴个连接:https://blog.csdn.net/liangwenmail/article/details/115378975

-其他可以继续学习的

  • es index template 使用
  • elasticsearch-rest-level-client
  • ILM
参考:
1. 一篇文章带你搞定 ElasticSearch 术语(https://zhuanlan.zhihu.com/p/109578675)
2. 一文搞懂 Elasticsearch 之 Mapping(https://cloud.tencent.com/developer/article/1600710)

未完待续…

你可能感兴趣的:(java学习,elasticsearch)