Замеры производи на синтетических тестах, написав максимально простое приложение, которое будет долбить ваш сервис запросами (например bash скрипт с использованием curl), собирай метрики типа нагрузка процессора, диска, при разных количествах одновременных запросов и т.п.
В конечном счете ориентироваться нужно на количество запросов, которые сможет обработать сервер, при условии одновременно исполняющихся запросов (в скриптах можешь делать тесты с разным их количеством, и сравнивай результат)
Чтобы понять, будет нагружать и что в запросе, используй
EXPLAIN, на практике нагрузку создают не сами выводимые данные, а фильтрация по ним, но в случаях многоуровневых запросов, когда для получения данных нужно связывать по форенкеям с другими таблицами, нагрузка логично возрастет
Кеширование - дает хороший прирост в чтении данных но заставляет решать вопрос инвалидации кеша при записи, т.е. может замедлить ее. Если второе проблемой не является, то тогда смотри, что дешевле процессор или память (кешировать можно и на диске).
ssd диски безоговорочно быстрее hdd дисков, тем более если сравнивать одинаковые сегменты (серверный ssd с серверным sas)
p.s. 1500 записей у клиента, оно ему надо? тем более сразу в dom ему все выдавать? на практике мало какие люди способны потреблять сразу всю информацию с экрана, область зрения у большинства сужена, и больше десятка уже не видят, да и на экран все не влезет, можно подгружать по мере прокрутки.
Фильтрацию же данных можно проводить и на сервере
С другой стороны, если говорить о кешировании, данные ведь и у клиента можно держать, снимая нагрузку на сервер при повторяющихся запросах, так что еще вопрос где лучше фильтровать данные.