У вас уже есть ответ: вам потребуется больше места в куче, больше оперативной памяти или меньше записей.
Вы можете попытаться увеличить объем памяти, доступной для вашей JVM, но лучше задать вопрос: почемувам нужно запросить 50K записей?
Если вы обрабатываете их на Java, возможно, лучше было бы использовать стратегию, которая выполняет вычисления в базе данных.
Вашим клиентам определенно не нужно смотреть на записи по 50 тыс.один раз.Google может получить миллионы просмотров, но они расставят приоритеты и отправят вам 25 лучших за раз.Ваше приложение должно эмулировать эту стратегию.