Flink 的 slot 管理分为 ResourceManager、TaskExecutor、JobMaster 3 个部分,本章节结合 Flink 源码对上述 3 个部分的协作关系、具体实现进行了深入剖析。
本章节重点介绍了 Flink Job 提交过程,包含了 StreamGraph 到 JobGraph 在客户端的转换和优化,并给出了源码级剖析。虽然是以 per-job 模式下的提交过程为例,但在 session、application 模式下核心代码并无二致,均可作为研究参照。
对 Flink 架构拥有源码级理解是大数据实时计算从业人员的必备条件,从本章节开始,将按照 Flink 集群启动、Flink Job 提交、Slot 管理、Task 执行的顺序一一为读者展开 Flink 源码剖析。本章节重点介绍了 Flink 集群三大组件的启动流程,读者在进行分布式计算框架的设计时可以作为参照。
Event Time + WaterMark 是 Flink 处理乱序数据的有效机制,本章节将深入分析 Flink 的 Time 与 WaterMark,使读者对其有更为深刻的理解。
本章节主要介绍了 Flink 的通信框架 akka、Flink on YARN 的三种部署模式、Flink 高可用服务、Flink 文件服务 BlobService。读者可从中进一步了解到 Flink 的工作原理与设计哲学,无论从事 Flink 开发、应用、维护,还是其他分布式系统的设计,均会有启发和收获。
状态和精准一次是 Flink 流式计算引擎的一大特色,本章节从状态、状态后端、checkpoint 算法逐步为读者展示了 Flink 状态机制设计的绝妙之处。
Flink 是当今最主流的大数据流式计算引擎,没有之一。本文将解开 Flink 的神秘面纱,从 MapReduce、Spark、Flink 的技术演进入手,引出 Flink 的核心设计原理、简单的编程模板与执行过程,以及 Flink 内存管理方式。
YARN 的核心功能是资源管理与任务调度,本章节将介绍 YARN 的资源管理与任务调度部分,包括队列配置、三种调度器详解。
YARN 是 Hadoop 生态中的资源管理与调动框架,用于计算资源的管理和分配,历经 MapReduce、Spark、Flink 后仍经久不衰。研究 YARN 的核心设计理念有助于理解其本质,读者在进行分布式资源管理与调度系统的设计可作为参照。
YARN 可以说是 Hadoop 中设计最为复杂的框架了,本章节先从 YARN 的核心工作机制入手,为读者梳理 YARN 的核心设计理念,方便后续章节深入研究 YARN。
本章将从集群启动、文件上传下载方面深度剖析 HDFS 源码,读者将全方位地了解到 HDFS 的源码实现,分布式存储系统的设计精髓。
本章节主要介绍了 HDFS 的 NameNode 和 DataNode 的设计与源码实现。
HDFS 主打海量文件存储,文章将带读者解开其神秘面纱。首先将从架构演进开始,从分布式文件系统首先要解决的问题出发,逐步介绍元数据管理、HA 高可用集群、联邦集群,以及企业级实践。
Apache Hadoop 可以说是大数据技术的基石,研究大数据不妨先从 Hadoop 说起。而针对分布式框架,最先要搞清楚的就是通信协议与一致性保证。本章节先从通信架构将其,在后续章节会介绍一致性保障。
ZooKeeper 是分布式协调服务,常用于分布式锁、集群管理,在 Hadoop 生态圈有着举足轻重的地位。本文从设计理念、源码实现方面深入剖析了 Zookeeper 的实现原理,为读者提供了详实的学习资料,在分布式系统设计理念方向提供启发和灵感。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号