JPA - Hibernate - Пагинация - Размер передаваемых данных - PullRequest
0 голосов
/ 06 декабря 2011

Я использую JPA с Hibernate в качестве поставщика.Я заметил, что запрос «выберите топ n» используется для разбивки на страницы - чтобы получить записи с 990 по 1000, в базу данных выдается запрос «выберите топ 1000».Все ли данные для строк от 1 до 1000 передаются клиенту?(серверы баз данных и приложений находятся на разных физических серверах).Как измерить объем данных (в байтах), передаваемых между базой данных и сервером приложений?

1 Ответ

0 голосов
/ 06 декабря 2011

Перевод на SQL зависит от диалекта базы данных.Например, при использовании Oracle выбираются только запрошенные строки.Hibernate использует ResultSet.absolute() (если возможно) для прямого перехода к 990-й строке, когда он не может выбрать только 10 искомых строк.Отладьте метод Loader.doQuery, чтобы проверить, что Hibernate делает с вашей базой данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...