数据处理系统的Lambda架构
2018-12-20 本文已影响1人
oneape15
在数据处理的系统中,数据的处理模式分为三类:批处理
、流式数据处理
以及交互式处理
。
- 批处理: 是把数据首先保存起来,然后进行分析。批处理模式处理的数据量一般是全量数据(或者是绝大部分数据)。由于对于大量数据进行分析,它的响应时间比较慢,一般以分钟和小时计。
- 流式数据处理:在这种处理模式下,新到达(新产生)的数据要及时进行处理,无须首先入库,处理过后的数据一般不保存,直接丢弃掉(当然也可以根据需要保存起来,但这不属于流式数据处理的范畴)。流式数据处理对新到达的每个数据元素都立即处理,其响应时间以毫秒(甚至微秒)计。
- 交互式处理:交互式处理和批处理,都需要把数据首先保存起来,再进行处理。交互式处理一般查询部分数据,进行简单的统计分析,它所存取的是整个数据集的一小部分,因此,它的响应时间比批处理要快得多,一般达到秒级响应时间。
画重点了
批处理、流式数据处理、交互式处理等处理模式各有侧重,满足不同应用场合的需求,我们可以把这三种模式整合起来,这就是著名的Lambda架构
。
Lambda架构分成三个层次(Tier),分别是批处理层(Batch Layer)、实时处理层(Speed Layer)、服务层(Serving Layer)。
从数据不断到达的数据,经过适当的暂存(Staging),交给Batch Layer,一般要经过抽取
、转换
和装载
的过程加载到数据库中,形成主数据集
(Master Dataset)。