A Typical Data Processing System

@2014-12-04

根据过去的工作经验,一个典型的数据处理系统应该是下面这个样子的

Pasted-Image-20231225104327.png

分为两个子系统realtime和batch. 两个子系统之间通过message system来互联. 如果realtime和batch不在同一个机房的话可以通过message system提供的mirror能力来做镜像. 展示给前端的计算结果需要同时merge两个子系统的databases(MySQL and HBase), 返回结果之前增加一个缓存层来减少对database的压力.


realtime system数据流是这样的:

重点关注: 系统稳定性和数据清洗正确性应该重点关注. 只要代码不是太烂, 系统配置正确的话, 延迟方面应该不会有太大问题.


batch system数据流是这样的:

重点关注: 系统扩展性, 吞吐率和利用率