我是一个为我的公司SaaS产品构建Web应用程序的项目的首席开发人员.我们目前正在使用LDAP来存储用户数据,例如ID,密码,联系方式详细信息,首选项和其他用户特定数据.
我们正在构建的应用程序之一是报告服务,它将收集并向最终用户呈现管理信息.显然,这项服务需要一个RDBMS,但它还需要访问存储在LDAP中的用户数据.
在我看来,我们有两个基本的实现选项:
虽然选项1中建议的重复数据(以及实现实现这一目标的机制)似乎是错误的方法,但我的直觉是选项2的表现不够好(如何将LDAP数据加入到RDBMS数据中)有效地作为纯RDBMS实现?).
我找到了一个相关的问题,但我仍然不确定采取哪种方法.我有兴趣看到人们对任何选项或其他选项的看法.
为什么您认为复制数据是错误的方法?报告工具(基于网络的或其他的)主要是围绕关系数据库管理系统构建的,因此任何混合都会引入不必要的复杂性。报告可能需要相当频繁地更改(根据经验),因此您希望它们尽可能简单。您存储的有关用户的数据不太可能经常更改其格式,因此一旦您的导入功能正常工作,您就不需要再次触及它。
我看到的唯一障碍是延迟:如何确保 RDBMS 副本是最新的?您可能需要确保更新代码写入两个目标。就个人而言,我也不一定将 LDAP 用于特定于应用程序的个人偏好:LDAP 无法处理事务,那么当数据从多个方向更新时会发生什么?(事务性当然也是让更新程序写入两个存储的一个问题......)我宁愿让 RDBMS 成为大多数数据的主人,并让 LDAP 只担心身份、凭证和权利,这些很少被更改并且仅用于一组目的。对于我自己来说,LDAP 处理分层数据的能力并不是一个很好的卖点。
数据重复并不总是坏事,尤其是当使用场景足够不同时。
| 归档时间: |
|
| 查看次数: |
360 次 |
| 最近记录: |