和一般查询比较,filter查询:能够缓存数据在内存中,应该尽可能使用

建立测试数据

查看测试数据

1、filtered查询

GET /store/products/_search

{

"query":{

"filtered":{

"query": {

"match_all":{}

},

filter:{

"terms":{

"price":[10,20]

}

}

}

}

}

## 调用没有得到结果? 因为mapping没有指定not_analyzed

GET /store/products/_search

{

"query":{

"filtered":{

"query": {

"match_all":{}

},

filter:{

"term":{

"productID":"QW123"

}

}

}

}

}

GET /_analyze?text=QW123

--发现分析结果呈小写qw123

GET /store/_mapping

DELETE /store

##解决办法:重新建立一个映射,让productID处于not_analyzed模式

PUT /store

{

"mappings":{

"products":{

"properties": {

"productID":{

“type”:“string”,

“index”:“not_analyzed”

}

}

}

}

}

2、bool过滤查询,可以实现组合过滤查询 

"bool":{

"must":[],

     "should":[], 可以满足,也可以不满足

"must_not":[]

}

GET /store/products/_search

{

"query":{

"filtered":{

"filter": {

"bool":{

"should":[

{"term":{"price":20}},

{"term":{"productID":"SD12342"}}

],

"must_not":[

{"term":{"price":30}}

]

}

}

}

}

}

3、嵌套查询

4、and or not查询

and  并且,类似于must

or    或者,类似于should

not  不是,类似于must_not

GET /store/products/_search

{

"query":{

"filtered":{

"filter": {

"or":[

{"term":{"price":20}},

{"term":{"productID":"SD12342"}}

]

},

"query":{

"match_all":{}

}

}

}

}

5、range过滤查询

gt:>

lt:<

gte: >=

lte : <=

GET /store/products/_search

{

"query":{

"filtered":{

"filter": {

"range":{

"price":{

"gte":20,

"lt":50

}

}

}

}

}

}

6、过滤空和非空

exists

missing

7、cache缓存

ELK学习总结(3-2)elk的过滤查询的更多相关文章

  1. ELK学习实验013:ELK的一个完整的配置操作

    前面做了关于ELK组件的各个实验,但是并没有真正的把各个组件结合起来做一个实验,现在使用一个脚本简单的生成日志,模拟生产不断产生日志的效果 一 流程说明 使用脚本产生日志,模拟用户的操作 日志的格式 ...

  2. ELK学习实验020:ELK使用kafka缓存

    首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@no ...

  3. ELK学习实验019:ELK使用redis缓存

    1 安装一个redis服务 [root@node4 ~]# yum -y install redis 直接启动 [root@node4 ~]# systemctl restart redis [roo ...

  4. 【EF6学习笔记】(三)排序、过滤查询及分页

    本篇原文地址:Sorting, Filtering, and Paging 说明:学习笔记参考原文中的流程,为了增加实际操作性,并能够深入理解,部分地方根据实际情况做了一些调整:并且根据自己的理解做了 ...

  5. EF6 学习笔记(三):排序、过滤查询及分页

    EF6 学习笔记索引目录页: ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 上篇:EF6 学习笔记(二):操练 CRUD 增删改查 本篇原文地址:Sorting, Filterin ...

  6. ELK学习链接

    1.  ELK原理与介绍 2. ELK部署记录

  7. Hibernate 过滤查询(hibernate过滤器的使用)

    我们在开发过程中过滤查询使用的还是挺多的,今天来学习一下hibernate的过滤器的使用,首先学习在配置文件中如何使用,然后再介绍如何使用注解配置. 1.使用配置文件配置过滤器  1)首先我们使用my ...

  8. 在Winform界面中使用DevExpress的TreeList实现节点过滤查询的两种方式

    在我较早的一篇随笔<在DevExpress程序中使用TeeList控件以及节点查询的处理>中,介绍了在树形列表TreeList控件上面,利用SearchControl实现节点的模糊查询过滤 ...

  9. WebService和AngularJS实现模糊过滤查询

    WebService和AngularJS实现模糊过滤查询   [概要] 网上看到一个不错的帖子,用WebService获取json,然后在前端使用AngularJs进行过滤搜索,看完文章后,按自己的想 ...

随机推荐

  1. 怎么解决VMware“该虚拟机似乎正在使用中”问题

    问题如下:

  2. 关于字符latin capital letter sharp s "ß"( U+1E9E)显示的问题

    今天测试产品时,遇到德语字符ß在网页上显示为”SS",查了一些相关资料发现这个字符一般用“ss"或"SS"取代. 需要注意,此字符与它的小写形式不同,小写字符l ...

  3. Unix 让进程安全地退出

    终止一个进程有很多方法(暂只说linux环境):前台运行的进程,如果没有提供退出功能,我们通常会Ctrl+C进行终止:后台或守护进程,如果也没有提供退出命令啥的,咱通常会kill掉:此外还有类似关机或 ...

  4. Python 中的登陆获取数据跳转页面(不含数据库)

    简单表单和模板: import os.path import tornado.httpserver import tornado.ioloop import tornado.options impor ...

  5. 笔记:Spring Cloud Ribbon RestTemplate 详解

    详细介绍RestTemplate 针对几种不同请求类型和参数类型的服务调用实现,示例代码中的 restTemplate 都是通过Spring 注入方式创建的,相关代码如下: @Autowired pr ...

  6. 网络通信 --> 互联网协议(一)

    互联网协议 一.概述 如何分层有不同的模型,有的模型分七层,有的分四层.这里介绍把互联网分成五层. 最底下的一层叫做"实体层"(Physical Layer),最上面的一层叫做&q ...

  7. STL --> deque双向队列

    deque简介 deque是双向开口的连续性存储空间.虽说是连续性存储空间,但这种连续性只是表面上的,实际上它的内存是动态分配的,它在堆上分配了一块一块的动态储存区,每一块动态存储去本身是连续的,de ...

  8. 优化的四个方面,缓存,表结构,索引,SQL语句

    一,缓存 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作.而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在毫秒级别,二者相差3个数量级.所 ...

  9. 语句in

    Python :in在for中: for name  in names: names='1','2','3','4','5' for name in names: print(names) in no ...

  10. SQL根据B表内容修改A表内容,查询表中重复记录,删除掉重复项只保留一条

    以下sql是a,b两张表通过关联条件id修改a表值,如果b表有重复数据记录,选第一条更新,红色条件为附加限制条件,具体视情况而定: UPDATE a SETname = b.fname,pwd = b ...