I was recently tasked with architecting a new scalablable user phone directory. Basically you'll have phone resellers logging into a portal and selling their phones to customers (who also need to be added into the system). So if I bought 3 phones from the reseller for my family, then each phone is automatically on the network (done by the reseller in the portal) and the phonebook is initially populated with the other 2 numbers, and all 3 numbers are put into the global directory.
More than likely the app will reside on a cloud but I'm debating with the storage mechanisms, should we use ldap for users (fast look up for login) and rdbms for call activity data (more query related data).
The other side is to just screw it and use an rdbms for simplicity and switch over to ldap if/when the volume starts to increase.
In addition maybe it´s not a problem I need to solve if there is a good java based implementation out there to build upon?