ElasticSearch的客户端操作

Posted wnwn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch的客户端操作相关的知识,希望对你有一定的参考价值。

实际开发中,主要由三种方式可以作为elasticsearch服务的客户端:

  1.elasticsearch-head插件;

  2.使用elasticsearch提供的Restful接口直接访问;

  3.使用elasticsearch提供的API进行访问;

使用Postman工具进行Restful接口访问(下载地址:https://www.postman.com/

  1.elasticsearch的接口语法

curl ‐X<VERB> <PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING> ‐d <BODY>

    解释:

      VERB:适当的HTTP方法或谓词,(GET,POST,PUT,DELETE);

      PROTOCOL:HTTP或者HTTPS(如果你在elasticsearch前面有一个HTTPS代理);

      HOST:elasticsearch集群中任意节点的主机名,或者用localhost代表本机机器上的节点;

      PORT:运行elasticsearch http服务的端口号,默认为9200;  

      PATH:API的终端路径;

      QUERY_STRING:任意可选的查询字符串参数;

      BODY:一个JSON格式的请求体;  

  2.创建索引index和映射mapping(添加)

    2.1 在postman地址栏中输入如下地址:(添加的HTTP方法是PUT)

http://localhost:9200/wn_2

    2.2 请求体

{
    "mappings":{
        "type_table1":{
            "properties": {
                "id":{
                    "type":"long",
                    "store":true,
                    "index":"not_analyzed"
                },
                "title":{
                    "type":"text",
                    "store":true,
                    "index":"analyzed",
                    "analyzer":"standard"
                },
                "content":{
                    "type":"text",
                    "store":true,
                    "index":"analyzed",
                    "analyzer":"standard"
                }
            }
        }
    }
}

      技术图片

 

    2.3 点击Send按钮,查看页面执行结果

      技术图片

      点击【信息】下的【索引信息】,查看elasticsearch-head: 

      技术图片

  3.创建索引后设置mapping(修改)

    3.1 先创建一个索引,不指定mapping信息

      技术图片

 

    3.2 请求的url(修改请求的方式是POST)

http://localhost:9200/wn_1/type_table2/_mapping

    3.3 请求体  

{
        "type_table2": {
            "properties": {
                "id":{
                    "type":"long",
                    "store":true,
                    "index":"not_analyzed"
                },
                "title":{
                    "type":"text",
                    "store":true,
                    "index":"analyzed",
                    "analyzer":"standard"
                },
                "content":{
                    "type":"text",
                    "store":true,
                    "index":"analyzed",
                    "analyzer":"standard"
                }
            }
        }
}

    3.4 点击Send后执行的结果

      技术图片

      技术图片

 

  4.删除索引index

    4.1 请求的url  (删除的请求方式是delete)

http://localhost:9200/wn_2

    4.2 实现效果

      技术图片

 

       技术图片

  5.创建文档document

    5.1 请求的url (请求方式post)

http://localhost:9200/wn_1/type_table2/1

    5.2 请求体

{ 
    "id":1,
    "title":"ElasticSearch是一个基于Lucene的搜索服务器", 
    "content":"它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java 开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时 搜索,稳定,可靠,快速,安装使用方便。" 
}

    5.3 点击Send后,查看实现效果

      技术图片

 

       技术图片

  6.修改文档document

  7.删除文档document

  8.查询文档-根据id查询

  9.查询文档-querystring查询

  10.查询文档-term查询

以上是关于ElasticSearch的客户端操作的主要内容,如果未能解决你的问题,请参考以下文章

ElasticSearch学习问题记录——Invalid shift value in prefixCoded bytes (is encoded value really an INT?)(代码片段

ElasticSearch的客户端操作

ElasticSearch的客户端操作

ElasticSearch-学习笔记04Java客户端操作索引库

springboot整合es客户端操作elasticsearch

JavaApi操作ElasticSearch(强烈推荐)