Batch Layer: offers high throughput, comprehensive, economical map-reduce batch processing, but higher latency.
Speed Layer: offers low latency real-time stream processing, but costlier and may overshoot memory limit when data volume is high.
Serving Layer: The output from high throughput batch processing, when ready, is merged with the output of the stream processing to provide comprehensive results in the form of pre-computed views or ad-hoc queries.