Я считаю, что вы имеете в виду кэш второго уровня, то есть кеш, охватывающий более одного сеанса Hibernate.
Как правило, кэш запросов используется для запросов с большим или частым доступом, чтобы ваше приложение реже обращалось к базе данных.
Я не уверен, включает ли ваш вопрос сущностный кеш, но вам определенно следует его изучить. Этот кэш включает в себя отдельные объекты или их коллекции независимо от контекста (то есть конкретных запросов). Я бы сказал, что это самый полезный тип кэширования.
Чем больше ваш TPS или количество объектов, тем больше вы выиграете от использования такого кэша. Когда вы сталкиваетесь с несколькими тысячами запросов на транзакцию, выборка объектов из кэша (обычно в ОЗУ), а не запросы к базе данных и сопоставление, может сэкономить много драгоценного времени.
Будьте осторожны, когда вам нужны 100% -ые свежие (онлайн) результаты.
Смотри также:
Повышение производительности в документах Hibernate.