如何把数据快速批量添加到Elasticsearch中

2025-04-17 07:28:31
推荐回答(1个)
回答1:

scroll查询用于有效的从Elasticsearch中检索大量文档,而无需支付深度分页带来的开销。
Scrolling允许我们初始化搜索将结果从Elasticsearch中按批次分离出来直到没有更多结果。这个有点像传统数据库中的游标。

GET /old_index/_search?scroll=1m

}
1、因为保持scroll打开消耗资源,所以我们需要设置超时时间。这里保持1分钟的连接
2、_doc是最有效的排序顺序。
3、在扫描scan的时候,size是应用到每一个片shard上的,所以每一个批次中文档数量应该是size * number_of_primary_shards

该请求返回一个Base-64编码的_scroll_id。现在我们可以通过_scroll_id用_search/scroll接口获取下个批次的数据。

Bulk API使执行多次索引或者删除操作在一个API中完成。这可以极大的提高索引速度。