LDAP vs базы данных
Сравним два наиболее популярных на сегодня способа хранения информации, реляционные базы данных и серверы LDAP, по следующим характеристикам:
- Соотношение чтение-запись – LDAP, в отличие от реляционных баз данных, оптимизирован для чтения.
- Расширяемость – схемы LDAP легче изменить в процессе функционирования, чем схемы баз данных.
- Распределенность – данные LDAP могут располагаться на нескольких серверах, поиск на которых может осуществляться с использованием одной команды. В результате можно создавать конфигурации серверов LDAP, оптимально расположенные в зависимости от того, где требуется та или иная информация, одновременно обеспечивая возможность поиска всей информации, хранящейся на всех серверах LDAP. Тем самым достигается более высокая степень распределенности по сравнению с реляционными базами данных.
- Репликация – данные LDAP могут храниться на нескольких серверах, при этом существует возможность использования различных способов синхронизации информации.
- Применение данных – LDAP разработан для возможности использования хранимых данных разными приложениями, базы данных разрабатываются для одного приложения.
- Сложность взаимосвязей между объектами – объекты баз данных имеют более сложные взаимосвязи, чем записи LDAP.
- Транзакции – в LDAP транзакции проще, обычно изменяется одна запись, транзакции в базах данных более сложные.
- Тип хранимой информации – LDAP хранит информацию в атрибутах.
- Способ именования – LDAP представляет собой иерархию. Имя объекта определяется путем в дереве иерархии, аналогично именованию файлов в обычных файловых системах.
- Схемы – схемы реляционных баз данных полностью определяются разработчиком соответствующей базы данных, LDAP имеет стандартные схемы, включая схему ядра (core), общую для любого Каталога. Этим достигается большая интероперабельность по сравнению с базами данных.
- Стандарты – использование стандартных схем хранения информации и стандартного протокола доступа является преимуществом LDAP по сравнению с базами данных, так как в этом случае клиенты LDAP могут общаться с любым сервером LDAP, а клиенты баз данных могут взаимодействовать только с базой данных, для которой они разработаны.
- Возможность отката при неудачных операциях – реляционные базы данных имеют более гибкие возможности отката, следовательно, они больше подходят для модификации информации, чем LDAP. Для динамических объектов возможностей LDAP недостаточно.