这门课解决什么工作场景

大数据集群跑起来之后,最让人头疼的往往不是写不出代码,而是任务跑着跑着内存溢出、某个节点突然掉线,或者 YARN 上的资源分配不合理却没人发现。这门课就是冲着这类痛点去的:用 Flink 流式计算做一套集群资源监控项目,把底层硬件和任务运行时的指标实时抓出来、算清楚、再呈现出来。它不是泛泛讲一遍 Flink API 怎么调,而是把“监控”这个具体的工程场景拆开,带着你从指标采集、数据流转到集群部署走一遍完整链路。对于做数据平台或者后端开发、平时要兼顾集群稳定性的人来说,这种把流计算和运维监控绑在一起练的项目经验比较稀缺,值得花时间盘下来。

适合什么基础,建议先看哪几块

这套资料不适合完全没碰过 Java 或者连 Linux 基本操作都发怵的人。它默认你已经能看懂基础的 Java 代码、知道 Maven 是干嘛的、对 Hadoop 和 YARN 有个大概印象。如果是转行刚接触大数据,建议先补一下这些前置概念再来看,否则到 Flink ON YARN 部署那一块很容易卡住。

拿到资料后,不要从头顺着硬啃。建议先看课程介绍和实时计算技术选型这两部分,弄清楚 Flink 和 Spark 在流处理上的核心差异,以及为什么这个监控项目要选 Flink。接着直接跳到 IDEA 构建 Maven 项目和开发第一个应用案例,先把本地能跑通的最小闭环走一遍。等代码能在 Local 模式下跑出结果了,再回头去看 Flink 的运行模型和 ON YARN 集群部署。这种先动手再补理论的顺序,比纯按目录顺序看效率高得多,也能让你尽早发现自己到底卡在哪一步。

学完能独立做什么,资料怎么配合练习

把这套东西扎实地走完,你能独立搭建一套跑在 YARN 上的 Flink 监控流处理任务。具体来说,从用 Maven 把项目结构搭好、写流处理逻辑、打包提交到集群,到在 YARN 上做部署和测试,整个流程你能一个人闭环完成。换到实际工作里,如果公司让你接手一个实时数据管道,或者要把原来批处理的监控逻辑改成流式的,你心里是有底的,知道每一步怎么落地,不会对着空项目发呆。

练习的时候,资料里的视频要和自己的实操严格绑定。看视频里讲 Maven 打包,就立刻在自己机器上敲一遍打包命令;看 Flink Shell 调试,就马上开终端输入指令试错。不要只看不练,大数据的坑全在环境配置里。第一遍跑 Local 模式时大概率会遇到端口冲突或者依赖报错,这时候不要跳过,把报错信息记下来对照着解决,这才是积累实战经验的真正环节。等本地完全没问题了,再去碰 ON YARN 的集群部署,一步一步把环境复杂度加上去。


你将对Flink流式处理技术有重点深入的理解,帮助同学们快速积累Flink实战项目经验。

课程目录

*   01 课程介绍/

  *   01 Flink大数据集群资源监控项目实战

*   02 flink流式计算/

  *   01 Flink特点及层次结构

  *   02 Flink典型应用场景

  *   03 Flink VS Spark

  *   04 实时计算技术选型

  *   05 IDEA快速构建一个Maven项目

  *   06 开发第一个Flink应用案例

  *   07 通过Maven对Flink项目进行打包

  *   08 Flink Local模式安装与测试

  *   09 Flink Shell代码调试工具

  *   10 Flink ON YARN运行原理

  *   11 Flink ON YARN集群部署

  *   12 Flink ON YARN集群测试1

  *   13 Flink ON YARN集群测试2

  *   14 Flink运行模型

  *   15 Flink Source、Transformation

  *   16 Flink与Kafka集成开发1

  *   17 Flink与Kafka集成开发2

  *   18 Flink与Kafka集成开发3

  *   19 Flink task并行度介绍

  *   20 Flink并行度设置

*   03 InfluxDB时序数据库/

  *   01 InfluxDB概述

  *   02 InfluxDB数据模型

  *   03 InfluxDB时间线

  *   04 InfluxDB系统架构

  *   05 InfluxDB安装部署

  *   06 InfluxDB数据库增删改查

  *   07 InfluxDB数据保留策略增删改查

  *   08 InfluxDB表增删改查

  *   09 InfluxDB用户增删改查

  *   10 InfluxDB 用户授权

  *   11 InfluxDB开启登录认证

  *   12 InfluxDB 构建Maven项目

  *   13 Java连接InfluxDB测试

  *   14 InfluxDB单条数据插入

  *   15 InfluxDB批量写入Points

  *   16 InfluxDB数据查询

  *   17 InfluxDB数据删除

*   04 Grafana可视化监控与分析工具/

  *   01 Grafana概述

  *   02 为什么要用Grafana

  *   03 Grafana安装部署

  *   04 实时产生时序数据

  *   05 Grafana添加InfluxDB数据源

  *   06 Grafana基本功能介绍

*   05 flink+InfluxDB+Grafana大数据项目实战/

  *   01 项目背景

  *   02 大数据集群产生的问题

  *   03 项目遇到的阻力

  *   04 整体解决方案

  *   05 架构设计与技术选型

  *   06 YARN集群调度器配置

  *   07 InfluxDB与Grafana环境准备

  *   08 集群总体指标采集方案

  *   09 集群调度器指标采集方案

  *   10 YARN集群其他指标采集方案

  *   11 开发Http工具类采集YARN集群数据

  *   12 开发YARN集群的配置类

  *   13 自定义Flink Sink插入InfluxDB

  *   14 开发Flink应用主体逻辑

  *   15 自定义Flink Source采集YARN集群指标

  *   16 Flink解析公平调度的Cluster Metrics

  *   17 Flink解析公平调度的Cluster Metric

  *   18 Flink解析容量调度与FIFO调度的Yarn集群指

  *   19 本地代码测试运行

  *   20 开发环境代码测试运行

  *   21 生产环境代码测试运行1

  *   22 生产环境代码测试运行2

  *   23 Flink项目打包配置1

  *   24 Flink项目打包配置2

  *   25 Flink项目打包部署1

  *   26 Flink项目打包部署2

  *   27 解决Flink高版本兼容性问题

  *   28 Grafana添加InfluxDB数据源 (2)

  *   29 Grafana添加InfluxDB数据源

  *   30 Grafana对YARN集群资源进行画像1

  *   31 Grafana对YARN集群资源进行画像2