ElasticSearch基本操作
2018-08-17 本文已影响0人
edwin1993
API基本格式:
http://<ip>:<pord>/<index>/<type>/<document id>
常用http动词:
GET/PUT/POST/DELETE
创建index:
非结构化创建:
用head插件进行操作:

创建成功:

加粗线的是主分片。
查看index信息,mapping(mapping是用来对数据类型进行约束的)属性为空,说明是非结构化数据:

结构化创建:
选择POST动作
_mappings 指定为映射
下方输入映射结构体

提交后刷新:

为了简化创建过程,可以使用工具postman:


插入
指定文档id插入
对people索引下的man类型插入id为1的一个文档。

在数据浏览中可以查到刚刚创建的信息:

自动产生文档id插入
需要改用POST方法

修改
直接修改
使用POST方法,同时指定id并在最后添加_update

脚本修改
lang指定脚本语言
inline为脚本内容

或者将参数放在外部:

删除
删除doc

删除index

查询
直接查询

条件查询
条件查询需要使用post,同时还有指令_search
body中可以编写match条件
size指定返回的条数,默认为10

添加条件并排序:
{
"query": {
"match" : {
"country": "China"
}
},
"sort": [{"age": {"order": "desc"}}]
}
聚合查询:
{
"aggs": {
"group_by_age": {
"terms": {
"field": "age"
}
},
"group_by_country": {
"terms": {
"field": "country"
}
}
}
}
在返回结果之后添加了聚合信息:

也可以做计算
{
"aggs": {
"group_by_age": {
"stats": {
"field": "age"
}
}
}
}
