火花流
回到术语表什么是Spark Streaming?
Apache Spark Streaming是一个可扩展的容错流处理系统,本机支持批处理和流处理工作负载。Spark Streaming是核心Spark API的扩展,允许数据工程师和数据科学家处理来自各种来源的实时数据,包括(但不限于)Kafka、Flume和Amazon Kinesis。处理后的数据可以推送到文件系统、数据库和实时仪表板。它的关键抽象是离散化流(Discretized Stream),或者简单地说,DStream,它表示划分为小批的数据流。dstream是建立在rdd上的,rdd是Spark的核心数据抽象。这使得Spark Streaming可以与任何其他Spark组件(如MLlib和Spark SQL)无缝集成。Spark Streaming与其他系统不同,其他系统要么有专门为流处理设计的处理引擎,要么有类似的批处理和流处理api,但内部编译到不同的引擎。Spark的单一执行引擎和用于批处理和流处理的统一编程模型比其他传统流处理系统具有一些独特的优势。Spark Streaming的四个主要方面
- 从失败和掉队中快速恢复
- 更好的负载平衡和资源使用
- 将流数据与静态数据集和交互式查询相结合
- 与高级处理库(SQL、机器学习、图形处理)的本地集成
额外的资源
回到术语表