On Fri, May 14, 2010 at 17:48, Noel Butler noel.butler@ausics.net wrote:
CDB, oh dear god, you want to go back in time? CDB is no better than any other flatfile based system, it was horrible with qmail and it'll be horrible with anything else above a couple thousand users, you clearly dont add/del users all the time, rebuilding its DB can take some time (I've seen some take 3 minutes, tuff luck if your clients want to add a few users,... so using that is something you cant afford to do as a SP.
I see no problem with CDB. I designed my own variation of that a couple decades ago. Mine isn't quite as fast as CDB, but it was along the basic idea. It was very useful in its time. Had CDB not come along, I'd probably have tried to add mine into things like Postfix and Dovecot at some point.
MySQL makes it such a dream, even with customers adding aliases and so on, its a simple instruction to mysql via the web portal from them, and using replication means every front end has its own local copy, and able to fallback to the master if for some reason it becomes unavailable (never seen that in all the years been using it tho, but its nice insurance)
MySQL (or PostgreSQL, etc) has its place. And for things like CRM with a lot of different aspects, that is the way to go. But even then, I would (and have for other purposes) just export the data out of the SQL database and build a fast index like CDB. However long it takes to build CDB is NOT downtime; it's just lag from data entry to activation. And there are ways to work around that if the lag is an issue, such as having a CDB first, followed by another lookup that may have the most recent data. For example, when the list of new users arrives, add them to a Berkeley DB that is queried next when the CDB has no match. Thus they work even while the CDB (think of it has a static cache) is being rebuilt. One thing I would NOT do is have mail servers hitting the CRM database (or its replicas) directly. It's not a performance issue; it's a security issue. The larger the operation, the more important this is.
its your network (I hope for your sake).. its up to you how efficient it
is.
CDB is very fast.