How to store large amounts of email message bodies
I'm creating a project, with web-mail开发者_高级运维 functionality among others. We have MongoDB as main DBMS, but on huge amounts of emails, it becomes overloaded with message bodies. We've tried to store message bodies on server HD and on S3 node, but it's not very efficient.
Is there any good solution for key-value storing of huge number of files (possibly cloud storage, or some NoSQL DBMS or anything else)?
You may be over-thinking/over-designing the DBMS component. You may want to consider Berkeley DB as your data store. It supports several APIs, including a Key/Value API (NoSQL). It's highly scalable, reliable and very fast. Berkeley DB is used heavily in commercial and open source email projects, including OpenWave, Critical Path, Postfix, SendMail and others. Because of it's embedded nature, small foorprint, developer-friendly key/value pair API and totally configurable from within the embedding application, it's a frequent choice for email data management.
Disclaimer: I'm the Product Manager for Berkeley DB, so I'm a little biased. That said, Berkeley DB is used by those products and many more more email data management.
精彩评论