On 12 Feb 2009, at 15:13, Kenneth Kalmer wrote:
Hi everyone
This is my first post, please be gentle as I risk ridicule. I've been
lurking here for several months now, learning from others.
Disclaimer, I
have yet do do more with couch than updating and running the tests.
No worries, we don't bite (...usually :).
How would couch fair as a backend for a mail delivery system (in
concept)?
Two words: Perfect match.
Considering you need high availability and very fast IO. Documents
(email
messages) will be created and deleted very often, some almost
instantaneously.
Couch has some great attributes that makes it sound worth exploring
further:
* Fast lookup of documents
* Awesome replication for business continuity (especially in a low-
latency
environment like GIG-E)
* Scales horizontally
* Ability to pull entire mailbox for user as one result, or at least
bundle
X emails together in one response
I can't recall seeing any thread on here in recent history
discussing high
document deletion rates, which is effectively the case when people
pop their
mail.
A deletion is effectively a set-deleted-flag operation. Compaction
then takes
care of getting rid of the file.
Normal filesystem-based storage of mail has other issues:
* Messages often smaller than ethernet jumbo frames, so limited
throughput
(couch can overcome this by bundling messages in a single response)
* Mostly limited by disk IO and clever tricks around solid state
drive usage
or stripping excessively fast disks
Lets assume nothing about existing mail stores, except that
filesystem ones
don't scale will, and I don't even want to consider the possibility of
raping an RDBMS for this.
Everything is exploratory, the thought just crept into my mind a
couple of
days ago and I'd like to bounce the idea around with everyone for fun.
Thanks for all the hard work, and everyones patience with newbies and
attackers alike.
Hey, thanks for the nice words :)
Hmm, not too much information. Let's see, if you have any more specific
questions, just send a follow up :)
Cheers
Jan
--