使用bulk方式将json文件数据导入ES

使用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的名称。

 

ps:这种binary的方式是目前ES数据导入性能最好的一种,写入速率最快

你可能感兴趣的:(ElasticSerach)