Я много читал о реляционных базах данных, используя много операторов JOIN для каждого SELECT. Однако мне было интересно, есть ли проблемы с производительностью в долгосрочной перспективе при злоупотреблении этим методом.
Например, допустим, у нас есть таблица users
. Я обычно добавляю «наиболее используемые» данные вместо того, чтобы делать какие-либо дополнительные соединения. Например, когда я говорю, что наиболее часто используемыми данными будут имя пользователя, отображаемое изображение и местоположение.
Эти данные всегда будут нужны при отображении любого взаимодействия с пользователем на веб-сайте, например: для каждой comments
таблицы JOIN для articles
. Вместо того, чтобы выполнить JOIN для таблиц users
& users_profiles
, чтобы получить 'location' и 'display', просто используйте информацию в таблице users
.
Это мой подход, однако я знаю, что есть много превосходных и опытных программистов, которые могут дать мне совет по этому вопросу.
Мои вопросы:
Должен ли я попытаться быть консервативным с СОЕДИНЕНИЯМИ? или я должен использовать их больше? Почему?
Есть ли проблемы с производительностью в долгосрочной перспективе при частом использовании JOIN?
Примечание: Я должен уточнить, что я вообще не пытаюсь избегать JOINS. Я использую их только при необходимости. В этом примере будут авторы комментариев / статей, дополнительная информация профиля, которая отображается только на страницах профилей пользователей ... и т. Д.