ElasticSearch - 批量导入数据

ElasticSearch - 批量导入数据

 我们假设一个这样的场景,我们的小伙伴通过爬虫或一些其他方式把某种数据给我们写入到了一个文件当中,这时我们需要从一个数据源将数据导入到ES中,我们有哪些方法可以实现呢?

 大家经常使用的方法应该就是通过编写程序获取数据源然后调用ES提供的API进行各种操作。当然除了这种之外,我们还可以通过bulk这个API来完成。

 大家可以先看看官方文档【docs-bulk】bulk这个操作的话可以将特定形式的文件进行解析后存储到ES当中。

1.准备数据

 这一步可以说是最简单,但是也最容易出问题的一步。这里我们准备了一个简单的数据文件book_index,这里特别注意的是最后一定要换一行,否则会解析错误。

 除了这个细节之外,文本的编码格式、转义字符等各种问题,大家自己亲手实操了之后就知道什么是绝望了。
在这里插入图片描述

2.Bulk导入数据

 这里我们进入到文件夹目录使用curl -X POST "http://111.229.125.192:9200/_bulk" -H 'Content-Type: application/json' --data-binary @book_index命令导入即可,这里第一个问题就是我们需要先创建这个索引。
在这里插入图片描述
 创建索引之后再导入就可以发现我们的数据已经进入到ES当中了。
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值