常见的几种大数据架构

  • 2019 年 12 月 22 日
  • 筆記

目前围绕Hadoop体系的大数据架构大概有以下几种

01

传统大数据架构

之所以叫传统大数据架构,是因为其定位是为了解决传统BI的问题。

优点:

简单,易懂,对于BI系统来说,基本思想没有发生变化,变化的仅仅是技术选型,用大数据架构替换掉BI的组件。

缺点:

对于大数据来说,没有BI下完备的Cube架构,对业务支撑的灵活度不够,所以对于存在大量报表,或者复杂的钻取的场景,需要太多的手工定制化,同时该架构依旧以批处理为主,缺乏实时的支撑。

适用场景:

数据分析需求依旧以BI场景为主,但是因为数据量、性能等问题无法满足日常使用。

02

流式架构

在传统大数据架构的基础上,直接拔掉了批处理,数据全程以流的形式处理,所以在数据接入端没有了ETL,转而替换为数据通道。

优点

没有臃肿的ETL过程,数据的实效性非常高。

缺点

流式架构不存在批处理,对于数据的重播和历史统计无法很好的支撑。对于离线分析仅仅支撑窗口之内的分析。

适用场景

预警,监控,对数据有有效期要求的情况。

03

Lambda架构

大多数架构基本都是Lambda架构或者基于其变种的架构。Lambda的数据通道分为两条分支:实时流和离线。

优点

既有实时又有离线,对于数据分析场景涵盖的非常到位。

缺点

离线层和实时流虽然面临的场景不相同,但是其内部处理的逻辑却是相同,因此有大量荣誉和重复的模块存在。

适用场景

同时存在实时和离线需求的情况。

04

Kappa架构

在Lambda 的基础上进行了优化,将实时和流部分进行了合并,将数据通道以消息队列进行替代。

优点

解决了Lambda架构里面的冗余部分,以数据可重播的思想进行了设计,整个架构非常简洁。

缺点

虽然Kappa架构看起来简洁,但是施难度相对较高,尤其是对于数据重播部分。

适用场景

和Lambda类似,改架构是针对Lambda的优化。

05

Unifield架构

以上的种种架构都围绕海量数据处理为主,Unifield架构则将机器学习和数据处理揉为一体,在流处理层新增了机器学习层。

优点

提供了一套数据分析和机器学习结合的架构方案,解决了机器学习如何与数据平台进行结合的问题。

缺点

实施复杂度更高,对于机器学习架构来说,从软件包到硬件部署都和数据分析平台有着非常大的差别,因此在实施过程中的难度系数更高。

适用场景

有着大量数据需要分析,同时对机器学习方便又有着非常大的需求或者有规划。