LDAP是x500标准协议,商业数据库的驱动要复杂的多,在过去没有webservice之类的东西,异构访问兼容是个问题。你用mysql,那个用oracle,到底用谁,我用的开发语言要是没有相应的数据库驱动是不是就废了?
ldap不只是提供数据访问,更重要的是提供了标准数据模型schema,这使得异构复杂系统共享数据更加方便,当然少数情况当标准schema不满足你也可以根据业务需要扩展schema。而传统数据库要自己建表,怎么建,什么结构,存什么,没有统一的标准可以参考。
ldap是树形数据模型的,可以满足复杂的数据访问更简单快速。sql数据库是二维表结构,无法满足这种情况。
ldap本身就是索引结构,访问速度非常快,开销也很小,更新较慢。数据库你要自己建立索引,没索引就超慢。
ldap没有事务,对外只提供查询,管理者可以进行更新,因此集群部署非常简单,数据库有事务支持,集群部署和数据同步有非常复杂的要求。
最典型的ldap应用就是整合异构认证系统,存组织机构内的账号权限之类的东西,为其他各种软硬件提供统一数据访问入口。