我正在开发一个网络应用程序,我在数据库结构方面遇到了问题,我不知道要采取哪个方向。我有一个包含用户信息的数据库,我可以设计两种方式之一。第一种是为每个用户创建一个模式和一组表(为每个用户复制结构),第二种是根据user-id创建一组表和查询信息。假设有100000个用户。
在我看来,多个模式更安全,因为限制用户权限是微不足道的,但性能和可伸缩性呢?管理似乎是一种冲洗,因为倾倒(和恢复)许多模式并不比倾倒一些模式更难。
答案 0 :(得分:1)
单独的模式将为您提供更多隔离和更安全的安全性,因为您可以为每个sschema分配一个单独的数据库角色,并确保一个客户的访问权限不能访问另一个客户。
如果您有100,000个用户,则单独的模式实际上不起作用 - 如果这意味着您有100,000个模式。好吧,它会工作,但系统不是为处理那么多架构而设计的,而且你可能会遇到性能问题。因此,如果您拥有那么多用户,那么您需要以其他方式实现这一目标。