服务之间数据的参照完整性

Wal*_*ner 5 database service soa database-design

在SOA中,我一直对使用来自不同数据库或不同服务的数据的服务如何具有参照完整性以使最小数据跨数据库或服务重复而感到困惑.

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

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

我一直试图寻找关于这个问题的答案,但我必须使用错误的短语,因为我没有提出任何有用的东西.

Mik*_*ll' 1

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

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

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