Я думаю о разработке схемы, которая предполагает наличие пользователей и ролей пользователей, но я не уверен, что будет лучшим маршрутом.
Вариант 1
Создайте три таблицы, одну с информацией о пользователе, одну с информацией о роли, а другую с отношением роли пользователя.
users {
u_id,
etc
}
roles {
r_id,
r_name,
etc
}
user_roles {
u_idm
r_id
}
Опция 2
Создание двух таблицодин с информацией о пользователе, а другой с ролью, информацией о роли и информацией о связи.
users {
u_id,
etc
}
roles {
r_id,
u_id,
r_name,
etc
}
Вариант 1 более устойчив, но требует дополнительного объединения.Вариант 2 потребует дополнительного первичного ключа, но будет только одно соединение.Если я когда-либо изменю имя роли, обновление с использованием параметра займет больше времени, но я не ожидаю частых обновлений.
Для масштабируемого решения, что было бы лучше?Какие еще идеи у меня отсутствуют?Это решение для mysql и postgresql.