Elasticsearch学习之ES的高级检索

【硬刚ES】ES基础(三十五)分页与遍历 - From, Size, Search_after & Scroll API 本文是对《【硬刚大数据之学习路线篇】从零到大数据专家的学习指南(全面升级版)》的ES部分补充。 课程Demo POST tmdb/_search { "from": 10000, "size": 1, "query": { "match_all": { } } } #Scroll API DELETE users POST users/_doc {"name":"user1",". 阅读详情

检索概览:
  ES同MySQL一样拥有众多的查询接口可以帮助用户对指定的查询内容进行匹配检索查询;如精确查询、模糊查询、前缀查询、范围查询、正则表达式匹配查询等。
  查询检索子句分为两类:
    1)查询语句:执行全文本查询时,基于相关度来评判其匹配结果;查询执行过程复杂,且不会被缓存;
    2)过滤语句:执行精确查询时,基于其结果为"yes"或"no"来进行评判;速度快,且结果可被缓存;
在这里插入图片描述

一、过滤语句
1)term filter:精确匹配包含指定term的文档;
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d '{
  "query":{
     "term":{
        "age":"25"
      }
   }
}'

查询结果:

{
  "took" : 4,     //查询时长,毫秒;
  "timed_out" : false,     //是否超时;
  "_shards" : {      //分片情况;
    "total" : 5,     //总分片个数;
    "successful" : 5,    //成功分片的个数;
    "skipped" : 0,      //跳过的个数;
    "failed" : 0       //失败的个数;
  },
  "hits" : {     //命中数据情况;
    "total" : 1,    //总命中数据个数;
    "max_score" : 1.0,    //打分情况;
    "hits" : [      //命中数据集;
      {
        "_index" : "student",     //索引名称;
        "_type" : "class1",      //类型名称;
        "_id" : "3",      //id情况;
        "_score" : 1.0,     //打分情况;
        "_source" : {      //源数据;
          "name" : "Yangguo",   //name字段与对应的值;
          "age" : 25,       //age字段与对应的值;
          "sex" : "M"      //sex字段与对应的值;
        }
      }
    ]
  }
}

2)terms filter:用于多值精确匹配
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d '{
  "query":{
     "terms":{
        "age":[25,30]
      }
   }
}'

查询结果:

{
  "took" : 9,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 3,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 1.0,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "1",
        "_score" : 1.0,
        "_source" : {
          "name" : "Guojing",
          "age" : 30,
          "sex" : "M"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "3",
        "_score" : 1.0,
        "_source" : {
          "name" : "Yangguo",
          "age" : 25,
          "sex" : "M"
        }
      }
    ]
  }
}

3)range filters:用于在指定的范围内查找数值或时间
  gt:大于
  lt:小于
  get:大于等于
  let:小于等于
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty'  -d'{
    "query":{
       "range":{
          "age":{
             "gte":28,
             "lte":30
          }
       }
    }
}'

查询结果:

{
  "took" : 2,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 4,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 1.0,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "2",
        "_score" : 1.0,
        "_source" : {
          "name" : "Huangrong",
          "age" : 28,
          "sex" : "F"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "6",
        "_score" : 1.0,
        "_source" : {
          "name" : "Azhu",
          "age" : 28,
          "sex" : "F"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "1",
        "_score" : 1.0,
        "_source" : {
          "name" : "Guojing",
          "age" : 30,
          "sex" : "M"
        }
      }
    ]
  }
}

4)exists and missing filters:字段存在与否检索
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty'  -d'{
    "query":{
     "exists":
        {
          "field":"school"
        }
  }
}'

查询结果:

{
  "took" : 4,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 1,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "11",
        "_score" : 1.0,
        "_source" : {
          "school" : "hkz"
        }
      }
    ]
  }
}

5)boolean filter:基于boolean逻辑来合并多个filter子句
  must:其内部所有的子句条件必须同时匹配,即and;
查询代码:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "bool":{
          "must":[
          {"term":{"age":30}},
          {"term":{"name":"Guojing"}}]
       }
    }
}'

查询结果:

{
  "took" : 3,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 0,
    "max_score" : null,
    "hits" : [ ]
  }
}

must_not:其所有子句至少有一个子句匹配,即or
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "bool":{
          "should":[
          {"term":{"name":"Yangguo"}},
          {"term":{"age":25}}]
       }
    }
}'

查询结果:

{
  "took" : 3,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 1,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "3",
        "_score" : 1.0,
        "_source" : {
          "name" : "Yangguo",
          "age" : 25,
          "sex" : "M"
        }
      }
    ]
  }
}

must_not:其所有的子句必须都不匹配,即not
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "bool":{
          "must_not":[
          {"term":{"name":"Yangguo"}},
          {"term":{"sex":"F"}}]
       }
    }
}'

查询结果:

{
  "took" : 4,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 11,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 1.0,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      },

  "hits" : {
    "total" : 11,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 1.0,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      },

6)prefix query:前缀字符串检索匹配
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "prefix":{
           "name":"Guo"
       }
    }
}'

7)wildcard query:通配符检索
匹配具有匹配通配符表达式(not analyzed)的字段的文档。
支持的通配符:
  1)*:匹配任何字符序列(包括空字符序列);
  2)?:匹配任何单个字符;
注意:次查询可能会很慢,因为它需要遍历多个术语,为了防止非常慢的通配符语句,通配符不能以任何一个通配符*或?开头。
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "wildcard":{
           "name":"Guo*"
       }
    }
}'

8)regexp query:正则表达式检索匹配
查询语句:

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "regexp":{
           "name":"Guo.*"
       }
    }
}'

9)fuzzy query:模糊查询查找再模糊度中指定的最大编辑距离内的所有可能的匹配项,然后检查术语字典,以找出在检索中实际存在待检索的关键词。

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "fuzzy":{
           "name":"Guo"
       }
    }
}'

10)type query:类型检索

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "type":{
           "value":"numbers"
       }
    }
}'

11)ids query:返回指定id的全部信息

[root@node2 ~]# curl -XGET -H Content-Type:application/json 'localhost:9200/student/class1/_search?pretty' -d'{
    "query":{
       "ids":{
           "values":["1","2"]
       }
    }
}'
{
  "took" : 5,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 2,
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "2",
        "_score" : 1.0,
        "_source" : {
          "name" : "Huangrong",
          "age" : 28,
          "sex" : "F"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "1",
        "_score" : 1.0,
        "_source" : {
          "name" : "Guojing",
          "age" : 30,
          "sex" : "M"
        }
      }
    ]
  }
}

12)全文检索字段:对全文本指定匹配到的字段内容

[root@node1 ~]# curl -XGET -H Content-Type:application/json "localhost:9200/student/class1/_search?q=Xiaofeng"
{"took":12,"timed_out":false,"_shards":{"total":5,"successful":5,"skipped":0,"failed":0},"hits":{"total":1,"max_score":0.2876821,"hits":[{"_index":"student","_type":"class1","_id":"5","_score":0.2876821,"_source":{
    "name":"Xiaofeng",
    "age":30,
    "sex":"M"

DSL语句检索方式:

[root@node1 ~]# curl -XGET -H Content-Type:application/json "localhost:9200/student/class1/_search?pretty"  -d '{
    "query":{
     "multi_match":{
        "query":"Xiaofeng"
     }
   }
}'
{
  "took" : 10,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 1,
    "max_score" : 0.2876821,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 0.2876821,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      }
    ]
  }
}

13)指定字段查找匹配的字符内容

[root@node1 ~]# curl -XGET -H Content-Type:application/json "localhost:9200/student/class1/_search?q=sex:M"
{"took":6,"timed_out":false,"_shards":{"total":5,"successful":5,"skipped":0,"failed":0},"hits":{"total":3,"max_score":0.2876821,"hits":[{"_index":"student","_type":"class1","_id":"5","_score":0.2876821,"_source":{
    "name":"Xiaofeng",
    "age":30,
    "sex":"M"
}},{"_index":"student","_type":"class1","_id":"1","_score":0.2876821,"_source":{
    "name":"Guojing",
    "age":20,
    "sex":"M"
}},{"_index":"student","_type":"class1","_id":"3","_score":0.2876821,"_source":{
    "name":"Yangguo",
    "age":18,
    "sex":"M"
}}]}}

DSL语句指定字段检索:

[root@node1 ~]# curl -XGET -H Content-Type:application/json  "localhost:9200/student/class1/_search?pretty" -d'{
>     "query":{
>       "match":{
>         "sex":"M"
>       }
>     }
> }'
{
  "took" : 7,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 3,
    "max_score" : 0.2876821,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "5",
        "_score" : 0.2876821,
        "_source" : {
          "name" : "Xiaofeng",
          "age" : 30,
          "sex" : "M"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "1",
        "_score" : 0.2876821,
        "_source" : {
          "name" : "Guojing",
          "age" : 20,
          "sex" : "M"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "3",
        "_score" : 0.2876821,
        "_source" : {
          "name" : "Yangguo",
          "age" : 18,
          "sex" : "M"
        }
      }
    ]
  }
}

14)在指定的多字段中检索文档

[root@node1 ~]# curl -XGET -H Content-Type:application/json  "localhost:9200/student/class1/_search?pretty" -d'{
    "query":{
      "multi_match":{
>        "query":"F",
>        "fields":["sex","name"]
>     }
>   }
> }'
{
  "took" : 9,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 3,
    "max_score" : 0.13353139,
    "hits" : [
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "2",
        "_score" : 0.13353139,
        "_source" : {
          "name" : "Huangrong",
          "age" : 18,
          "sex" : "F"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "4",
        "_score" : 0.13353139,
        "_source" : {
          "name" : "Xiaolongnv",
          "age" : 25,
          "sex" : "F"
        }
      },
      {
        "_index" : "student",
        "_type" : "class1",
        "_id" : "6",
        "_score" : 0.13353139,
        "_source" : {
          "name" : "Azhu",
          "age" : 24,
          "sex" : "F"
        }
      }
    ]
  }
}
SNAP计算哨兵二号的叶面积指数(LAI) 对于哨兵二号数据以及LANDSAT8数据,SNAP提供已经集成好的模块计算LAI。在Optical->Thematic Land Processing->Biopyhsical Processor目录下面。 对于经过Sen2Cor处理好的数据,需经过重采样才可进行计算。重采样工具在Raster->Geometric->Resampling。 如果选择Biopyhsical Processor S2_10m进行计算,需要将所有的波段都重采样为10米(哨兵二号的第二波段为10米,可据此波 阅读详情

相关推荐

Neo4j Desktop新手必看:3分钟搞定CSV数据导入(附常见报错解决方案)

本文详细介绍了在Neo4j Desktop中高效导入CSV数据的三种主流方法,包括图形化界面操作、命令行批量导入和Python驱动编程导入,并提供了常见报错解决方案和性能优化技巧,帮助新手快速构建知识图谱。

lambda的博客 648

Elasticsearch查询——布尔查询Bool Query

Elasticsearch在2.x版本的时候把filter查询给摘掉了,因此在query dsl里面已经找不到filter query了。其实es并没有完全抛弃filter query,而是它的设计与之前的query太重复了。因此直接给转移到了bool查询中。 Bool查询现在包括四种子句,must,filter,should,must_not。 为什么filter会快? 看上面的流程图就能...

weixin_34242509的博客 2773

408王道考研【数据结构】思维导图(章节详细可下载xmind文件)

由于图片太多,不一一放上来了,还有部分章节【查找、排序、B树B+树等】在百度网盘,可以关注我的公众号领取【完整的图片+xmind文件】,如想要获取xmind文件的同学可以关注我的个人公众号“小柒很爱喵”,回复“数据结构导图”,可获得以上导图原图和xmind文件(可修改导图内容、查看导图隐藏的笔记与备注,即上图带杠杠的地方是我进一步助于理解的解释)。 希望对你们...

weixin_41950078的博客 7990

Elasticsearch Boolean Query查询介绍

ES 和 Solr 的底层都是基于Apache Lucene 实现,bool 查询的底层实现是Lucene 的 BooleanQuery,其可以组合多个子句查询,类似 SQL 语句里面的 OR 查询。在 ES 里面 Boolean 查询封装了 4 种 API 接口能力,可以单独使用,也可以组合使用,总结如下:函数描述mustquery 关键词在召回文档里面必须包含,参与相关性评分filterquery 关键词在召回文档里面必须包含,不参与相关性评分,但结果集会被缓存should。

三劫散仙 1555

【云迁移工具RDA】迁移常见问题

Agent无法正常启动,Linux系统提示“SMS.0201 Failed to start sms agent!”,Windows系统提示“SMS.0201 源端主机网络繁忙,无法连接api网关”。该问题通常是由于源端没有通公网,或者没有按照要求配置hosts,无法与iam或者sms通信导致。需要排查源端网络。1.登录源端服务器。2.检查源端是否能正常访问互联网,若无法访问,请处理后重新启动Agent。可参考弹性公网IP Ping不通检查源端的DNS,防火墙,安全组、本地网络等。

2404_89358774的博客 1486

VMware Converter 6.2.0保姆级教程:从物理机到ESXi主机的完整迁移指南(含常见错误排查)

本文提供VMware Converter 6.2.0从物理机迁移至ESXi主机的完整保姆级教程。详细解析了迁移前的环境规划、核心转换过程步骤、版本差异对比,并重点针对代理安装失败、任务卡顿、虚拟机无法启动等常见错误提供了实战排查与解决方案,确保P2V迁移顺利进行。

sam99的博客 380

Elasticsearch:使用布尔查询提高搜索的相关性

当你在Elasticsearch中执行搜索时,将对结果进行排序,以便与你的查询相关的文档排名很高。 但是,可以认为与一个应用程序相关的结果肯针对另一应用程序就没有那么相关。 由于Elasticsearch超级灵活,因此可以对其进行微调以提供针对你特定用例的最相关的搜索结果。 调整结果的一种相对直接的方法是在发送给Elasticsearch的查询中提供其额外的条件查询。 在本博客中,我将向你简要介绍一些示例,以向你展示如何轻松地使用布尔查询 (bool query) 功能以及匹配查询(match queri

Elastic 中国社区官方博客 2312

YOLO+OpenClaw缺陷检测智能体 | 低代码工业质检自动化方案 | 含YOLO模型训练/智能体集成/任务全流程,支持离线日报/预警/趋势分析,解决实时性瓶颈问题(下篇)

某PCB板制造商需要对生产线上的PCB板进行缺陷检测,主要检测划痕、凹坑、污渍和裂纹等缺陷。原有人工检测方式效率仅为200件/小时,漏检率达5%,且检测人员长期工作易疲劳。

qq_36130719的博客 206

ElasticSearch7学习笔记之布尔查询

文章目录基本正向匹配负向匹配嵌套布尔查询单字符串查询should查询dis_max查询单字符串多字段查询最佳字段多数字段混合字段中文和多语言分词检索中文分词拼音分词器hanlp分词英文精确分词 基本 一个布尔查询是一个或多个查询字句的组合,总共有四种子句,其中两个会影响算分,两个个不影响 正向匹配 子句顺序不重要,但如果没有must子句,那么should子句中必须至少有一项匹配。 示例如下,先插入数据: POST /products/_bulk { "index": { "_id": 1 }} { "pr

四国棋客 2696

OsgEarth —— 笔记6 - 开发阶段加入漫游飞行(附源码)

效果      视频地址   源码 源码下载请私信   代码      代码相关内容:           OSG —— 笔记1 - 指令调用模型           OsgEarth —— 笔记1 - 创建地球的earth文件           OsgEarth —— 笔记2 - Qt窗口加载earth地球(附源码)           OsgEarth —— 笔记3 - 为地

1896

64.qt quick-qml使用高德地图插件实现V2版本(新增:位置搜索、路径规划、轨迹编辑等)

qt quick-qml高德地图插件(新增:位置搜索、路径规划、轨迹编辑等) Qt地图插件,使用简单方便,不用浏览器内核,运行高效迅速 跨平台支持,(Qt Windows(MinGW, MSVC)\Linux(桌面、嵌入式)\Android\IOS\等) 在线更新瓦片地图下载,并且支持缓存保存离线地图实现.........

抵抗时间扭曲,坚持做一件有意义的事 6130

Elasticsearch语法知多少之Boolean query

掌握布尔查询,分析子句的多种类型使用方法。

前者已逝,后者未至。 1013

硬件知识点-----SPI串联电阻、振铃、过冲

电阻取值,没有公式,一被传输线的特征阻抗为50欧姆左右,而TTL电路输出电阻大桃为13欧姆左右,在源端串一个33姆,大致和50相当,这样就可以柳制从终端反射回来的倍号,防止再次反射。传输时间tp=L/V,其中L是导线长度,V是电磁波在电路板中的传输速度V=C/sqrDk,其中Dk是光速衰减因子,对于电路板而言是铜线,Dk=4电磁波在电路板中的速度都是慢于光速的。实际上串联多大的电阻与传输线的阻抗有关,为了保证阻抗的连续性,如果传输线的特性阻抗 Z0与驱动源的输出阻抗 Zd不匹配,会引发信号的反射。

贾saisai的博客 2719

ElasticSearch学习笔记(3)· ES高级检索(query)

这里写目录标题八、ES中高级检索1、检索方式2、测试数据3、URL检索4、DSL检索5、DSL高级检索(Query)查询所有(match_all)查询结果中返回的指定条数(size)分页查询(from)查询结果中返回指定字段(_source)关键词查询(term)范围查询(range)前缀查询(prefix)通配符查询(wildcard)多id查询(ids)模糊查询(fuzzy)布尔查询(bool)高亮查询(highlight)多字段查询(multi_match)多字段分词查询(query_string)九

一个到老才知道分享的人的博客 3533

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

视频教程-Lucene全文检索框架+Solr+ElasticSearch搜索引擎(Java高级必备.ES)-Java

Lucene全文检索框架+Solr+ElasticSearch搜索引擎(Java高级必备.ES) ...

weixin_33608600的博客 405

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

编程不良人--ElasticSearch从入门到精通--- 狗剩学习笔记

【编程不良人】ElasticSearch从入门到精通实战教程 https://www.bilibili.com/video/BV1vE411E7WA 视频时间 17 个小时 start ---- 20210626 end ----

狗剩的专栏 1058

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

简单的elasticsearch介绍学习记录

简单上传记录一下自己学习es的过程笔记,方便日后复习查看

qq_19342829的博客 677

3个核心技巧让Elasticsearch数据查询效率翻倍:es-client完全使用手册

es-client是一款专为Elasticsearch设计的开源客户端工具,它通过直观的图形界面让复杂的数据查询变得简单易行。无论您是初次接触Elasticsearch的新手,还是需要高效管理索引的资深用户,这款工具都能显著提升您的工作效率。 ## 🚀 为什么选择es-client而不是官方工具 传统的Elasticsearch官方工具往往需要编写复杂的DSL查询语句,而es-client则

gitblog_00107的博客 965

Elasticsearch学习系列【1】-基础了解与简单的CRUD操作

如今,不管是面试,还是工作中,ES的出场越来越频繁,基于兴趣,迫于现实,开始学习ES,网上找了《ElasticSearch权威指南》,也在bilibili找了写学习视频,以此记录学习过程,总结学习经验。如有不对之处,还请大佬们指点一下。.........

zgliulin 709

ElasticSearch学习随笔之高级检索

本文主要介绍 ES 的一下高级检索功能,80% 的业务场景,简单搜索就可以实现了,但是在一些复杂的业务场景中,我们必须使用一些高级的功能来满足,比如在一些与舆情监测项目或者智能推荐、猜你想搜这种复杂的功能,有时候需要搜索中需要提高相关度,有时候搜索需要减低相关度等。让我们来准备一些数据来进行高级搜索测试,但是问题来了,这些数据真的是头疼,不好生成一些示例数据出来,这时候,chatGTP这是无敌了,简直太方便了。ES 是目前全文检索排行榜。

qq_19283249的博客 3776

MySQL不香吗,为啥京东放弃它拥抱Elasticsearch?

从海量数据中快速找到相关信息,在同领域内几乎没有竞争对手,近两年 DBRanking 的数据库评测中,ES 在搜索引擎领域始终位列第一。腾讯、滴滴、今日头条、饿了么、360 安全、小米、v...

Java知音 395

Elasticsearch查询速度为什么这么快?卧槽真牛X!

从海量数据中快速找到相关信息,在同领域内几乎没有竞争对手,近两年 DBRanking 的数据库评测中,ES 在搜索引擎领域始终位列第一。腾讯、滴滴、今日头条、饿了么、360 安全、小米、v...

weixin_44421461的博客 781

ElasticSearch学习----ElasticSearch中高级检索(Query)

ElasticSearch中高级检索①. 检索方式 _search②. URL检索②. DSL检索1. 查询所有(match_all)2. 查询结果中返回指定条数(size)3. 分页查询(from)4. 查询结果中返回指定字段(_source)5. 关键词查询(term)6. 范围查询(range)7. 前缀查询(prefix)8. 通配符查询(wildcard)9. 多id查询(ids)10. 模糊查询(fuzzy)11. 布尔查询(bool)12. 高亮查询(highlight)13. 自定义高亮

2101

商城-学习整理-高级-全文检索-ES(九)

本文主要介绍了es的一些基本使用和nginx的安装

大数据知识梳理 8482

Elasticsearch学习笔记

ElasticSearch学习笔记一、前言1.什么是RestFul?2.什么是全文检索?3.什么是ElasticSearch?(1)概念(2)ES的应用场景二、ElasticSearch安装 [ centos7环境]1.安装 一、前言 1.什么是RestFul? REST : 表现层状态转化(Representational State Transfer),如果一个架构符合REST原则,就称它为RESTful 架构风格。 资源: 所谓"资源",就是网络上的一个实体,或者说是网络上的一个具体信息。

qq_42265220的博客 636

ElasticSearch

ElasticSearch 1. 什么是RestFul REST : 表现层状态转化(Representational State Transfer),如果一个架构符合REST原则,就称它为 RESTful 架构风格。 资源: 所谓"资源",就是网络上的一个实体,或者说是网络上的一个具体信息 表现层 :我们把"资源"具体呈现出来的形式,叫做它的"表现层"(Representation)。...

小王的博客 751
上一篇: Elasticsearch学习之CRUD操作
下一篇: Elasticsearch学习之Logstash
Micky_Yang
博客等级 码龄8年 58粉丝 143原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值