Node.js 用户帐户的数据库设计
我正在构建SaaS平台。一个用户只能有一个帐户(或用户帐户)。这意味着一个用户拥有电子邮件、密码、余额和分层计划 我感到困惑的是,我应该将用户帐户设置和层/余额数据分开吗 我是否应该将其分为两种模式:用户(电子邮件、密码)和帐户(余额、层级、用户id) 或者让它成为一个模型:用户帐户(电子邮件、密码、余额、层、用户id)Node.js 用户帐户的数据库设计,node.js,mongodb,mongoose,database-design,Node.js,Mongodb,Mongoose,Database Design,我正在构建SaaS平台。一个用户只能有一个帐户(或用户帐户)。这意味着一个用户拥有电子邮件、密码、余额和分层计划 我感到困惑的是,我应该将用户帐户设置和层/余额数据分开吗 我是否应该将其分为两种模式:用户(电子邮件、密码)和帐户(余额、层级、用户id) 或者让它成为一个模型:用户帐户(电子邮件、密码、余额、层、用户id) 我认为用户模型在结构上不会有太多变化,因为它只是用于身份验证。。但是,对于该账户,未来可能会有一些变化您应该拆分。这叫做关注点分离。您有一个用于身份验证的模型,另一个用于用户详
我认为用户模型在结构上不会有太多变化,因为它只是用于身份验证。。但是,对于该账户,未来可能会有一些变化您应该拆分。这叫做关注点分离。您有一个用于身份验证的模型,另一个用于用户详细信息。您可以将一个外键从帐户添加到用户。理想的方法应该是拥有两个不同的集合,但在您处理MongoDB(NoSQL DB)时,您应该关注非规范化。 i、 e.避免更多的收集和关系
因此,只有一种模式:用户帐户(电子邮件、密码、余额、层、用户id)是理想的选择。我使用的是NoSQL MongoDB