6

We start to use LDAP and I wonder why LDAP is not that popular? I read that it has faster reads than database, however slower writes.

EDIT:

Its the first time i use LDAP and i have been programming in enterprise for sometime now. That is the reason why i thought its not popular, plus i never heard about it at school.

AviD
  • 12,944
  • 7
  • 61
  • 91
IAdapter
  • 62,595
  • 73
  • 179
  • 242

5 Answers5

16

I think the OP was referring to the use of LDAP-type data (read: hierarchical databases), as a storage mechanism for application data.
While its quite obvious that most network logons are based on LDAP under the covers, it is true that a huge majority of business systems are based on the relational-data model, and very few are based on a hierarchical-data model.

Assuming this is the real question here :), I would provide a few partial answers, that together probably fully answer your question:

  • Complexity and high bar of entry (as @Elijah mentioned)
  • As you mentioned, it's not usually taught in school - and thus is not familiar to many, and therefore not commonly used (Is this recursion, or self-fulfulling prophecy?)
  • Hierarchical datamodels are by design optimized to find specific data, and very costly to write or update new data. Most common business applications are OLTP (transaction) based, and require a large amount of writes (except BI-type apps, will relate to that in a moment).
  • More specifically, hierarchical models are built to find specific elements of data, and not perform JOINs, mass SELECTs, GROUP BYs etc.(I mean this in a logical PoV, regardless of specific context).
  • Most data IS relational, or can fit a relational model most easily. Especially for BI, where you want to see large swaths of data, perform comparisons, etc.
  • Even for data that is not relational, our minds seem to be trained to think "relational-model" easier than hierarchical (though this might be a result of my second point - we were mostly taught this). It's just "easier" to categorize the data in neat rows and columns...
Community
  • 1
  • 1
AviD
  • 12,944
  • 7
  • 61
  • 91
12

How do you come to the conclusion that LDAP is not popular? In every larger company I worked for they used LDAP as a way to access the central repository of user information.

The comparison to databases is a little weird. LDAP is a protocol, while a database is a term covering a whole bunch of products. Stating that LDAP is faster/slower than a database is like saying HTTP is faster/slower than a webserver, especially since I'd expect to find some kind of database (possibly even a relational database) behind every single LDAP repository.

Jens Schauder
  • 77,657
  • 34
  • 181
  • 348
10

LDAP is very popular -- it's the protocol used by Windows Active Directory, which is (an understatement here) fairly widespread.

Roger Lipscombe
  • 89,048
  • 55
  • 235
  • 380
  • 1
    +1 (more if I could). AD uses a combination of LDAP and Kerberos. Two things that seem not very widespread until you think about AD. – Adam Hawes Feb 23 '09 at 11:50
  • It's not just AD - most network authentication mechanisms are based on both these in one way or another, whether you're based on SunONE, whatever there is in linux, Novell NDS, etc. – AviD Feb 25 '09 at 20:45
4

LDAP is great, its an awesome tool for single sign on and internal tools.

Not sure what you mean about faster reads than a database, it's generally run from a server, and authentication is handled over the wire.

It's by design a write-few read-many system, but it does give you more than just a simple users table in a database, it handles authentication for you, so you can plug it into whatever systems you need.

At work we use it for ssh, NFS, intranet access, internal tools, everything. If you used a DB you would need to replicate the authentication code among lots of different systems.

garrow
  • 3,459
  • 1
  • 21
  • 24
2

I think your a little off-base on saying it is not popular. If it wasn't popular you probably wouldn't be asking the question. However, I do think its notation and use is a bit complex and creates a high-bar of entry for a relatively simple task and this may have an effect on its adoption rate.

Elijah
  • 13,368
  • 10
  • 57
  • 89