慕课《Flink+ClickHouse 玩转企业级实时大数据开发》

慕课《Flink+ClickHouse 玩转企业级实时大数据开发》

Michael_PK

资深大数据架构师, 八年互联网公司一线研发经验,担任大数据架构师。主要从事基于Spark/Flink为核心打造的大数据公有云、私有云数据平台产品的研发。改造过Hadoop、Spark等框架的源码为云平台提供更高的执行性能。集群规模过万,有丰富的大数据项目实战经验以及授课经验(授课数千小时,深受学员好评)。

课程简介

Flink已经成为高薪大数据工程师的必备技能,越早掌握,越能占得红利。本课程带你原理出发,构建知识体系,并引入热门OLAP引擎ClickHouse,整合Flink搭建企业级大数据实时分析应用,带你彻底打通Flink开发任督二脉。

课程目标

从零开始,原理出发,案例驱动,吃透Flink开发方方面面

搭建Flink完整知识体系

快速入门Flink

轻松上手项目部署

全面掌握六大核心知识

实战企业级大数据项目

核心组件二次开发

结合ClickHouse开发企业级

大数据实时场景

实时数仓项目拓展实践

提升实际问题解决能力

架构/框架选型?

升级、落地、性能调优?

技术大牛如何思考问题?

课程目录

第1章 Flink认知篇

视频:1-1 课前须知,这里有你需要了解得一切 (09:02)试看

视频:1-2 课程目录 (01:39)

视频:1-3 业界大数据分布式计算框架 (04:22)

视频:1-4 初识Flink (10:47)

视频:1-5 什么是Flink (12:12)

图文:1-6 [科普小贴士]Flink发展史&特点&行业应用

视频:1-7 学习一个新框架的方法论 (19:58)

第2章 Flink本地开发快速上手篇 试看17 节 | 78分钟

视频:2-1 课程目录 (01:38)

视频:2-2 Maven部署 (09:20)

视频:2-3 IDEA社区版和旗舰版区别 (03:17)

视频:2-4 基于官方提供的命令来构建Flink项目 (10:25)

视频:2-5 基于IDEA构建多module的Flink项目 (11:31)

视频:2-6 Flink编程模型 (04:19)

视频:2-7 基于Flink开发第一个实时处理案例之需求分析 (04:41)

视频:2-8 基于Flink开发第一个实时处理案例之功能实现一 (11:44)

视频:2-9 基于Flink开发第一个实时处理案例之功能实现二 (01:38)

视频:2-10 基于Flink开发第一个实时处理案例之功能实现三 (05:14)

视频:2-11 基于Flink开发第一个批处理案例之需求分析 (01:11)

视频:2-12 基于Flink开发第一个批处理案例之功能实现 (03:52)

视频:2-13 基于Flink开发第一个批处理案例之功能实现重构 (02:39)

视频:2-14 基于Flink编程套路总结 (03:14)试看

视频:2-15 本章重难点总结 (02:20)

作业:2-16 [讨论题]关于数据结果的思考

作业:2-17 [任务题]Lambda 表达式版案例实现

第3章 Flink部署篇10 节 | 53分钟

视频:3-1 课程目录 (01:51)

图文:3-2 [环境配置]云主机开通及配置

视频:3-3 Flink架构 (11:59)

视频:3-4 Flink部署 (16:38)

视频:3-5 Flink UI参数讲解 (04:53)

视频:3-6 通过命令行方式提交&展示&取消Flink作业 (09:53)

视频:3-7 通过UI方式提交&展示&取消Flink作业 (03:56)

视频:3-8 关于并行度的补充 (03:02)

作业:3-9 [讨论题]知识梳理

作业:3-10 [任务题]Flink集群部署应用

第4章 Flink实时处理核心API基础篇21 节 | 100分钟

视频:4-1 课程目录 (01:24)

视频:4-2 DataStream API概述 (07:38)

视频:4-3 StreamExecutionEnvironment详解 (07:45)

视频:4-4 Source概述 (08:56)

视频:4-5 Source API编程之Socket及并行度 (05:11)

视频:4-6 Source API编程之并行集合及并行度 (06:13)

图文:4-7 [核心组件部署]ZooKeeper&Kafka部署

视频:4-8 Source API编程之对接Kafka数据 (07:18)

视频:4-9 Transformation概述 (06:41)

视频:4-10 Transformation算子之map (11:12)

视频:4-11 Transformation算子之filter (05:19)

视频:4-12 Transformation算子之flatMap (05:18)

视频:4-13 Transformation算子之keyBy (06:47)

视频:4-14 Transformation算子之reduce (08:42)

视频:4-15 Sink概述 (02:31)

视频:4-16 Sink之print&printToErr及并行度 (09:00)

作业:4-17 [任务题]词频统计

作业:4-18 [任务题]Kafka消息的发送和接收

作业:4-19 [任务题]readTextFile的并行度

作业:4-20 [面试讨论题]Flink中的并行度

作业:4-21 [面试讨论题]Task Slot的理解

第5章 Flink实时处理核心API进阶篇 试看20 节 | 100分钟

视频:5-1 课程目录 (03:18)

视频:5-2 MapFunction&RichMapFunction认识 (06:19)

视频:5-3 通过RichMapFunction认识对应的生命周期方法 (07:25)

视频:5-4 SourceFunction代码层级 (03:23)试看

视频:5-5 自定义单并行度Source (09:15)

视频:5-6 自定义多并行度Source (01:44)

视频:5-7 自定义Source读取MySQL数据 (13:15)

视频:5-8 Transformation算子之union (04:14)

视频:5-9 Transformation算子之connect (07:37)

视频:5-10 Transformation算子之CoMapFunction (06:10)

视频:5-11 Transformation算子之CoFlatMapFunction (02:17)

视频:5-12 自定义分区器 (10:22)

视频:5-13 自定义MySQLSink功能实现 (10:33)

视频:5-14 自定义MySQLSink需求分析 (04:20)

视频:5-15 RedisSink功能实现 (09:02)

图文:5-16 [核心组件部署]Redis部署

作业:5-17 [任务题]自定义RedisSink

作业:5-18 [任务题]自定义数据源

作业:5-19 [面试讨论题]Flink中的分区策略

作业:5-20 [面试讨论题]Flink DataStream中使用得算子

第6章 [项目实战第一篇]基于Flink+ClickHouse构建大数据实时分析项目实战23 节 | 92分钟

视频:6-1 课程目录 (03:17)

视频:6-2 同类产品分析 (06:07)

视频:6-3 项目架构 (06:15)

视频:6-4 项目子工程创建 (01:41)

视频:6-5 字段说明 (05:25)

视频:6-6 用户行为日志类定义 (03:01)

视频:6-7 功能一需求分析 (03:18)

视频:6-8 功能一实现之数据清洗 (04:59)

视频:6-9 功能一实现之统计分析 (04:56)

视频:6-10 功能一实现之统计结果入Redis (05:30)

视频:6-11 功能一实现之拓展 (04:08)

视频:6-12 需求二之功能分析 (06:51)

视频:6-13 需求二之IP解析测试 (06:30)

视频:6-14 功能二实现之自定义UDF函数解析IP地址 (04:55)

视频:6-15 功能二实现之统计分析及入库 (03:35)

视频:6-16 需求二之异步IO补充 (14:09)

视频:6-17 前面两个需求可能会遇到的问题提炼 (04:55)

视频:6-18 重难点总结 (02:22)

作业:6-19 [任务题]统计新老用户的数据分布(1)

作业:6-20 [任务题]统计新老用户的数据分布(2)

作业:6-21 [任务题]统计结果存储

作业:6-22 [面试讨论题]在数据清洗过程中做过的处理

作业:6-23 [面试讨论题]使用Flink做实时处理项目架构选型

第7章 Flink时间语义及Window API篇23 节 | 94分钟

视频:7-1 课程目录 (04:09)

视频:7-2 时间三兄弟 (10:16)

视频:7-3 时间三兄弟举例解释 (05:31)

视频:7-4 初识Window (03:55)

视频:7-5 Window分类 (08:19)

视频:7-6 Window Assigner (04:16)

视频:7-7 滚动窗口 (03:40)

视频:7-8 滑动窗口 (03:20)

视频:7-9 会话窗口 (03:04)

视频:7-10 窗口生命周期 (04:45)

视频:7-11 基于ProcessingTime的Non-Keyed滚动窗口实战 (11:03)

视频:7-12 基于ProcessingTime的Keyed滚动窗口实战 (04:21)

视频:7-13 WindowFunction概述 (04:02)

视频:7-14 WindowFunction之ReduceFunction实战 (05:12)

视频:7-15 WindowFunction补充 (03:04)

视频:7-16 WindowFunction之ProcessWindowFunction实战 (10:19)

视频:7-17 重难点总结 (04:14)

作业:7-18 [任务题]会话窗口编程

作业:7-19 [任务题]滑动窗口编程

作业:7-20 [面试讨论题]数据倾斜解决方案

作业:7-21 [面试讨论题]对WindowFunction的认识

作业:7-22 [面试讨论题]对于时间语义的理解

作业:7-23 [面试讨论题]Flink中的窗口分析

第8章 Flink Watermark11 节 | 64分钟

视频:8-1 课程目录 (02:57)

视频:8-2 Watermark概述 (12:53)

视频:8-3 基于EventTime和Watermark结合滚动窗口综合案例之没有延迟 (14:27)

视频:8-4 基于EventTime和Watermark结合滚动窗口综合案例之有延迟 (15:16)

视频:8-5 基于EventTime和Watermark结合滚动窗口综合案例之延迟数据丢失 (05:01)

视频:8-6 基于EventTime和Watermark结合滚动窗口综合案例之捕获到延迟数据 (08:05)

视频:8-7 重难点总结 (04:31)

作业:8-8 [任务题]会话窗口编程

作业:8-9 [任务题]滑动窗口编程

作业:8-10 [面试讨论题]乱序数据解决方案

作业:8-11 [面试讨论题]Flink中水印得理解

第9章 Flink状态管理篇27 节 | 150分钟

视频:9-1 课程目录 (02:53)

视频:9-2 状态能为什么带来什么 (09:06)

视频:9-3 State分类 (16:10)

视频:9-4 使用ValueState完成求平均数功能 (14:45)

视频:9-5 使用MapState完成求平均数功能 (05:59)

视频:9-6 Flink Checkpoint机制 (15:04)

视频:9-7 Flink应用程序中开启checkpoint (05:32)

视频:9-8 Restart Strategy (08:20)

视频:9-9 Checkpoint整合重启策略功能测试screenflow (07:35)

视频:9-10 Checkpoint整合重启策略及状态功能测试screenflow (05:29)

视频:9-11 Flink StateBackend (06:01)

视频:9-12 Flink StateBackend之MemoryStateBackend (05:59)

视频:9-13 Flink StateBackend之FsStateBackend (02:46)

视频:9-14 Flink StateBackend之RocksDBStateBackend (05:35)

视频:9-15 FsStateBackend 本地文件系统功能测试 (02:49)

视频:9-16 ExternalizedCheckpointCleanup在生产上的使用 (05:12)

视频:9-17 FsStateBackend HDFS功能测试 (02:32)

视频:9-18 Checkpoint全流程测试之Flink UI操作 (07:28)

视频:9-19 Checkpoint全流程测试之命令行操作 (03:47)

视频:9-20 Checkpoint小结 (04:34)

视频:9-21 Savepoints (09:26)

视频:9-22 重难点总结 (02:23)

作业:9-23 [任务题]使用ListState实现求平均数

作业:9-24 [任务题]RocksDBStateBackend应用

作业:9-25 [面试讨论题]Flink的容错机制

作业:9-26 [面试讨论题]Checkpoint和SavePoint的区别

作业:9-27 [面试讨论题]Flink中的状态存储

第10章 [项目实战第二篇]基于Flink+ClickHouse构建大数据实时分析项目实战13 节 | 64分钟

视频:10-1 课程目录 (02:19)

视频:10-2 功能一之需求分析 (09:22)

视频:10-3 功能一之实现01 (04:08)

视频:10-4 功能一之实现02 (14:50)

视频:10-5 功能一之实现03 (11:06)

视频:10-6 功能二之需求分析 (03:26)

视频:10-7 功能二之实现01 (07:26)

视频:10-8 功能二之实现02 (03:22)

视频:10-9 重难点总结 (07:05)

作业:10-10 [任务题]布隆过滤器的原理

作业:10-11 [任务题]ValueState应用

作业:10-12 [面试讨论题]布隆过滤器应用分析

作业:10-13 [面试讨论题]分组TopN的实现思路及数据倾斜的解决方案

第11章 [项目实战第三篇]基于Flink+ClickHouse构建大数据实时分析项目实战14 节 | 78分钟

视频:11-1 课程目录 (02:46)

视频:11-2 Flink对接Kafka数据入门 (11:20)

视频:11-3 Flink整合Kafka代码开发 (11:55)

视频:11-4 参数配置化并读取 (07:52)

视频:11-5 Flink对接Kafka完整参数配置开发 (08:28)

视频:11-6 Flink对接Kafka数据封装V1版本 (03:54)

视频:11-7 Flink对接Kafka数据封装V2版本 (01:18)

视频:11-8 Flink对接Kafka数据封装V3版本 (05:38)

视频:11-9 Flink对接Kafka数据分析结果入Redis (06:55)

视频:11-10 Flink ExactlyOnce图解 (08:39)

视频:11-11 Flink两阶段提交 (08:46)

作业:11-12 [任务题]自定义MySQL Sink

作业:11-13 [面试讨论题]Flink整合kafka的两阶段提交的认识

作业:11-14 [面试讨论题]Flink如何实现Exactly-Once

第12章 初识ClickHouse24 节 | 109分钟

视频:12-1 课程目录 (02:05)

视频:12-2 背景需求 (03:39)

视频:12-3 初识ClickHouse (08:17)

视频:12-4 ClickHouse部署及快速入门 (10:59)

视频:12-5 ClickHouse常用参数讲解 (02:53)

视频:12-6 数据类型之Int和Float (08:45)

视频:12-7 数据类型之Decimal (07:37)

视频:12-8 数据类型之Bool (01:41)

视频:12-9 数据类型之String&FixedString&UUID (07:35)

视频:12-10 数据类型之Date&DateTime&DateTime64 (06:49)

视频:12-11 数据类型之Array (01:53)

视频:12-12 数据类型之Tuple (03:32)

视频:12-13 数据类型之Nested (04:03)

视频:12-14 数据库和表创建语法及数据库引擎 (05:38)

视频:12-15 初识表引擎 (03:13)

视频:12-16 表引擎之TinyLog (06:29)

视频:12-17 表引擎之StripeLog (05:23)

视频:12-18 表引擎之Log (03:01)

视频:12-19 ClickHouse整合MySQL (10:18)

视频:12-20 ClickHouse API编程 (04:55)

作业:12-21 [任务题]ClickHouse的集群搭建

作业:12-22 [任务题]ClickHouse的数据处理

作业:12-23 [面试讨论题]谈谈对 ClickHouse 引擎得理解

作业:12-24 [面试讨论题]ClickHouse得选择必然性

第13章 [项目实战终极篇]基于Flink+ClickHouse构建大数据实时分析项目实战18 节 | 95分钟

视频:13-1 课程目录 (01:34)

视频:13-2 现存问题描述及分析 (07:10)

视频:13-3 ReplacingMergeTree引擎的用法 (06:46)

视频:13-4 CH表如何设计 (04:54)

视频:13-5 CH ID生成策略 (09:40)

视频:13-6 Flink整合CH插入数据 (10:29)

视频:13-7 使用Flink进行数据清洗 (08:23)

视频:13-8 Flink清洗后的数据落地到CH并进行各种维度的统计分析 (09:05)

视频:13-9 全流程服务器测试 (05:34)

视频:13-10 引入CEP (04:38)

视频:13-11 CEP模式概述 (05:34)

视频:13-12 CEP功能开发 (08:32)

视频:13-13 CEP功能测试 (04:15)

视频:13-14 前端UI展示 (07:35)

作业:13-15 [任务题]数据写入ClickHouse

作业:13-16 [任务题]Flink on YARN运行全流程

作业:13-17 [任务题]使用CEP完成数据提取

作业:13-18 [面试讨论题]实时数据分析平台构建思路

第14章 Flink DataSet篇16 节 | 71分钟

视频:14-1 课程目录 (01:53)

视频:14-2 Flink批处理概述 (06:47)

视频:14-3 对接数据源为csv格式的数据 (09:49)

视频:14-4 对接数据源为压缩后的数据 (02:16)

视频:14-5 对接数据源为子目录的数据 (03:19)

视频:14-6 Transformation之map (05:42)

视频:14-7 Transformation之mapPartition (03:04)

视频:14-8 Transformation之distinct (02:47)

视频:14-9 Transformation之first-n (07:37)

视频:14-10 Sink (07:24)

视频:14-11 Flink中分布式缓存的使用 (08:05)

视频:14-12 Flink中计数器的使用 (07:37)

视频:14-13 重难点总结 (04:34)

作业:14-14 [任务题]实现join的功能

作业:14-15 [任务题]join和cross算子的编程

作业:14-16 [面试讨论题]Flink中使用分布式缓存的看法

第15章 Flink Table&SQL API篇23 节 | 115分钟

视频:15-1 课程目录 (03:32)

视频:15-2 Flink Table API&SQL概述 (06:08)

视频:15-3 Flink Table API&SQL编程模型 (08:03)

视频:15-4 Flink SQL整合DataStream编程 (06:59)

视频:15-5 Flink Table API整合DataStream编程 (03:24)

视频:15-6 Flink Table API整合DataStream编程toRetractStream使用 (06:34)

视频:15-7 动态表和连续查询 (07:43)

视频:15-8 图解连续查询 (05:24)

视频:15-9 Table转Stream的方式 (07:06)

视频:15-10 Flink Table API&SQL Connector概述 (03:38)

视频:15-11 Flink Table API&SQL FileSystem Connector读取数据 (08:45)

视频:15-12 Flink Table API&SQL FileSystem Connector写出数据 (04:33)

视频:15-13 Flink Table API结合Window及EventTime编程 (16:13)

视频:15-14 Flink SQL结合Window及EventTime编程 (05:03)

视频:15-15 Flink UDF函数概述 (06:34)

视频:15-16 Flink UDF函数编程实战 (08:24)

视频:15-17 重难点总结 (06:10)

作业:15-18 [任务题]实现数据的对接和Sink

作业:15-19 [任务题]实现EventTime结合滑动窗口的功能测试

作业:15-20 [任务题]完成IP解析的功能开发

作业:15-21 [面试讨论题]Flink项目中选择哪种访问方式

作业:15-22 [面试讨论题]Flink使用Kafka对接时的注意事项

作业:15-23 [面试讨论题]Flink SQL是如何实现SQL的解析的

第16章 Flink版本升级篇9 节 | 65分钟

视频:16-1 课程目录 (02:00)

视频:16-2 开发环境准备 (04:16)

视频:16-3 老版本keyBy的用法 (07:06)

视频:16-4 新版本keyBy的用法 (02:44)

视频:16-5 老版本WM的用法 (06:29)

视频:16-6 新版本WM的用法 (08:14)

视频:16-7 新老版本Table API&SQL整合WM的用法 (16:10)

视频:16-8 Flink on YARN运行及升级 (17:19)

图文:16-9 [拓展阅读]Flink版本升级核心梳理

第17章 [拓展]基于Flink构建实时数仓项目实战15 节 | 103分钟

视频:17-1 课程目录 (03:50)

视频:17-2 实时数仓架构及分层 (16:59)

视频:17-3 认识Canal (06:37)

视频:17-4 Canal对接Kafka联调 (15:12)

视频:17-5 使用TCP方式拉取Canal数据 (16:38)

视频:17-6 双流JOIN设计思路 (07:27)

视频:17-7 双流JOIN实现之对接数据 (09:19)

视频:17-8 双流JOIN实现之设置WM (03:53)

视频:17-9 双流JOIN实现之JOIN实现 (09:52)

视频:17-10 双流JOIN实现之未关联上的数据处理方案 (05:41)

视频:17-11 实时数仓数据流转&命名规范 (06:33)

作业:17-12 [任务题]基于Flink实现维表的join

作业:17-13 [任务题]双流join的测试

作业:17-14 [面试讨论题]如何基于UI配置方式完成项目设计

作业:17-15 [面试讨论题]maxwell和canal的区别

第18章 总结和展望1 节 | 15分钟

视频:18-1 课程总结和回顾 (14:10)

评论0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址