Время от времени запросы к базе данных могут быть сложными, с несколькими соединениями, поэтому их выполнение занимает некоторое время. Если вы запрашиваете большой объем данных, вполне вероятно, что вы не собираетесь использовать их все. Вот где приходит пагинация. С помощью разбиения на страницы я ускорил один запрос до 10-кратного улучшения времени в Ubikap, где я работаю инженером-программистом.
Как разбить на страницы?
Сначала вы должны установить 2 параметра:
- limit: сколько объектов вы хотите получить из базы данных
- offset: какие объекты не будут включены в результат
Вот как будет выглядеть запрос .findAll() с параметром {offset: 4}
и с {смещением: 7, пределом: 3}
Вы также можете использовать его с запросами WHERE, как в примере:
People.findAll({ limit: 5, offset: 10, where: { eyeColor: "Blue" } })