Ответ 1
Фильтр внутри запроса
Elasticsearch выполнит запрос и фильтр в том, что когда-либо будет более эффективным, чтобы уменьшить набор результатов и получить ответ как можно быстрее. Это называется filter_query
Фильтр после запроса
Запрос запускается первым, а затем результаты фильтруются, прежде чем возвращать их клиенту. Это называется post_filter.
Хотя post_filter менее эффективен, он может быть полезен при объединении с агрегацией - агрегированные значения не будут учитывать post_filter, т.е. агрегирование будет только на результатах запроса.