Streaming

Spark Streaming使构建可扩展的容错流应用程序变得容易.

Ease of Use

通过高级操作员构建应用程序.

Spark Streaming将Apache Spark的语言集成API引入流处理,使您可以像编写批处理作业一样编写流作业. 它支持Java,Scala和Python.

TwitterUtils.createStream(...)
    .filter(_.getText.contains("Spark"))
    .countByWindow(Seconds(5))
计算滑动窗口上的推文

Fault Tolerance

开箱即用的有状态精确语义.

Spark Streaming可以立即恢复丢失的工作和操作员状态(例如,滑动窗口),而无需任何额外的代码.

Spark Integration

将流与批处理和交互式查询结合在一起.

通过在Spark上运行,Spark Streaming可让您将相同的代码重用于批处理,针对历史数据加入流或对流状态运行临时查询. 构建功能强大的交互式应用程序,而不仅仅是分析.

stream.join(historicCounts).filter {
大小写(word,(curCount,oldCount))=>
curCount> oldCount
}
查找频率高于历史数据的单词

Deployment Options

Spark Streaming可以从HDFSFlumeKafkaTwitterZeroMQ读取数据. 您还可以定义自己的自定义数据源.

您可以在Spark的独立集群模式或其他受支持的集群资源管理器上运行Spark Streaming. 它还包括用于开发的本地运行模式. 在生产中,Spark Streaming使用ZooKeeperHDFS来实现高可用性.

Community

Spark Streaming是Apache Spark的一部分. 因此,每个Spark版本都会对其进行测试和更新.

如果您对系统有疑问,请在Spark邮件列表中询问.

Spark Streaming开发人员欢迎您的贡献. 如果您想提供帮助,请阅读如何为Spark做出贡献 ,并向我们发送补丁!

Getting Started

要开始使用Spark Streaming:

by  ICOPY.SITE