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":"天津"
}
如下图:
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":"花果山"
}
如下图:
3.6 删除文档
DELETE person/_doc/1