DataLoader батчит и дедуплицирует загрузки ключей в рамках одного тика event loop / запроса: собирает load(id) вызовы и один раз дергает batch-функцию.
Разбор
- Создавайте instance per request.
- Кэш внутри запроса снижает повторы одного id.
- Не путать с глобальным Redis-кэшем навсегда.
- Порядок результатов batch должен соответствовать ключам.
Итог
DataLoader — per-request batching/dedup для устранения N+1.