When should I use LDAP vs. database/key-value-store/column-oriented-database/etc?
LDAP can be considered a database. But I'm assuming that you mean SQL databases.
LDAP data stores are for systems with high number of reads compared to writes. While other databases such as SQL stores are designed for transactional data usage (high read and writes).
This is why LDAP is a directory protocol. It's well suited to directories where you read lots and write hardly.
From here
LDAP is characterised as a 'write-once-read-many-times' service. That is to say, the type of data that would normally be stored in an LDAP service would not be expected to change on every access. To illustrate: LDAP would NOT be suitable for maintaining banking transaction records since, by their nature, they change on every access (transaction). LDAP would, however, be eminently suitable for maintaining details of the bank branches, hours of opening, employees etc..
And this is another good intro here - LDAP vs RDBMS