#pagination #spring-data-jdbc
#разбивка на страницы #spring-data-jdbc
Вопрос:
AFAIK, класс Pageable поддерживает только подкачку на основе ОГРАНИЧЕНИЙ / смещений. Однако, будучи довольно универсальным решением, оно имеет некоторые недостатки, описанные здесь https://momjian.us/main/blogs/pgblog/2020.html#August_10_2020
Набор ключей пагинации (ака искать способ или Курсора пагинации) имеет некоторые преимущества с точки зрения производительности и поведения во время параллельной сведения вставок и удалений. Подробности см.
- https://use-the-index-luke.com/no-offset
- http://allyouneedisbackend.com/blog/2017/09/24/the-sql-i-love-part-1-scanning-large-table/
- https://slack.engineering/evolving-api-pagination-at-slack-1c1f644f8e12
- https://momjian.us/main/blogs/pgblog/2020.html#August_17_2020
Итак, есть ли какие-либо планы по поддержке этого метода разбивки на страницы, например, через Pageable<KeyType>
и getKey()
, который затем включается в предложение SQLs WHERE?
Ответ №1:
Эта возможность обсуждалась в команде, и, хотя она не считается срочной, мы хотели бы в конечном итоге предложить ее.
Первым шагом было бы обеспечить поддержку этого в Spring Data Commons, то есть независимом от хранилища API. Проблема заключается в DATACMNS-1729