Flink全景解析
文章平均质量分 93
基于Flink 1.19.0 版本,基于DataStream API、Table API&&SQL模块,通过案例,详细介绍Flink知识点。深入学习Flink的内存管理、状态、容错机制。掌握Flink CEP、Flink CDC、以及 Flink + Paimom基础内容,帮助我们进一步扩宽技术。
优惠券已抵扣
余额抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
springk
这个作者很懒,什么都没留下…
展开
-
(二十)Flink Paimon
数据湖、湖仓一体是当前大数据领域发展的重要趋势。近几年开源数据湖如Apache Hudi、Apache Iceberg、Apache Paimon、DeltaLake等不断涌现,基于湖仓一体架构的统一元数据管理、数据治理也越来越受到关注。从传统数仓到数据湖、湖仓一体架构,从流批一体计算到基于数据湖的流批一体存储,越来越多的企业基于开源技术,在集成、计算、存储、查询分析等方面不断优化,形成适合自身业务发展的湖仓平台。本章我们将介绍Apache Paimon的概念以及 Flink Paimon 的实现方式。原创 2024-08-26 10:13:52 · 486 阅读 · 0 评论 -
(十九)Flink CDC
Flink CDC (Flink Change Data Capture) 是基于数据库的日志 CDC 技术,实现了全增量一体化读取的数据集成框架。搭配 Flink 计算框架,Flink CDC 可以高效实现海量数据的实时集成。本章将从 CDC 简介、Flink CDC 简介、Flink CDC 使用三个方面,结合实际案例,进行详细讲解。原创 2024-08-26 09:56:55 · 738 阅读 · 0 评论 -
(十八)Flink CEP 详解
Flink CEP 是在 Flink 上层实现的复杂事件处理库。它可以让你在无限事件流中检测出特定的事件模型,有机会掌握数据中重要的部分。Flink CEP 主要用于实时流数据的分析处理。这在企业项目的风控管理、用户画像和运维监控中,都有非常重要的应用。通过本章的介绍结合实际案例,让你进一步了解Flink CEP 的使用。原创 2024-08-25 18:16:46 · 629 阅读 · 0 评论 -
(十七)Flink 容错机制
对于不间断 24 小时运行的程序来说,容错至关重要。Flink 定期对每个算子的所有状态进行持久化快照,并将这些快照复制到更持久的地方,例如分布式文件系统。如果发生故障,Flink 可以恢复应用程序的完整状态并恢复处理,就好像没有出现任何问题一样。本章我们针对 Checkpoint、Savepoint、作业重启调度策略做详细介绍原创 2024-08-25 18:09:52 · 554 阅读 · 0 评论 -
(十六)Flink 状态管理
根据数据集是否按照 Key 划分,将状态分为 Keyed State 和 Operator State(Non-keyed State)两种类型。本章我们将从状态的类型、状态有效期、状态存储、状态持久化方面,结合实际案例,详细进行介绍。原创 2024-08-24 11:43:33 · 897 阅读 · 0 评论 -
(十五)Flink 内存管理机制
在大数据领域,很多开源框架(Hadoop、Spark、Storm)都是基于 JVM 运行,但是 JVM 的内存管理机制存在着诸多类似 OutOfMemoryError 的问题,主要是因为创建大量的实例,超过 JVM 的最大堆内存限制,没有被有效的回收。这在很大程度上影响了系统的稳定性,因此很多框架都实现了自己的内存管理。本章我们通过对 Flink 内存模型、JobManager 以及 TaskManager 内存配置的介绍,全方位了解 Flink 在内存方面是如何自主管理的原创 2024-08-24 11:37:11 · 360 阅读 · 0 评论 -
(十四)基于 Flink SQL 应用案例
在 11.11 购物节大促活动中,天猫、京东等商家会对外发布购物节对应的交易金额、单量等信息,下面我们以 2023.11.11 购物节大促为背景,完成任务指标计算原创 2024-08-23 09:43:46 · 382 阅读 · 0 评论 -
(十三)Flink SQL
Flink 对 SQL 的支持基于实现了 SQL 标准的 Apache Calcite,包括数据定义语言、数据操纵语言以及查询语言。本章我们结合实际应用,来讲解如何使用 Flink SQL原创 2024-08-23 09:38:36 · 512 阅读 · 0 评论 -
(十二)Flink Table API
Table API 是批处理和流处理的统一的关系型 API。Table API 的查询不需要修改代码就可以采用批输入或流输入来运行。Table API 是 SQL 语言的超集,并且是针对 Apache Flink 专门设计的。本章我们将讲解 Table API 具体使用方法,并针对常见的 Join 操作提供完整案例。原创 2024-08-22 10:54:13 · 167 阅读 · 0 评论 -
(十一)Flink 动态表
动态表是 Flink 支持流数据的 Table API 和 SQL 的核心概念。与表示批处理数据的静态表不同,动态表是随时间变化的。可以像查询静态批处理表一样查询它们。查询动态表将生成一个连续查询。一个连续查询永远不会终止,结果会生成一个动态表。查询不断更新其 (动态) 结果表,以反映其 (动态) 输入表上的更改。本质上,动态表上的连续查询非常类似于定义物化视图的查询。原创 2024-08-22 10:48:04 · 36 阅读 · 0 评论 -
(十)Flink Table API 和 SQL 基本概念
Apache Flink 有两种关系型 API 来做流批统一处理:Table API 和 SQL。Table API 是用于 Scala 和 Java 语言的查询 API,它可以用一种非常直观的方式来组合使用选取、过滤、join 等关系型算子。Flink SQL 是基于 Apache Calcite 来实现的标准 SQL。无论输入是连续的(流式)还是有界的(批处理),在两个接口中指定的查询都具有相同的语义,并指定相同的结果。原创 2024-08-21 20:08:36 · 204 阅读 · 0 评论 -
(九)基于 Flink DataStream API 应用案例
在 11.11 购物节大促活动中,天猫、京东等商家会对外发布购物节对应的交易金额、单量等信息,下面我们以 2023.11.11 购物节大促为背景,结合 DataStream API,完成技术方案设计,并输出实现代码。原创 2024-08-21 20:05:39 · 391 阅读 · 0 评论 -
(八)Flink Join 连接
在分布式数据处理中,JOIN 是一个非常重要的操作。Flink 的 JOIN 是用于将两个数据流按照一定的条件进行连接,生成新的数据流。Flink 双流 JOIN 主要分为两大类:一类是基于窗口的 JOIN 操作,另一类是基于原生 State 的 Connect 算子操作。其中基于窗口的 JOIN 可细分为 Window Join、coGroup、Interval Join 三种。下面我们将对这三种 JOIN 做详细介绍。原创 2024-08-20 11:16:09 · 380 阅读 · 0 评论 -
(七)Flink Watermark
Flink 的 Watermark 是用来标识数据流中的一个时间点。Watermark 的设计是为了解决乱序数据处理的问题,尤其是涉及到多个分区的 Kafka 消费者时。在 Watermark 的作用下,即使某些数据出现了延迟到达的情况,也不会导致整个处理流程的中断。此外,Watermark 还能防止过期的数据被处理,从而提高了数据处理的准确性。原创 2024-08-20 11:11:06 · 263 阅读 · 0 评论 -
(六)Flink 窗口计算
窗口(Window)是处理无界流的关键所在。窗口可以将数据流装入大小有限的“桶”中,再对每个“桶”加以处理。本章我们将详细介绍时间概念、窗口类型、窗口划分、窗口的生命周期、Window Assigners、窗口函数、Triggers 窗口触发器、Evictor 数据剔除器、Allowed Lateness、旁路输出的概念,并输出实现案例。原创 2024-08-19 17:45:45 · 222 阅读 · 0 评论 -
(五)Flink Sink 数据输出
经过 Transformation 操作之后,最终形成用户所需要的结果数据集。通常情况下,用户希望将结果数据输出到外部存储介质或者传输到下游的消息中间件中,在 Flink 中,将 DataStream 数据输出到外部系统的过程被定义为 Sink 操作。原创 2024-08-19 15:37:48 · 278 阅读 · 0 评论 -
(四)Flink Transformation 数据转换
用户通过算子能将一个或多个 DataStream 转换成新的 DataStream,在应用程序中可以将多个数据转换算子合并成一个复杂的数据流拓扑。 这部分内容将描述 Flink DataStream API 中基本的数据转换 API。原创 2024-08-19 15:07:20 · 187 阅读 · 0 评论 -
(三)Flink Source 数据源
Flink 数据源主要分为内置数据源和第三方数据源。其中内置数据源包含文件、Socket 连接、集合类型数据等,不需要引入其它依赖库。第三方数据源定义了 Flink 和外部系统数据交互的逻辑,Flink 提供了非常丰富的数据源连接器,例如 Kafka、Elasticsearch、RabbitMQ、JDBC 等。原创 2024-08-19 15:03:05 · 171 阅读 · 0 评论 -
(二)Flink 程序运行结构
本章我们将通过入门案例,从开发环境准备到程序运行输出,带领大家初步认识 Flink。原创 2024-06-05 21:55:35 · 208 阅读 · 0 评论 -
(一)Flink 概览
本章针对 Apache Flink 的基本概念、应用场景、主要组件、运行架构、版本历史进行介绍,让学者对 Flink 这项分布式处理技术能够有初步的了解。原创 2024-06-05 21:29:38 · 42 阅读 · 0 评论