Goals
System should be :
- Stable & Reliable
- Fault tolerant
- Scalability
- Efficient
- Cost-effective
- Maintainable
Architecture
No Format |
---|
- MDA : Mail Delivery Agent +-----------------------------+ +-----------+ | Mail Frontend Web servers | * Client layer * | Watcher | | (web UI, send an mails) | +-----+-----+ +------+---------------+------+ | | ↑ | SMTP read read sent mail | requests reply log +--------------------------------------------------------------------------------------+ | ↓ ↓ | ↓ | | +--------------------------+----------------------+ | | | Broker Servers (MDA & Spam Filtering, ..., etc) +←--+ * Broker layer * | +--------------------------+----------------------+ | | | ↑ ↑ | | | +--------------------+--------------------+---------------+----------+-----------------+ | | | | Reads user profile Read contents Update contents | | | ↓ | +-----+-------------------+-----+ +---------+----------------------+ | | Hbase:UserTable | | Hbase:MIMETable | | | (user profile, logs) | | (MIME data) | | * Storage layer * +-------------------------------+ +--------------------------------+ | ↑ ↑ | +-----------------------------+--------------------+----------------------+ | | Hadoop: MapReduce Jobs (e.g. Log Analysis, SPAM calculation, .., etc) |←--+ +-------------------------------------------------------------------------+ |
...