Я работаю над веб-приложением, которое по завершении будет размещенным многопользовательским решением. Я пытаюсь найти лучший способ справиться с дизайном базы данных для моего приложения. В частности, мне нужно выяснить, как обрабатывать несколько отдельных учетных записей.
На мой взгляд, есть несколько вариантов:
1) иметь один набор таблиц базы данных. В каждой таблице включите столбец «пользователь» или что-то подобное, чтобы сопоставить каждую строку с соответствующей учетной записью пользователя.
2) Создайте совершенно отдельную базу данных для каждого пользователя. По соображениям производительности, это не очень хорошая идея.
3) Создайте отдельную схему для каждого пользователя в одной базе данных. Каждая схема будет содержать таблицы для каждого пользователя.
Как бы вы справились с этой проблемой? Есть ли вариант, который мне не хватает? Я использую PostgreSQL в качестве базы данных, если это как-то повлияет на решение этой проблемы.