i know there is support for bulk index operation. but is it possible to do the same for search queries? i want to send many different unrelated queries (to do precision/recall testing) and it would probably be faster using bulk query
Elasticsearch is a popular open source search engine. Because of its real-time speeds and robust API, it's a popular choice among developers that need to add full-text search capabilities in their projects.
One of the most common queries in elasticsearch is the match query, which works on a single field. And there's another query with the very same options that works also on multiple fields, called multi_match. These queries support text analysis and work really well.
Bulk: indexing multiple documentsedit Bulk requests allow sending multiple document-related operations to Elasticsearch in one request.
Elasticsearch is a little industrial and by a little industrial I mean a lot industrial. Interacting with the service is pretty difficult, searching through data is hard and the documentation is cryptic at best; get something wrong and you can expect to sit for 3 hours while your data re-indexes.
Yes, you can use the multi search API and the /_msearch
endpoint to send as many queries as you wish in one shot.
curl -XPOST localhost:9200/_msearch -d '
{"index" : "test1"}
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10}
{"index" : "test2"}
{"query" : {"match_all" : {}}}
'
You'll get a responses
array with the response of each query in the same order as in the request.
Note:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With