10

Apache Spark Streaming Website 的时候,看到一句话:

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

而在Apache Flink网站中,有一句话:

Apache Flink 是一个开源平台,用于可扩展的批处理和流数据处理。

streaming applicationbatch data processing,是什么意思stream data processing?你能举一些具体的例子吗?它们是为传感器数据设计的吗?

4

1 回答 1

13

流数据分析(与“批处理”数据分析相反)是指对典型的无限数据项流(通常称为事件)的连续分析。

流媒体应用的特点

流数据处理应用程序通常具有以下特点:

  • 流式应用程序会持续运行很长时间,并在事件出现时立即使用和处理。相比之下。批处理应用程序在文件或数据库中收集数据并稍后处理。

  • 流应用程序经常关注结果的延迟。延迟是事件创建与分析应用程序考虑该事件之间的延迟。

  • 因为流是无限的,所以许多计算不能不是指整个流,而是指流上的“窗口”。窗口是流事件子序列的视图(例如最后 5 分钟)。真实世界窗口统计的一个例子是“过去 3 天的平均股票价格”

  • 在流式应用程序中,事件的时间通常起着特殊的作用。根据事件的时间顺序来解释事件是很常见的。虽然某些批处理应用程序也可以这样做,但它不是那里的核心概念。

流媒体应用示例

流数据处理应用的典型例子是

  • 欺诈检测:应用程序试图确定交易是否符合之前观察到的行为。如果不是,则该事务可能表明企图滥用。通常对延迟非常关键的应用程序。

  • 异常检测:流应用程序构建它观察到的事件的统计模型。异常值表示异常并可能触发警报。传感器数据可能是人们想要分析异常的事件来源之一。

  • 在线推荐者:如果访问网店的用户没有很多过去的行为信息,那么从她浏览页面和浏览文章时的行为中学习并开始直接生成一些初始推荐是很有趣的。

  • 最新的数据仓库:关于如何将数据仓库基础架构建模为流式应用程序的有趣文章,其中事件流是对数据库的更改序列,流式应用程序将各种仓库计算为专门的“聚合视图”的事件流。

  • 还有很多...

于 2015-06-30T17:00:41.453 回答