Наилучшим вариантом являтся написание своего маленького класса (хотя бы функции) для вашей задачи, (класса)который отфильтруем и отдаст назад только ID отфильтрованных элементов, которые уже потом передаются массивом в FILTER_NAME компонента.
Разобьете на несколько запросов, на столько, на сколько вам надо, на 2-5 (думаю не больше) маленких запросов.
Повышает производительность в разы, никаких мега включаемых запросов.