使用json文件可以给es中导入数据,10万条左右的数据可以一次导入,数量太大时导入就会报错。大数量的到导入还是需要用bulk方式。
accounts.json文件格式如下:
{"index":{"_id":"1"}}
{"title":"learn es","content":"work hard"}
{"index":{"_id":"2"}}
{"title":"learn hadoop","content":"work hard"}
...
如果是在window下使用curl命令给es导入数据,需要注意accounts.json的最后增加一个空行,否则最后一条数据将录不进去。
linux下的导入命令为:
curl -XPOST '27.10.1.2:9200/bank/account/_bulk?pretty' --data-binary "@/home/dd/accounts.json"
windows下的curl需要先下载windows版的curl,再输入命令:
curl -XPOST 27.10.1.2:9200/bank/account/_bulk?pretty --data-binary "@D:\data\accounts.json"
其中bank为索引名称,account为type的名称。
大数量的导入还需要bulk方式,参考代码如下: