zoukankan      html  css  js  c++  java
  • ElasticSearch的基本API

    ElasticSearch的基本API

    索引

    创建空索引

    put  /index_name
    {
        "settings" : {
            "number_of_shards" : 3,
            "number_of_replicas" : 1
        }
    }
    

    创建一个索引名为index_name的空索引,并且设置3个主分片,一个备份分片。

    获取索引

    GET /index_name
    

    获取index_name的索引信息,支持通配符搜索

    删除索引

    DELETE /index_name
    

    删除名称为index_name的索引。

    DELETE /index_name1, index_name2
    

    删除多个索引

    DELETE /_all
    

    删除所有的索引。

    修改索引设置

    PUT /index_name/_setting
    {
        "number_of_replicas": 1
    }
    

    修改index_name的索引,设置备份分片为1

    打开或关闭索引

    POST /index_name/_close
    {
    }
    

    关闭索引,搜索时只能显示元数据不能显示具体的数据

    POST /index_name/_open
    {
    }
    

    开启索引,可以搜索的具体的数据

    索引别名

    POST /
    {
    "actions" : [
    { "remove" : { "index" : "index_name", "alias" : "alias1" } },
    { "add" : { "index" : "index_name", "alias" : "alias2" } }
    ]
    }
    remove用于删除别名,add用于添加别名,可以先使用remove然后使用add用于修改指定索引的别名。

    文档

    插入数据

    PUT  /index_name/type_name/doc_id
    {
         "key1": "value1",
         "key2": "value2",
         "key3": "value3"
         ......
    }
    

    指定文档id进行上传

    POST  /index_name/type_name/
    {
         "key1": "value1",
         "key2": "value2",
         "key3": "value3"
         ......
    }
    

    不指定文档id上传,系统会生成一个唯一的文档id

    修改文档

    文档在ElasticSearch中是不可变,修改文档的逻辑是新建一个文档覆盖旧文档。

    PUT  /index_name/type_name/doc_id
    {
         "key11": "value11",
         "key22": "value22",
         "key33": "value33"
    }
    

    响应中_version字段会加一。

    删除文档

    DELETE  /index_name/type_name/doc_id
    

    删除指定id的文档

    查询

    空搜索

    GET /_search
    

    没有指定任何查询条件,只返回索引中的所有文档

    多索引搜索

    GET /index_1,index_2/_search
    

    在index index_1和index_2中搜索

    GET /index_name/type_name/doc_id/_source
    

    只获取指定id的source内容,会忽略元信息

    GET /index_1,index_2/type_1,type_2/_search
    

    在indexindex_1和index_2中搜索类型type_1和type_2

    POST  /_mget
    {
      "docs" : [
                {"_index" : "index_name1","_type" : "type_name1","_id" : "doc_id1"},
                {"_index" : "index_name2","_type":"type_name2","_id" :"doc_id2"}
          ]
    }
    

    分页

    GET  /_search?size=5&from=5
    

    使用size和from进行分页

    简易搜索

    将搜索条件在查询字符串中,如:

    GET /_all/index_name/_search?q=filed_name:field_value
    

    搜索所有索引中类型为index_name索引中filed_name中包含filed_value的文档。

  • 相关阅读:
    supervisor 安装与使用
    CF39C-Moon Craters【dp】
    NWERC2020J-Joint Excavation【构造,贪心】
    CF25E-Test【AC自动机,bfs】
    CF19E-Fairy【树形结构,差分】
    CF11D-A Simple Task【状压dp】
    CF5E-Bindian Signalizing【单调栈】
    P6628-[省选联考 2020 B 卷] 丁香之路【欧拉回路,最小生成树】
    CF666E-Forensic Examination【广义SAM,线段树合并】
    CF235D-Graph Game【LCA,数学期望】
  • 原文地址:https://www.cnblogs.com/abel-huang/p/8290593.html
Copyright © 2011-2022 走看看