Bootstrap

Elasticsearch批量导入

当我们在想导入少量(一两条)数据时,使用手动导入能够就能够实现。方法是:

1. 首先打开控制台

http://localhost:5601/app/kibana#/dev_tools/console?_g=()

2. 手动写入数据

POST _bulk
{"index":{"_index":"fei","_type":"id","_id":1001}}
{"code":"12345","price":111,"name":"鹅鹅鹅","place":"宇宙","category":"汽水"}
{"index":{"_index":"fei","_type":"id","_id":1002}}
{"code":"12346","price":121,"name":"曲项向天歌","place":"银河","category":"快乐"}
{"index":{"_index":"fei","_type":"id","_id":1003}}

在这里插入图片描述

3. 查询数据

GET /fei/_search
{
  "query":{"match_all":{}}
}

查询结果在这里插入图片描述

但是如果有大量的(比如几十万条)数据要插入的话用这种方式就不合适了。
那么这时我们会借助使用工具 curl.exe 来插入,curl可以模拟浏览器向服务器提交数据,首先可以下载curl.exe
把准备好的数据放在和curl.exe同一个文件夹下在这里插入图片描述注意!!!一定要放在同一个文件夹下!!在此文件夹下打开终端执行命令curl -H "Content-Type: application/json" -XPOST "localhost:9200/fei/id/_bulk?refresh" --data-binary "@products.json"
导入时会花费时间,请耐心等待一会儿~在这里插入图片描述导入截图
查询结果

GET /fei/_search
{
  "query":{"match_all":{}}
}

在这里插入图片描述返回数据总量是147940条,说明导入成功并且查询到了。

;