Эмпирическое правило всегда идентифицирует отдельные сущности (вещи) и помещает их в отдельные таблицы.Подумайте об отношениях между этими объектами:
- Фотографии принадлежат галереям,
- Фотографии принадлежат пользователям,
- Галереи могут принадлежать одному или нескольким пользователям.
(Это только примеры - может быть, в вашем случае все по-другому)
Таким образом, вы начнете мыслить естественным образом, используя понятия реляционных баз данных.
Следующий шаг - определить, какой тип отношений существует между этими объектами.И так:
- Пользователь может иметь много фотографий, но одна фотография принадлежит одному пользователю (отношение один ко многим или 1: n)
- У пользователя может быть много галерей, и каждаягалерея может принадлежать многим пользователям (отношение многие ко многим или m: n)
На основании вышеизложенного вы можете затем создать «связи» между этими таблицами вещей, используя так называемые внешние ключи.Узнайте больше о простом проектировании реляционных баз данных, и все будет в порядке.
Относительно скорости.Не волнуйтесь об этом сейчас.База данных предназначена для того, чтобы мы могли создавать множество различных связанных таблиц, и она оптимизирована для этого.Вы можете беспокоиться об оптимизации, когда достигнете миллионов элементов в своих таблицах.