ElasticSearch基本查询工具

来源:互联网 发布:base64加密 c语言 编辑:程序博客网 时间:2024/05/19 13:20

        众所周知,ElastcSearch支持通过http请求通过传输json的方式进行复杂查询,包括聚类、分类或是去重这些操作都可以通过ElasticSearch底层的Lucene来完成(关于Lucene的部分不在今天讨论范围,如果想进一步了解请移步Lucene源码)。言归正传,talk is cheap ,let's see the code:

一、工具类

      首先写一个流文件转bute数组的工具类

然后介绍一下google的gson工具包,gson是非常好用的一款json包,以功能强大著称,是我们在ElasticSearch查询过程当中不可离开的工具类。而如何引用gson呢,新建maven的时候,直接在pom.xml文件中引入gson的地址即可。


二、通过简单的json进行查询


该方法可用于传递简单的json进行查询,比如查询数值,或者进行一些简单的大于小于的数值查询


三、通过.json模板文件进行复杂的查询


该方法可以在.json模板里写入【@占位符】的形式来作为查询模板,占位符的内容作为paramMap的key,真正想要查询的内容作为对应的value,这样,就实现了一套模板查询进行不同信息的查询 ,如果条件写得好(也就是.json文件的结构),就可以实现各种亿级数据的分类、聚类、去重等复杂查询的秒级别返回,在后面的日记当中,我会开源一些对应的.json文件,实现这些海量数据的挖掘查询。

0 0