MongoDB和Ldap是同一个概念吗?

时间:2011-10-16 03:44:49

标签: mongodb ldap rdbms nosql

作为Mysql,sql server,postgre sql等基本上是不同的实现相同的概念(rdbms),我想知道LDAP和MongoDB / CouchDB等之间是否存在相同的关系,还是有更多的东西进入LDAP?

3 个答案:

答案 0 :(得分:13)

LDAP

  • 分层数据库模型(基于父/子关系,如XML)
  • LDAP适用于任何类型的目录信息,其中快速查找和不常更新是常态
  • 可扩展
  • 标准协议
  • 不适合需要数据完整性的应用程序(银行,电子商务,会计)。传统上用于存储用户,组,SSL证书,服务地址,但它是一个通用数据库,可用于任何信息。

MongoDB的

  • 面向文档的数据库,基于BSON(类JSON)文档
  • 键值数据库,但值可以是BSON文档
  • 读写操作的高性能
  • 可扩展(主从复制)
  • 自定义协议
  • 不适合需要数据完整性的应用程序(银行,电子商务,会计)

CouchDB的

  • 面向文档的数据库,基于JSON文档
  • 键值数据库,但值可以是JSON文档
  • 读写操作的高性能
  • 可扩展(具有冲突解决方案的主 - 主复制)
  • REST协议
  • 不适合需要数据完整性的应用程序(银行,电子商务,会计)

答案 1 :(得分:7)

最重要的是,LDAP数据库与其他noSQL不同,如MongoDB或CouchDB,是非常灵活的ACL系统。 例如,您可以使用存储在同一树中的组和用户授予对树中对象的访问权限。实际上,您可以使用对象本身来对LDAP服务器进行身份验证。

恕我直言,允许客户端直接从Internet访问LDAP树而不编写一串代码是完全安全的。

另一方面,LDAP有一点陈旧的设计,并使用复杂的方法来提供简单的操作。主要是因为这个事实,我正在滑倒和梦想,有人在任何现代noSQL数据库中实现了类似LDAP的ACL。实际上,为什么要制作基于JSON的数据库,如果你无法直接从浏览器获得授权呢?

答案 2 :(得分:4)

SCHEMA 是最大的差异之一 LDAP数据存储具有单个系统范围的可扩展模式(在现实世界中,是ldap服务器复制的致命弱点...... )。 NO-SQL有'无架构'( - 或 - 任何架构每个对象,无论你想要看看它。)。