大数据技术入门
上QQ阅读APP看书,第一时间看更新

2.4 框架的选择

大数据系统架构有两个组成部分,实时数据流处理和批量数据处理。我们根据具体的需求选择适当的数据处理框架。一些框架适用于批量数据处理,而另外一些适用于实时数据处理。一些框架使用内存模式,另外一些是基于磁盘I/O处理模式。基于内存的框架性能明显优于基于磁盘I/O的框架,但是同时成本也高很多。总之,要选择一个能够满足需求的框架。否则就有可能既无法满足功能需求,也无法满足非功能需求(比如:性能需求)。

一些框架将数据划分成较小的块。这些小数据块由各个作业独立处理。协调器管理所有这些独立的子作业。数据分块是需要小心的。数据块越小,就会产生越多的作业,这样就会增加系统初始化作业和清理作业的负担。如果数据块太大,数据传输可能需要很长时间才能完成。这也可能导致资源利用不均衡,长时间在一台服务器上运行一个大作业,而其他服务器就会等待而造成处理能力的浪费。不要忘了查看一个任务的作业总数,在必要时调整这个参数。尽量实时监控数据块的传输。

大数据分析结果应该保存成用户期望看到的格式。如果用户要求按照每周的时间序列汇总输出,那么你就要将结果以周为单位进行汇总保存。