У меня есть 3 таблицы и связь, которая является лучшим способом извлечения данных

#mysql #spring-boot #jpa

Вопрос:

Я использую Java и JPA, я знаю ниже 2 способа, но это лучший способ с точки зрения производительности. Один из них прост: мы можем получить данные таблицы по одному и вернуть их пользователю. Другим способом я использую JOIN и напишу запрос select, чтобы получить данные.

Но я хотел знать любой другой способ или что лучше.

Комментарии:

1. Меньшее количество обращений к серверу базы данных туда и обратно почти всегда приводит к увеличению скорости.

Ответ №1:

Любая приличная СУБД имеет мощный оптимизатор, который будет анализировать соединение и другие элементы запроса, чтобы найти наиболее эффективный способ получения данных с учетом размера различных таблиц, индексов, стратегий кэширования и т. Д. Вы никогда не превзойдете оптимизатора, читая записи одну за другой.

Кроме того, как только вмешаются некоторые параметры, велика вероятность того, что СОЕДИНЕНИЮ потребуется ваше приложение для доступа к меньшему количеству данных, чем чтение каждой таблицы. Это может существенно повлиять на производительность, если база данных находится на отдельном сервере и если ваше приложение находится под высокой нагрузкой.