ELK学习总结(3-1)elk的基本查询
基本查询:内置条件
组合查询:组合基本查询
过滤:查询同时,通过filter筛选数据
准备工作
GET /library/books/_mget
{
"ids":["1","2","3","4","5","6"]
}
GET /library/_mapping
0、简单的查询
请求信息
GET /library/books/_search?q=title:elasticsearch
GET /library/_search?q=title:mongodb
GET /_search?q=title:blacksmith
1、term、terms查询:查询包含关键词
功能描述:term查询,查询某个字段例有某个关键词的文档
请求消息:
GET /library/books/_search
{
"query":{
"term":{
"preview":"elasticsearch"
}
}
}
功能描述:terms查询,查询某个字段例有多个关键词的文档,minimum_match(1,至少有一个关键词存在)
请求消息:
GET /library/books/_search
{
"query":{
"terms":{
"preview":["elasticsearch","book"],
"minimun_match":1
}
}
}
2、from、size: 控制查询返回的数量
请求信息
GET /library/books/_search?q=title:elasticsearch
GET /library/books/_search
{
"from":1,
"size":2,
"query":{
"term":{
"title":"elasticsearch"
}
}
}
3、返回版本号_version
请求信息
GET /library/books/_search
{
"version":true,
"query":{
"term":{
"preview":"elasticsearch"
}
}
}
4、match查询: 和term查询区别,会使用分析器
请求信息
GET /library/books/_search
{
"from":1,
"size":2,
"query":{
"term":{
"title":"elasticsearch"
}
}
}
3、返回版本号_version
请求信息
GET /library/books/_search
{
"version":true,
"query":{
"match":{
"preview":"elasticsearch"
}
}
}
GET /library/books/_search
{
"version":true,
"query":{
"match":{
"price":11
}
}
}
match_all 查询指定索引下的所有文档?
GET /library/books/_search
{
"query":{
"match_all":{}
}
}
match_phrase: 短语查询,slop定义关键词之间间隔多少位置单词
GET /library/books/_search
{
"query":{
"match_phrase":{
"preview":{
"query":"elasticsearch,distributed",
"slop":2
}
}
}
}
multi_match:可以查询指定多个字段都包含某个关键字的文档
GET /library/books/_search
{
"query":{
"multi_match":{
"query":"elasticsearch",
"fields":["title","preview"]
}
}
}
指定返回的字段
只能返回store为yes的字段
GET /library/books/search
{
"fields":["title","preview"],
"query":{
"match":{
"preview":"elasticsearch"
}
}
}
控制加载的字段:
GET /library/books/search
{
"partial_fields":{
"partial":{
"include":["preview"],
"exclude":["title","price"]
}
},
"query":{
"match":{
"preview":"elasticsearch"
}
}
}
5、排序查询: sort、asc/desc
请求信息
GET /library/books/_search
{
"query":{
"match_all":{}
},
"sort":[
{
"price":{
"order":"desc"
}
}
]
}
响应信息
6、prefix前缀匹配查询
请求信息
GET /library/books/_search
{
"query":{
"prefix":{
"title":{
"value":"ret"
}
}
}
}
响应信息
7、range范围查询(range,from,to,include_lower,include_upper,boost)
include_lower:包含范围左边界,默认是true
include_upper:包含范围右边界,默认是true
请求信息
GET /library/books/_search
{
"query":{
"range":{
"publish_date":{
"from":"2015-01-01",
"to":"2015-07-01"
}
}
}
}
GET /library/books/_search
{
"query":{
"range":{
"price":{
"from":"10.00",
"to":"20.00",
"include_lower":true,
"include_upper":true
}
}
}
}
响应信息
8、wildcard查询--很影响性能
* 代表1-n个字符
? 代表一个字符
请求信息
GET /library/books/_search
{
"query":{
"wildcard":{
"preview":“luc?ne”
}
}
}
响应信息
9、fuzzy模糊查询--很耗性能
value
boost
min_similarity
prefix_length
max_expansions
请求信息
GET /library/books/_search
{
"query":{
"fuzzy":{
"preview":“rabbit”,
"min_similarity":0.5
}
}
}
fuzzy_like_this
fuzzy_like_this_field
响应信息
10、more_like_this&more_like_this_field查询
fields:
like_text
percent_terms_to_match
min_term_freq
stop_words
min_doc_freq
min_word_len
max_word_len
boost_terms
boost
analyer
ELK学习总结(3-1)elk的基本查询的更多相关文章
- ELK学习实验013:ELK的一个完整的配置操作
前面做了关于ELK组件的各个实验,但是并没有真正的把各个组件结合起来做一个实验,现在使用一个脚本简单的生成日志,模拟生产不断产生日志的效果 一 流程说明 使用脚本产生日志,模拟用户的操作 日志的格式 ...
- ELK学习实验020:ELK使用kafka缓存
首先安装一个kafka集群,但是zookeeper使用单节点,可以让kafka快速跑起来,后续再研究kafka和zokkeeper的集群 1 安装Kafka集群 下面是三个节点都要做 [root@no ...
- ELK学习实验019:ELK使用redis缓存
1 安装一个redis服务 [root@node4 ~]# yum -y install redis 直接启动 [root@node4 ~]# systemctl restart redis [roo ...
- ELK学习链接
1. ELK原理与介绍 2. ELK部署记录
- ADO学习笔记之注入漏洞与参数化查询
ADO学习笔记之注入漏洞与参数化查询 作为新手,在学习ADO程序时,使用 sql 语言查询数据时,很容易写类似如下代码: using (SqlConnection con = new SqlConne ...
- 五、Django学习之基于对象的跨表查询
五.Django学习之基于对象的跨表查询 正向与反向查询 关键在于ForeignKey字段写的位置.例如下面这段代码, 关系属性(字段)写在哪个类(表)里面,从当前类(表)的数据去查询它关联类(表)的 ...
- ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack
最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...
- ELK学习笔记之CentOS 7下ELK(6.2.4)++LogStash+Filebeat+Log4j日志集成环境搭建
0x00 简介 现在的公司由于绝大部分项目都采用分布式架构,很早就采用ELK了,只不过最近因为额外的工作需要,仔细的研究了分布式系统中,怎么样的日志规范和架构才是合理和能够有效提高问题排查效率的. 经 ...
- ELK学习之Logstash篇
Logstash在ELK这一整套解决方案中作为数据采集终端,支持对接Kafka.数据库(MySQL.Oracle).文件等等. 而在Logstash内部的数据流转,主要经过三个环节:input -&g ...
- ELK学习笔记(二)-HelloWorld实例+Kibana介绍
这次我们通过一个最简单的HelloWolrd来了解一下ELK的使用. 进入logstash的config目录,创建stdin.conf 文件. input{ stdin{ } } output{ st ...
随机推荐
- Java并发编程实战(chapter_1)(原子性、可见性)
混混噩噩看了很多多线程的书籍,一直认为自己还不够资格去阅读这本书.有种要高登大堂的感觉,被各种网络上.朋友.同事一顿外加一顿的宣传与传颂,多多少少再自我内心中产生了一种敬畏感.2月28好开始看了之后, ...
- php 后端跨域请求
header("Access-Control-Allow-Origin: http://a.com"); // 允许a.com发起的跨域请求 //如果需要设置允许所有域名发起的跨域 ...
- README.md用法
简单说明常用标签 # 标题标签与h1~h6 相似 也有6个 = 高级标题标签 - 中标签 * 列表标签 与 <li> 标签相似 ` 实体标签,内容会换行 ``` 实体标签 内容保持编辑 ...
- VS 2017 开发安卓环境搭建 问题总结
VS 2017可以开发安卓啦,之前一直想尝试开发安卓,但是由于时间忙, Java只学了个基础,不如C#熟练所以一直没有机会接触安卓开发.既然需要利用VS2017开发安卓,那么第一步就是了解VS2017 ...
- JavaIO
1.字节流和字符流 在IO有两种数据传输格式一个是字符流还一个是字节流,但是字符流就会涉及到编码的问题. 一开始美国使用的自己的编码表就是ASCII表 中国的字符需要被识别也需要编码表于是就有了GB2 ...
- NumPy入门
import numpy as np 数组与标量之间的运算作用于数组的每一个元素.
- 连不上虚拟机中的Redis的原因分析、以及虚拟机网络配置
1. 网络最好是桥接方式.我之前用的是"网络地址转换(NAT)",导致虚拟机里用命令ifconfig得到的ip是10.0.2.15,好奇怪的感觉,然后在真实机上一直连不上.有的说用 ...
- jenkins忘记密码怎么办?
在nginx配置文件中加上域名访问,重定向到本机的8080端口. server { listen 80; server_name tomcat.qinyj.top; root /application ...
- java高并发锁的三种实现
提到锁大家会想到Synchronized同步关键字,使用它确实可以解决一切并发问题,但是对于体统吞吐量要求更高,在这里提供了几个小技巧.帮助大家减少锁粒度.提高系统的并发能力 一.乐观锁 试用场景:读 ...
- fail2ban 防止ssh暴力破解
1.环境 CentOS 7 2.在线安装 yum install -y epel-release yum install -y fail2ban fail2ban 结构 /etc/fail2ban ...