呐,我碰到报错:“elastic-Error all shards failed ”。主要是因为我使用了聚合elastic.NewTermsAggregation().Field(field)所致。
当然,问题并不是出在聚合上,而是出在字段上。PHP的搜索引擎,我会人工创建索引,指定各种字段类型甚至自定义部分解析器分词器。
Go的项目中,Elasticsearch的数据来自Java后端同事,之前的聚合中文字段假设为a
,那么问题就出在这里。
实际聚合,应当使用a.keyword
才可以,默认的a是text类型的话,是没有办法进行聚合的。
同理,搜索的时候也一样。
参考资料
elastic-Error all shards failed
如您从本文得到了有价值的信息或帮助,请考虑扫描文末二维码捐赠和鼓励。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。