第11章 Spark Streaming
本章将介绍Spark Streaming、体系结构和微批的概念;将研究流应用的各种组件,以及集成了大量输入源的流应用的内部结构;还将进行一些实践练习,以演示动作中流应用的执行。
本章主要包括以下内容
- Spark Streaming的概念
- Spark Streaming的简介和体系结构
- Spark Streaming的封装结构
- 连接Kafka和Spark Streaming
11.1 Spark Streaming的概念
Spark框架及其所有扩展一起提供了一种通用的解决方案,该方案可以满足批处理、分析和实时等企业数据需求。为了能够执行实时数据处理,该框架应该能够处理近乎实时的无界数据流。此功能是由Spark框架中Spark Streaming扩展下的微批和流处理提供。
简单来说,可以将数据集理解为一个不断实时生成的无界数据序列。现在,为了能够处理这些不断到达的数据流,各种框架对它们的处理方式如下。
- 单独处理的不同的离散事件。
- 将单个事件通过微批变为非常小的批次,这些批次作为单个单元进行处理。
Spark提供流API作为其内核API的扩展,内核API是一个可扩展、低延迟、高吞吐量和容错的框架,能使用微批实时处理传入的流数据。
在某些用例中,基于Spark框架的实时处理方案将派上用场。这些用例包括:监控基础设施、应用程序或进程;检测欺诈;营销和广告;物联网。
图11-1截取了世界各地关于实时数据生成速率的一些统计数据,其中描述的所有场景往往都可作为Spark Streaming处理的用例。
图11-1
11.2 Spark Streaming的简介和体系结构
Spark Streaming是Spark内核API的一个非常有用的扩展,被广泛用于处理实时或接 ...
Get 实时数据处理和分析指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.