我正在使用jackson将JSON字符串解析为地图,然后在elasticsearch中接受。
工作正常。
但是由于JSON规范,所有整数和其他格式都需要作为字符串发送 - aka - "key":"value"
。但是,弹性搜索将它们视为字符串,而不是数字。这使得像用户评级这样的总值不可能在它应该是微不足道的时候。
如何使用JSON格式将数字/整数输入到elasticsearch?
有解决方法吗?
答案 0 :(得分:3)
您可能需要为索引创建映射。
映射是定义文档及其包含的字段的存储和索引方式的过程。例如,使用映射来定义:
https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html
如果您已经拥有一些您不想丢失的现有数据,则需要在更新映射后重新编制索引。由于ES索引数据的方式,您无法在创建后更改类型。
https://www.elastic.co/blog/changing-mapping-with-zero-downtime https://www.elastic.co/guide/en/elasticsearch/reference/5.6/docs-reindex.html