天天看点

ES的基本API操作ElasticSearch一、索引二、域三、文档

ElasticSearch

ES在使用时,会涉及到五个核心概念:索引(Index)、映射(Mapping)、域(Field)、文档(Document)、倒排索引。

一、索引

1.1 添加索引 (PUT 索引名称)

PUT person
PUT person1
           

1.2 查询单个索引

GET person

           

1.3 查询多个索引

GET person,person1
           

1.4 查询所有索引

GET _all
           

1.5删除索引

DELETE person1
           

二、域

域(Field)相当于数据表中的字段列,当有了索引之后,需要在索引中设置域的相关信息如:名称,类型等。这个过程称为:映射(Mapping)。相当于关系型数据库中设置表的信息。

2.1 添加映射

2.1.1为已存在索引库添加映射关系

PUT person/_mapping
{
  "properties":{
    "name":{
      "type":"text"
    },
    "age":{
      "type":"integer"
    }
  }
}
           

2.1.1查看索引映射信息

GET person/_mapping
           

2.1.1创建索引并添加映射

PUT user
{
  "mappings":{
    "properties":{
      "name":{
        "type":"text"
      },
      "age":{
        "type":"integer"
      }
    }
  }
}
           

2.1.1对于映射 只可以添加字段 不能删除、修改

PUT user/_mapping
{
  "properties":{
    "name":{
      "type":"text"
    },
    "age":{
      "type":"integer"
    },
    "address":{
      "type":"text"
    }
  }
}

GET user/_mapping
           

三、文档

ES中最小的数据单元,代表索引中的一条数据,通常是使用json的数据格式表示的

3.1 添加文档 手动设置id

POST person/_doc/1
{
  "name":"张三",
  "age":23,
  "address":"北京天安门"
}
POST person/_doc/2
{
  "name":"张三",
  "age":23,
  "address":"北京天安门"
}
           

3.2 添加文档 自动生成id

POST person/_doc
{
  "name":"李四",
  "age":29,
  "address":"天津"
}
           

如下图:

ES的基本API操作ElasticSearch一、索引二、域三、文档

3.3 根据id查询文档

GET person/_doc/1
GET person/_doc/2
           

3.4 查询所有文档

GET person/_search
           

3.5 修改文档

PUT person/_doc/1
{
  "name":"悟空",
  "age":123,
  "address":"花果山"
}
           

如下图:

ES的基本API操作ElasticSearch一、索引二、域三、文档

3.6 删除文档