5

在 SOA 中,我一直困惑于处理来自不同数据库甚至不同服务的数据的服务如何具有引用完整性,以便在数据库或服务之间复制最少的数据。

例如,您在某种身份验证数据库中有一个用户表,并且您希望在另一个数据库中重用此用户信息。您还希望强制该用户的记录存在于身份验证数据库中。假设您要将身份验证数据库中的用户帐户与另一个数据库中的新闻文章相关联。这是怎么做的?您将如何使用 LDAP 之类的东西来做到这一点?

如果身份验证信息包含在同一个数据库中,只是一个不同的表,那么我可以看到您如何只使用外键来创建新闻文章和用户帐户之间的关联。

我一直在尝试寻找有关此问题的答案,但我必须使用错误的短语,因为我没有提出任何有用的东西。

4

1 回答 1

1

有些平台允许数据库之间的外键约束,有些则不允许。如果您需要数据库之间的参照完整性,您需要选择一个支持它的平台。规范化——一个不同的问题——从不说“将这些列移动到不同的数据库”。

在多租户数据库中,您通常会选择不同的架构。(您通常不会将所有用户的身份验证放在一个数据库中,而他们经过身份验证的内容可以在另一个数据库中使用。)

浏览标记为“多租户”的问题;这可能是一个对你有帮助的术语。MSDN有一个相当好的鸟瞰图。

于 2012-07-03T15:48:11.750 回答