es搜索大量多个索引

最近碰上一个麻烦的问题,要搜索多个索引,查了查资料,下面这些是比较常见的:

/index1,index2/_search
/*1,*2/_search
/index*/_search
/all/_search

另外还有别名搜索,全部取一个别名
但是我这问题有点不同,我要搜索的索引特别多,而且还没有规律可循,既不能用别名,索引太多又不能全堆到url里,毕竟url长度有限
这里找到了一个通过multi search方式解决的思路,可以把索引名字放到body里
multi search不用_search而是_msearch,这种方式需要写一个json,格式大概位

header\n
body\n

就是两行json,中间不能有换行,第一行大概这样

{"index":"index1,index2"}

也就是原来url里的内容,给它变成json
第二行就是原来的请求体json,但是同样不能有换行,否则就乱了
最后需要换行一次,否则请求会报错

_msearch
整个json

返回基本同_search

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值