《Flink 实战与性能优化》—— 自定义 Flink Connector

在前面文章 3.6 节中讲解了 Flink 中的 Data Source 和 Data Sink,然后介绍了 Flink 中自带的一些 Source 和 Sink 的 Connector,接着我们还有几篇实战会讲解了如何从 Kafka 处理数据写入到 Kafka、ElasticSearch 等,当然 Flink 还有一些其他的 Connector,我们这里就不一一介绍了,大家如果感兴趣的话可以去官网查看一下,如果对其代码实现比较感兴趣的话,也可以去看看其源码的实现。我们这篇文章来讲解一下如何自定义 Source 和 Sink Connector?这样我们后面再遇到什么样的需求都难不倒我们了。

《Flink 实战与性能优化》—— Flink Connector —— Kafka 的使用和源码分析

在前面 3.6 节中介绍了 Flink 中的 Data Source 和 Data Sink,然后还讲诉了自带的一些 Source 和 Sink 的 Connector。本篇文章将讲解一下用的最多的 Connector —— Kafka,带大家利用 Kafka Connector 读取 Kafka 数据,做一些计算操作后然后又通过 Kafka Connector 写入到 kafka 消息队列去,整个案例的执行流程如下图所示。

《Flink 实战与性能优化》—— Watermark 的用法和结合 Window 处理延迟数据

3.5 Watermark 的用法和结合 Window 处理延迟数据

在 3.1 节中讲解了 Flink 中的三种 Time 和其对应的使用场景,然后在 3.2 节中深入的讲解了 Flink 中窗口的机制以及 Flink 中自带的 Window 的实现原理和使用方法。如果在进行 Window 计算操作的时候,如果使用的时间是 Processing Time,那么在 Flink 消费数据的时候,它完全不需要关心的数据本身的时间,意思也就是说不需要关心数据到底是延迟数据还是乱序数据。因为 Processing Time 只是代表数据在 Flink 被处理时的时间,这个时间是顺序的。但是如果你使用的是 Event Time 的话,那么你就不得不面临着这么个问题:事件乱序 & 事件延迟。

《Flink 实战与性能优化》—— 如何使用 Flink Window 及 Window 基本概念与实现原理?

目前有许多数据分析的场景从批处理到流处理的演变, 虽然可以将批处理作为流处理的特殊情况来处理,但是分析无穷集的流数据通常需要思维方式的转变并且具有其自己的术语,例如,“windowing(窗口化)”、“at-least-once(至少一次)”、“exactly-once(只有一次)” 。

《Flink 实战与性能优化》—— Flink 中 Processing Time、Event Time、Ingestion Time 对比及其使用场景分析

第三章 —— Flink 中的流计算处理

通过第二章的入门案例讲解,相信你已经知道了 Flink 程序的开发过程,本章将带你熟悉 Flink 中的各种特性,比如多种时间语义、丰富的窗口机制、流计算中常见的运算操作符、Watermark 机制、丰富的 Connectors(Kafka、ElasticSearch、Redis、HBase 等) 的使用方式。除了介绍这些知识点的原理之外,笔者还将通过案例来教会大家如何去实战使用,最后还会讲解这些原理的源码实现,希望你可以更深刻的理解这些特性。

《Flink 实战与性能优化》—— 案例1:WordCount 应用程序

2.3 案例1:WordCount 应用程序

在 2.2 节中带大家讲解了下 Flink 的环境安装,这篇文章就开始我们的第一个 Flink 案例实战,也方便大家快速开始自己的第一个 Flink 应用。大数据里学习一门技术一般都是从 WordCount 开始入门的,那么笔者还是不打破常规了,所以这篇文章笔者也将带大家通过 WordCount 程序来初步了解 Flink。

《Flink 实战与性能优化》—— 彻底了解大数据实时计算框架 Flink

在 1.1 节中讲解了日常开发常见的实时需求,然后分析了这些需求的实现方式,接着对比了实时计算和离线计算。随着这些年大数据的飞速发展,也出现了不少计算的框架(Hadoop、Storm、Spark、Flink)。在网上有人将大数据计算引擎的发展分为四个阶段。

《Flink 实战与性能优化》——你的公司是否需要引入实时计算引擎?

第一章 —— 实时计算引擎

本章会从公司常见的计算需求去分析该如何实现这些需求,接着会对比分析实时计算与离线计算之间的区别,从而帮大家分析公司是否需要引入实时计算引擎。接着将会详细的介绍目前最火的实时计算引擎 Flink 的特性,让大家知道其优点,最后会对比其他的计算框架,比如 Spark、Storm 等,希望可以从对比结果来分析这几种计算框架的各自优势,从而为你做技术选型提供一点帮助。

1.1 你的公司是否需要引入实时计算引擎