博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
更新fielddata为true_elasticsearch 5.2使用ICU插件进行排序需要fielddata = true吗?
阅读量:6376 次
发布时间:2019-06-23

本文共 794 字,大约阅读时间需要 2 分钟。

我想用icu_collation过滤器对elasticsearch结果文档进行排序 . 所以我有索引的设置:

"settings": {

"analysis": {

"analyzer": {

"ducet_sort": {

"tokenizer": "keyword",

"filter": [ "icu_collation" ]

}

}

}

}

和映射

"mappings": {

"card": {

"properties": {

"title": {

"type": "text",

"fields": {

"sort": {

"type": "text",

"analyzer": "ducet_sort",

"index": false

}

}

}

}}}

和查询:

{

"sort": ["title.sort"]

}

但查询失败:

"caused_by": {

"type": "illegal_argument_exception",

"reason": "Fielddata is disabled on text fields by default. Set fielddata=true on [title.sort] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory."

}

在文档中,建议的排序数据类型是 keyword . 但数据类型 keyword 不支持分析器 . 此外,不建议使用fielddata:

那么有没有办法在弹性搜索中对文档进行排序,并进行一些特定的排序,例如icu_collation without fielddata = true?

谢谢 .

转载地址:http://oovqa.baihongyu.com/

你可能感兴趣的文章
size_t的32位和64位兼容
查看>>
HBase全分布式模式的安装和配置
查看>>
Spring 框架的设计理念与设计模式分析
查看>>
十年web老兵整理的前端视频资料
查看>>
工作线程数究竟要设置为多少
查看>>
10个Python 统计报表/图表图形类库
查看>>
关于 xargs 参数被截断,tar 文件被覆盖的问题
查看>>
CentOS 6.3 上安装 Oracle 11g R2(转)
查看>>
js实现滚动新闻效果
查看>>
Nginx出现could not build the server_names_hash 解决办法
查看>>
Netbeans8在web项目中创建servlet
查看>>
高可用haproxy调度后端服务器实现动静分离集群架构
查看>>
Java 进行 RSA 加解密
查看>>
Hbase原理、基本概念、基本架构
查看>>
MQ 对比
查看>>
实战:RHEL6配置dhcp服务器并绑定主机IP
查看>>
RHEL7/centos7 安装XEN
查看>>
百度不收录原因分析——Spider抓取篇
查看>>
ROS记录上网日志到remote syslog服务器
查看>>
Confluence 6 配置校验和识别
查看>>