大数据架构师指南
上QQ阅读APP看书,第一时间看更新

3.3 业务特征

任何系统都是为特定的业务而生的,需要在特定的资源条件下完成业务流程。对于系统设计者,需要了解数据应采用何种处理方式,明确系统对内部与外部环境的要求,并进一步根据这些要求选择软硬件基础设施。所以,对于大数据项目的规划来说,在早期就清晰地识别系统业务特性显得尤为重要。

从业务处理实时性的角度来划分,系统可以分成实时处理系统与批处理系统。对于实时处理系统,该业务场景下系统收到数据或消息请求需要即时对数据消息进行实时处理响应,系统更关心响应时间和并发度;对于批处理系统,该业务场景下数据以成批的多组文件方式被系统处理,上下游作业进程通过调度进程进行作业工作流的调度处理,该模式下系统更关心处理能力;另外,在实际生产系统中,还存在对实时性要求相对较低的准实时系统,其数据采用批量的形式进入系统,系统一旦检测到数据的进入即开始进行数据处理,输出数据结果。

从系统功能角度来划分,系统可分为侧重数据保存的存储型系统、侧重数据分析的密集计算型系统以及需求大量内存的内存计算系统。

无论是从业务的实时性来看,还是从系统功能来看,不同业务特征的系统有着各自的特点,设计者需要权衡各自的优点与缺点,定义自身系统关键的性能指标,进行合理的技术选型。例如,存储型系统需考虑在磁盘IO读写方面进行优化处理,数据分析密集计算型系统需要对CPU的选型进行重点考虑,内存计算型系统需要考量系统内存消耗等。

只有清晰地识别系统的业务特征,才能选择合理的技术方案,满足系统的设计目标。