当前位置: 首页 > 知识库问答 >
问题:

Flink和Storm的主要区别是什么?

公孙涵育
2023-03-14

Flink被比作Spark,在我看来,这是一个错误的比较,因为它将窗口事件处理系统与微批处理进行了比较;同样地,对我来说,将Flink与Samza进行比较也没有那么大的意义。在这两种情况下,它比较了实时事件处理策略和批处理事件处理策略,即使在Samza的情况下“规模”较小。但我想知道Flink与Storm的比较如何,它在概念上似乎更相似。

我发现这张(幻灯片#4)记录了Flink的“可调延迟”这一主要区别。另一个提示似乎是Slicon Angle的一篇文章,该文章暗示Flink更好地集成到Spark或HadoopMR世界中,但没有提到或引用实际的细节。最后,Fabian Hueske自己在一次采访中指出,“与Apache Storm相比,Flink的流分析功能提供了一个高级API,并使用了一种更轻量的容错策略,以提供一次性的处理保证。”

所有这些对我来说都有点稀疏,我不太明白要点。有人能解释一下什么问题吗Storm is(ARE?)中的流处理完全被Flink解决了?Hueske的API问题和他们的“更轻量的容错策略”指的是什么?

共有1个答案

微生俊捷
2023-03-14

免责声明:我是Apache Flink提交者和PMC成员,只熟悉Storm的高级设计,而不是内部设计。

Apache Flink是用于统一流和批处理的框架。Flink的运行时本机支持这两个域,这是由于并行任务之间的流水线数据传输,包括流水线洗牌。记录从生成任务到接收任务(在收集到用于网络传输的缓冲区中之后)会立即发送。可以使用阻塞数据传输执行批处理作业。

Apache Spark是一个还支持批处理和流处理的框架。Flink的批处理API看起来非常相似,并且处理了与Spark相似的用例,但在内部有所不同。对于流式处理,两种系统采用了非常不同的方法(小批量与流式处理),这使得它们适合于不同类型的应用。我会说比较Spark和Flink是有效和有用的,但是Spark不是与Flink最相似的流处理引擎。

 类似资料:
  • 像Storm和Flink这样的系统可以被视为DSMS,还是更普通的东西? 谢谢

  • 我正在使用这两个实时数据流框架处理器。我找遍了所有的地方,但我找不到这两个框架之间有很大的区别。特别是,我想知道他们是如何工作的基础上的数据或拓扑等大小。

  • 本文向大家介绍Kafka和Flume之间的主要区别是什么?相关面试题,主要包含被问及Kafka和Flume之间的主要区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 答:Kafka和Flume之间的主要区别是: 工具类型 Apache Kafka——Kafka是面向多个生产商和消费者的通用工具。 Apache Flume——Flume被认为是特定应用程序的专用工具。 复制功能 Apache

  • 问题内容: 网上似乎充满了Velocity和FreeMarker之间的比较,并且它们似乎相当等效。但是,StringTemplate和FreeMarker之间似乎几乎没有比较! 那么,StringTemplate和FreeMarker之间的主要区别是什么? 我对它们的用法是仅生成HTML页面。在这两种方法中,我曾期望FreeMarker更合适,功能更强大,因为这似乎是更常见的一种- 但快速浏览一下

  • 问题内容: 创建表: 结果: 请让我知道Varchar2和char有什么区别?我们什么时候都使用? 问题答案: 显示差异的简单示例: CHAR对于字符长度始终固定的表达式很有用,例如美国各州的邮政编码,例如CA,NY,FL,TX

  • 问题内容: 我想问一下您最喜欢JS的软件包管理器是什么?我看到了一些关于yarn和npm的文章。但是我不确定有什么对我更好。我刚刚开始学习JS。 现在,yarn和npm之间的差异对我来说就像可乐品牌之间的差异。 问题答案: 有时候我们只有一个,但是解决依赖性和缓存问题太多,以至于另一个工具诞生了()。通常,它使用本地缓存来解决依赖关系,例如,在运行几乎总是在同一环境中运行的CI作业时,这非常关键,