При загрузке коллекции агрегатов с ассоциациями 1-N SDJ (за очень редким исключением) страдает проблемой N+1 - общее кол-во запросов будет: 1 запрос на загрузку корней + N * K запросов на загрузку коллекций, где N - кол-во агрегатов в результате первого запроса, а K - кол-во ассоциаций у агрегата.
Частично это можно обойти с помощью кастомной энергичной загрузки связанных агрегатов. При условии загрузки одного уровня ассоциаций, текущая версия сделает 1+K запросов - один запрос для выборки корней агрегатов и по одному запросу на выборку ассоциаций.
Но требуется вытащить несколько уровней вложенности (корень агрегата, его ассоциацию и ассоциацию ассоциации), то текущая реализаций кастомной энергичной загрузки тоже начнёт страдать проблемой N+1.
Самым трудозатратным, но самым эффективным способом вытащить больше дерево (или лес небольших деревьев) агрегатов является выборка сразу всего дерева целиком с помощью PostgreSQL jsonb и его парсинг Jackson-ом в кастомном конвертере в модель.