Is there any performance difference if I write out the query string in Lucene syntax vs using the term filter in dicts?
In my particular use case, I find it easier to type out my logic in a list and join them with ANDs so doing it in query_string is preferred as it is both more readable and easier to write — but if the native term filter is faster, I would’ve used it. All of them are field keyword filters (that a field exactly match a string)
First time I run the query it returns after 200 msec but if I run it again it is faster (~20-30) because it s perhaps cached? I am using bool query for both.
Great. So no score is ran which means to me that's it's considered as filters. The good thing is that filters are cached which explains also a faster execution after some runs.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.