Learning AWS(Second Edition)
上QQ阅读APP看书,第一时间看更新

Understanding Lambda architecture

The Lambda architectural pattern attempts to combine the best of both worlds—batch processing and stream processing. This pattern consists of several layers: Batch Layer (ingests and processes data on persistent storage such as HDFS and S3), Speed Layer (ingests and processes streaming data, that has not been processed by the batch layer yet), and the Serving Layer that can combine outputs from the batch and speed layers to present merged results. This is a very popular architecture in Spark-based cloud environments because it can support both batch and speed layer implementations with minimal code differences between the two.

The following figure depicts the Lambda architecture as a combination of the batch processing and stream processing:

In the next section, we discuss a simpler architecture called Kappa architecture that dispenses with the batch layer entirely and works with stream processing in the speed layer only.