您的位置:首页 > 其它

elasticsearch基本索引和CRUD操作、bulk批量操作

2019-01-07 01:24 239 查看

ELK包括ElasticSearch(数据存储、快速查询)、logstash(日志搜集)、kibana(展示ElasticSearch数据的图形界面)。

4种常用的HTTP请求方法:

  • POST /uri 创建
  • DELETE /uri/xxx 删除
  • PUT /uri/xxx 更新或创建
  • GET /uri/xxx 查看

CRUD操作示例:

PUT test
{
"settings": {
"index":{
"number_of_shards":5,
"number_of_replicas":1
}
}
}

GET test/_settings
GET _all/_settings
GET .kibana,test/_settings

#修改setting
PUT test/_settings
{
"number_of_replicas": 1
}

#shards必须一开始设置好,后期不能改
PUT test/_settings
{
"number_of_shards":6
}

GET _all
GET test

#保存文档
PUT test/job/1
{
"title":"python分布式爬虫开发",
"salary_min":15000,
"city":"北京",
"company":
{
"name":"BaiDu",
"company_addr":"BeiJing"
},
"publish_date":"2017-4-16",
"comments":15
}

POST test/job/
{
"title":"elasticsearch",
"salary_min":15000,
"city":"HangZhou",
"company":
{
"name":"AliBaBa",
"company_addr":"HangZhou"
},
"publish_date":"2017-4-16",
"comments":15
}

GET test/job/1

GET test/job/1?_source=title,city
GET test/job/1?_source

#修改文章
PUT test/job/1
{
"title":"python分布式爬虫开发",
"salary_min":15000,
"company":
{
"name":"BaiDu",
"company_addr":"BeiJing"
},
"publish_date":"2017-4-16",
"comments":20
}

POS test/job/1/_update
{
"doc":{
"comments":30
}

}

#删除
DELETE  test/job/1
DELETE test/job
DELETE test

bulk批量操作

批量导入可以合并多个操作,比如index,delete,update,create等等。也可以帮助从一个索引导入到另一个索引。

bulk批量添加索引 示例:

POST _bulk
{"index":{"_index":"test2","_type":"job2","_id":"2"}}
{"tittle":"python分布式爬虫开发","publish_date":"2017-4-16","comments":15}
{"index":{"_index":"test2","_type":"job3","_id":"3"}}
{"tittle":"python django开发","publish_date":"2017-4-18","comments":50}

两行构成一个数据,不可再多添加换行符,否则出错;
delete行为只有一行。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: