最佳实践:单独或单个数据库?

时间:2016-05-30 05:38:06

标签: database database-design architecture

我现在很困惑为金融交易系统设计好的架构。 例如 : 我有一些表:

  1. MSMembers (提供会员资料和会员的用户名密码)
  2. TRTransactions (表记录来自其他主机的所有交易,例如会员的主机)
  3. MSFees (与交易次数相关的分层费用清单)
  4. 在我看来,我认为我可以:

    1. 为事务数据和主数据分隔数据库。例如, DBMaster :MSMembers,MSFees; DBTransaction :TRTransactions 所以我的应用程序(我的TransactionService而不是Web)必须连接到多个数据库,如果我的服务连接到多个数据库,它是否有效?
    2. 或者,与第1点相同,但我在DBTransaction中创建MSMembers和MSFees,因此TransacionService不需要连接到多个数据库。
    3. 请为此案提供一些建议。

      先谢谢。 :)

1 个答案:

答案 0 :(得分:0)

没有理由使用单独的数据库,除非您使用的是MySQL(在这种情况下database表示其他数据库中的schema)。此外,还不清楚为什么你会首先将它们分成不同的模式。除非您希望有效地使用不同的模式来管理应用程序的不同方面,否则实际上无法从中获益。

所以将所有内容保存在一个数据库中。这样更简单,您可以在各部分之间强制实施真正的数据库约束(参照完整性等)。