Skip to Content
Flink基础教程
book

Flink基础教程

by Ellen Friedman, Kostas Tzoumas
August 2018
Intermediate to advanced
98 pages
2h 11m
Chinese
Posts & Telecom Press
Content preview from Flink基础教程
20
2
2.3.1
 兼具高性能和持久性
消息传输层的一个作用是作为流处理层上游的安全队列——它相当于缓冲
区,可以将事件数据作为短期数据保留起来,以防数据处理过程发生中断。
直到最近几年,高性能和持久性不可兼得的困境才被打破。人们习惯上认
为流数据从消息传输层到流处理层之后就被丢弃:用了就没了。
为了设计新一代的流处理架构,高性能和持久性不可兼得是首先要改变的
一个观念。兼具高性能和持久性对于消息传输系统来说至关重要;
Kafka
MapR Streams
都可以满足这个需求。
具有持久性的好处之一是
消息可以重播
。这个功能使得像
Flink
这样的处理
器能对事件流中的某一部分进行重播和再计算(第
5
章会详细介绍)。正是
由于消息传输层和流处理层相互作用,才使得像
Flink
这样的系统有了准确
处理和“时空穿梭”(指重新处理数据的能力)的保障,认识到这一点至关
重要。
2.3.2
 将生产者和消费者解耦
采用高效的消息传输技术,可以从多个源(生产者)收集数据,并使这些
数据可供多个服务或应用程序(消费者)使用,如图
2-2
所示。
Kafka
MapR Streams
把从生产者获得的数据分配给既定的主题。数据源将数据
推送给消息队列,消费者(或消费者群组)则拉取数据。事件数据只能
基于给定的偏移量从消息队列中按顺序读出。生产者并不向所有消费者自
动广播。这一点听起来微不足道,但是对整个架构的工作方式有着巨大的
影响。
这种传输方式——消费者订阅感兴趣的主题——意味着消息立刻到达,
并不需要被立刻处理
。在消息到达时,消费者并不需要处于运行状态,而 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习流水线实战

机器学习流水线实战

Hannes Hapke, Catherine Nelson
Kafka权威指南(第2版)

Kafka权威指南(第2版)

Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty
Java并发编程实战

Java并发编程实战

Brian Goetz, Tim Peierls

Publisher Resources

ISBN: 9787115490063