Elasticsearch自定义过滤插件实现复杂逻辑过滤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch自定义过滤插件实现复杂逻辑过滤相关的知识,希望对你有一定的参考价值。

参考技术A 最近项目中遇到需要支持对搜索结果根据复杂权限规则来进行过滤,网上没有找到直接相关的资料,最后去 官方文档 找到了答案. 有时间还是多读读官方文档

使用query script可以进行自定义查询和过滤,ElasticSearch5.5以前默认使用groovy脚本,5.5之后默认使用 painless 脚本.我们用的ElasticSearch是2.4版本,ElasticSearch默认支持groovy脚本,groovy性能较低,官方建议使用groovy用于开发,生产建议使用nativeScript,也就是使用java编写plugin.

接下来说一下ElasticSearch2.4版本怎么写自定义过滤插件,其他版本基本上一样.

pom文件中配置了maven的打包方式,使用maven打包,mvn clean complie install,在target\releases文件夹下,找到打包后的zip文件

以上是关于Elasticsearch自定义过滤插件实现复杂逻辑过滤的主要内容,如果未能解决你的问题,请参考以下文章

Elasticsearch 实现自定义排序插件(转载)

ElasticSearch 5.4 自定义插件

ElasticSearch的自定义插件

详解Elasticsearch的基友Logstash

ElasticSearch5.5.1插件分类

ElasticSearch自定义分析器-集成结巴分词插件