Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 实现LDAP类型数据库_Database_Tree_Ldap - Fatal编程技术网

Database 实现LDAP类型数据库

Database 实现LDAP类型数据库,database,tree,ldap,Database,Tree,Ldap,我想知道什么样的物理结构用于存储LDAP数据库,如Active Directory 数据库表示为树结构,其中每个节点都有一组属性和可选的子节点。节点具有一个类类型,该类类型定义应用哪一组属性。在这方面,我认为它类似于XML文档 属性数以数百(如果不是数千)为单位。这些属性也不一定是固定大小的,例如MultiSz类型;至关重要的是,属性和类是可扩展的 我还注意到数据库是关系型的,例如,属性的成员和组之间保持了双向引用完整性 显然,您不能将其存储在RDBMS中-行长度限制(并且需要运行ALTER T

我想知道什么样的物理结构用于存储LDAP数据库,如Active Directory

数据库表示为树结构,其中每个节点都有一组属性和可选的子节点。节点具有一个类类型,该类类型定义应用哪一组属性。在这方面,我认为它类似于XML文档

属性数以数百(如果不是数千)为单位。这些属性也不一定是固定大小的,例如MultiSz类型;至关重要的是,属性和类是可扩展的

我还注意到数据库是关系型的,例如,属性的
成员和组之间保持了双向引用完整性


显然,您不能将其存储在RDBMS中-行长度限制(并且需要运行ALTER TABLE)意味着属性系统不适合,但是如何在磁盘上构建这样的数据库?

LDAP是一种没有数据存储方式规范的协议

一个数据库,应该有分层的方法。 LDAP还需要能够执行诸如值、子字符串和状态等索引

条目,包含包含值的属性

LDAP不提供引用完整性。 某些LDAP服务器实现可能为memberOf和member提供值,通常是LDAP服务器实现(例如AD)的后台服务,它创建memberOf的伪值。(它实际上不在基础数据库中)

是的,您可以将数据存储在关系数据库中。属性值可以作为项上属性名称的键关系来完成


具体地说,对于AD,.

LDAP是一种没有数据存储方式规范的协议

一个数据库,应该有分层的方法。 LDAP还需要能够执行诸如值、子字符串和状态等索引

条目,包含包含值的属性

LDAP不提供引用完整性。 某些LDAP服务器实现可能为memberOf和member提供值,通常是LDAP服务器实现(例如AD)的后台服务,它创建memberOf的伪值。(它实际上不在基础数据库中)

是的,您可以将数据存储在关系数据库中。属性值可以作为项上属性名称的键关系来完成


特别是对于AD,.

OpenLDAP,一个开源LDAP服务器,具有可配置的存储后端。第一个是BDB存储引擎。OpenLDAP是一个开源LDAP服务器,具有可配置的存储后端。第一个是BDB存储引擎。如果我将数据存储在RDBMS中,我将如何允许它可扩展?例如,AD允许多个节点类类型来定义一组适用的属性,这在RDBMS中是不容易做到的,除非您为每个类定义一个表并使用
ALTER table
添加属性。如果我要将数据存储在RDBMS中,我如何允许它可扩展?例如,AD允许定义一组适用属性的多个节点类类型,这在RDBMS中不容易实现,除非为每个类定义一个表并使用
ALTER table
添加属性。