RESTfull接口访问Elasticsearch

2024-04-02 13:44

本文主要是介绍RESTfull接口访问Elasticsearch,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【数据库的健康值】
curl -X GET  "ip:9200/_cat/health"

【查看所有索引】
curl -X GET "ip:9200/_cat/indices?v"

【查看索引index_name】
curl -X GET "ip:9200/索引?pretty"


【创建索引/文档】
PUT "ip:9200/索引/文档id"
{请求体}

【更新文档】
POST /索引/类型/文档id/_update
{
    "doc": {
        "name": "赤羽信之戒",
        "age": 46
    }
}

【删除文档】
DELETE 索引/类型/文档Id

---------------------------------【查询文档】------------------------------
GET 索引/类型/文档id

GET 索引/类型/_search?q=name:smy

精确匹配
GET 索引/_search
{
  "query": {
    "match": {  
      "name": "任飘渺"
    }
  }
}

and 过滤

GET 索引/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "name": "任飘渺"
          }
        },
        {
          "match": {
            "age": "40"
          }
        }
      ]
    }
  }
}

or 过滤

GET 索引/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "match": {
            "name": "任飘渺"
          }
        },
        {
          "match": {
            "age": "40"
          }
        }
      ]
    }
  }
}

not 过滤

GET 索引/_search
{
  "query": {
    "bool": {
      "must_not": [
        {
          "match": {
            "age": "40"
          }
        }
      ]
    }
  }
}

范围过滤
GET 索引/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "name": "任飘渺"
          }
        }
      ],
      "filter": {
        "range": {
          "age": {
            "gt": 20,
            "lt": 40
          }
        }
      }
    }
  }
}

精确查询  精确查询是通过term关键字来实现的,他的底层是通过直接查询倒排索引,效率更高!
关于分词的解释:
(1)term:直接查询精确的
(2)match:会使用分词器(会先分析文档,然后通过分析的文档进行查询!查询效率低)

说明:如果类型是text类型,那么是可以被分词器解析的;如果是keyword类型的,是不能被分词器解析,想使用match或者term来查询这个字段匹配的,只能查询出完全匹配的数据来,其他的数据差一个字符都不能被查询出来!

GET 索引/_search
{
  "query": {
    "bool": {
      "should": [
        {
          "term": {
            "name": "任飘渺"
          }
        },
        {
          "term": {
            "age": "40"
          }
        }
      ]
    }
  }
}

过滤字段

GET 索引/_search
{
  "_source":["name","age"],
  "query": {
    "match": {
      "name": "任飘渺"
    }
  }
}

排序
GET 索引/_search
{
  "query": {
    "match": {
      "name": "任飘渺"
    }
  },
  "sort": [
    {
      "age": {
        "order": "asc"
      }
    }
  ],
  "from":0,
  "size":1
}

这篇关于RESTfull接口访问Elasticsearch的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/870139

相关文章

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密

java线程深度解析(一)——java new 接口?匿名内部类给你答案

http://blog.csdn.net/daybreak1209/article/details/51305477 一、内部类 1、内部类初识 一般,一个类里主要包含类的方法和属性,但在Java中还提出在类中继续定义类(内部类)的概念。 内部类的定义:类的内部定义类 先来看一个实例 [html]  view plain copy pu

模拟实现vector中的常见接口

insert void insert(iterator pos, const T& x){if (_finish == _endofstorage){int n = pos - _start;size_t newcapacity = capacity() == 0 ? 2 : capacity() * 2;reserve(newcapacity);pos = _start + n;//防止迭代

京东物流查询|开发者调用API接口实现

快递聚合查询的优势 1、高效整合多种快递信息。2、实时动态更新。3、自动化管理流程。 聚合国内外1500家快递公司的物流信息查询服务,使用API接口查询京东物流的便捷步骤,首先选择专业的数据平台的快递API接口:物流快递查询API接口-单号查询API - 探数数据 以下示例是参考的示例代码: import requestsurl = "http://api.tanshuapi.com/a

股票数据接口-陈科肇

陈科肇 新浪财经 sz-深圳sh-上海历史分价表:http://market.finance.sina.com.cn/pricehis.php?symbol=sz000506&startdate=2016-12-27&enddate=2016-12-27历史成交明细(当日成交明细):http://vip.stock.finance.sina.com.cn/quotes_service/v

ElasticSearch的DSL查询⑤(ES数据聚合、DSL语法数据聚合、RestClient数据聚合)

目录 一、数据聚合 1.1 DSL实现聚合 1.1.1 Bucket聚合  1.1.2 带条件聚合 1.1.3 Metric聚合 1.1.4 总结 2.1 RestClient实现聚合 2.1.1 Bucket聚合 2.1.2 带条件聚合 2.2.3 Metric聚合 一、数据聚合 聚合(aggregations)可以让我们极其方便的实现对数据的统计、分析、运算。例如:

OpenStack中加固VNC访问安全

OpenStack中加固VNC访问安全 目录 OpenStack中加固VNC访问安全1.问题发现2.流程分析3.潜在后果4.解决方案④配置IPtables⑤VNC添加访问密码 5.参考链接 1.问题发现 很多同学使用noVNC之后都没有退出终端的习惯,往往都是用完了就直接关闭网页窗口。说这样隐患很大,如果内网里面有一些script kiddie随时都能将我们线上的虚拟