ES 数据批量下载

ES 数据批量下载,第1张

ES 数据批量下载 ES 数据批量下载
# ES IP
IP=xxx
# ES索引名称
ES_NAME=xxx
# 一次下载数据量
ONE_CNT=1000
# 获取ES索引当前数据量
ES_CNT=`curl -XGET "http://${IP}:9210/${ES_NAME}/_count" -d '{}'`
ES_CNT=`echo ${ES_CNT} | cut -d ':' -f2`
ES_CNT=`echo ${ES_CNT} | cut -d ',' -f1`
CNT_N=$[ES_CNT/$ONE_CNT]

# 第一次下载
curl -XGET "http://${ip}:9210/${ES_NAME}/_search?pretty&filter_path=_scroll_id,hits.hits._id&scroll=5m" -d '{"from" : 0 ,"size" : 1000}' > es.json

a=`cat es.json | grep scroll_id`
b=`echo ${a} | cut -d '"' -f4`
echo ${b}
i=0
while (( ${i} <= ${cnt_n} ))
do
sleep 0.5s
echo ‘’ >> es.json
curl -XGET "http://${IP}:9210/_search/scroll?scroll=5m&filter_path=hits._id&scroll_id=${b}" >> es.json

if [ $? -eq 0 ]
then 
echo ${i}
((i++))
else
exit -1;
fi
done

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5665285.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存