Elasticsearch Query DSL combines queries:
bool: combine must, should, must_not, filtermatch: full-text search with analysisterm: exact value match (no analysis)range: numeric/date ranges
Filters are cached and don't affect scoring. Put exact matches in filter context, relevance queries in query context.