Elasticsearch5常见问题汇总
来源:互联网 发布:23号端口 编辑:程序博客网 时间:2024/06/07 17:15
Elasticsearch5常见问题汇总
1. 跨域支持
编辑elasticsearch.yml文件,增加以下配置:
http.cors.enabled: true
http.cors.allow-origin: "*"
2. 最大布尔查询数量
编辑elasticsearch.yml文件,增加以下配置:
indices.query.bool.max_clause_count: 10240
3. 为索引和检索指定不同的分词器
{ "mappings": { "default": { "properties": { "keyword": { "type": "text", "analyzer": "索引分词器", "search_analyzer": "检索分词器", "search_quote_analyzer": "引号检索分词器" } } } }}
4. 在ActionPlugin插件中处理JSON
4.1 获取POST请求内容
if(RestActions.hasBodyContent(request)) {
BytesReference content = RestActions.getRestContent(request);
Tuple<XContentType, Map<String, Object>> tuple = XContentHelper.convertToMap(content, true);
if(XContentType.JSON == tuple.v1()) instance.params = tuple.v2();
}
4.2 将JSON字符串转换为Map对象
XContentFactory.xContent(XContentType.JSON).createParser(json).mapOrdered();
4.3 将Map对象转换为JSON字符串
XContentFactory.jsonBuilder().map((Map<String, ?>) object).string();
4.4 关于URL中请求字符串的处理特性
QueryStringPHPJavaElastcisearcha=1字符串数组字符串a=1&a=2最后一个字符串数组最后一个字符串a[]=1&a[]=2数组Key=a数组Key=a[]最后一个字符串Key=a[]a[0]=1&a[1]=2数组多个数组多个字符串a.k1=1&a.k2=2多个字符串多个数组多个字符串
Elasticsearch内部通信和对外服务均采用Netty框架,支持JSON和YAML等多种数据格式,基于URI注册RestHandler,不建议采用请求字符串的方式传递参数。
5. 复杂查询
多看官方文档,绝大部分的需求都能在文档中找到答案,通过Aggregations组合可实现不同的功能。
0 0
- Elasticsearch5常见问题汇总
- CentOS7上elasticsearch5.0 常见问题
- 常见问题汇总
- 常见问题汇总
- 常见问题汇总
- 常见问题汇总
- ASP.NET常见问题汇总
- N70常见问题汇总
- Symantec Antivirus 常见问题汇总
- 数据库常见问题汇总
- Veritas常见问题汇总
- IE常见问题汇总
- PHP常见问题汇总
- SVG常见问题汇总
- VS2005常见问题汇总
- WINCE常见问题汇总
- SQLite常见问题汇总
- 必读.NET常见问题汇总
- 七牛上传视频文件 后截图功能
- 灵活的填报表校验–使用正则表达式校验.doc
- 转换png + 发现一个很好的做app icns的工具
- Android设计模式之策略(接口interface)
- JAVA重点备忘
- Elasticsearch5常见问题汇总
- IntelliJ 13,pom报错cannot reconnect
- thinkphp实现根据页码从数据中获取数据,并实现分页
- 我的html学习——第四天
- Android数字选择器-NumberPicker
- javaweb的实体标签
- activiti 流程实例设置名称
- 第九章代码
- linux 线程同步