-
内容大纲
这是一部以实战为导向,能指导读者零基础掌握Flink并快速完成进阶的著作,从功能、原理、实战和调优等4个维度循序渐进地讲解了如何利用Flink进行分布式流式应用开发。作者是该领域的资深专家,现就职于第四范式,曾就职于明略数据。
全书一共10章,逻辑上可以分为三个部分:
第一部分(第1~2章)
主要介绍了Flink的核心概念、特性、应用场景、基本架构,开发环境的搭建和配置,以及源代码的编译。
第二部分(第3~9章)
详细讲解了Flink的编程范式,各种编程接口的功能、应用场景和使用方法,以及核心模块和组件的原理和使用。
第三部分(第10章)
重点讲解了Flink的监控和优化,参数调优,以及对反压、Checkpoint和内存的优化。 -
作者介绍
-
目录
前言
第1章 Apache Flink介绍
1.1 Apache Flink是什么
1.2 数据架构的演变
1.2.1 传统数据基础架构
1.2.2 大数据数据架构
1.2.3 有状态流计算架构
1.2.4 为什么会是Flink
1.3 Flink应用场景
1.4 Flink基本架构
1.4.1 基本组件栈
1.4.2 基本架构图
1.5 本章小结
第2章 环境准备
2.1 运行环境介绍
2.2 Flink项目模板
2.2.1 基于Java实现的项目模板
2.2.2 基于Scala实现的项目模板
2.3 Flink开发环境配置
2.3.1 下载IntelliJ IDEA IDE
2.3.2 安装Scala Plugins
2.3.3 导入Flink应用代码
2.3.4 项目配置
2.4 运行Scala REPL
2.4.1 环境支持
2.4.2 运行程序
2.5 Flink源码编译
2.6 本章小结
第3章 Flink编程模型
3.1 数据集类型
3.2 Flink编程接口
3.3 Flink程序结构
3.4 Flink数据类型
3.4.1 数据类型支持
3.4.2 TypeInformation信息获取
3.5 本章小结
第4章 DataStream API 介绍与使用
4.1 DataStream编程模型
4.1.1 DataSources数据输入
4.1.2 DataSteam转换操作
4.1.3 DataSinks数据输出
4.2 时间概念与Watermark
4.2.1 时间概念类型
4.2.2 EventTime和Watermark
4.3 Windows窗口计算
4.3.1 Windows Assigner
4.3.2 Windows Function
4.3.3 Trigger窗口触发器
4.3.4 Evictors数据剔除器
4.3.5 延迟数据处理
4.3.6 连续窗口计算
4.3.7 Windows多流合并
4.4 作业链和资源组
4.4.1 作业链
4.4.2 Slots资源组
4.5 Asynchronous I/O异步操作
4.6 本章小结
第5章 Flink状态管理和容错
5.1 有状态计算
5.2 Checkpoints和Savepoints
5.2.1 Checkpoints检查点机制
5.2.2 Savepoints机制
5.3 状态管理器
5.3.1 StateBackend类别
5.3.2 状态管理器配置
5.4 Querable State
5.5 本章小结
第6章 DataSet API介绍与使用
6.1 DataSet API
6.1.1 应用实例
6.1.2 DataSources数据接入
6.1.3 DataSet转换操作
6.1.4 DataSinks数据输出
6.2 迭代计算
6.2.1 全量迭代
6.2.2 增量迭代
6.3 广播变量与分布式缓存
6.3.1 广播变量
6.3.2 分布式缓存
6.4 语义注解
6.4.1 Forwarded Fileds注解
6.4.2 Non-Forwarded Fileds注解
6.4.3 Read Fields注解
6.5 本章小结
第7章 Table API & SQL介绍与使用
7.1 TableEnviroment概念
7.1.1 开发环境构建
7.1.2 TableEnvironment基本操作
7.1.3 外部连接器
7.1.4 时间概念
7.1.5 Temporal Tables临时表
7.2 Flink Table API
7.2.1 Table API应用实例
7.2.2 数据查询和过滤
7.2.3 窗口操作
7.2.4 聚合操作
7.2.5 多表关联
7.2.6 集合操作
7.2.7 排序操作
7.2.8 数据写入
7.3 Flink SQL使用
7.3.1 Flink SQL实例
7.3.2 执行SQL
7.3.3 数据查询与过滤
7.3.4 Group Windows窗口操作
7.3.5 数据聚合
7.3.6 多表关联
7.3.7 集合操作
7.3.8 数据输出
7.4 自定义函数
7.4.1 Scalar Function
7.4.2 Table Function
7.4.3 Aggregation Function
7.5 自定义数据源
7.5.1 TableSource定义
7.5.2 TableSink定义
7.5.3 TableFactory定义
7.6 本章小结
第8章 Flink组件栈介绍与使用
8.1 Flink复杂事件处理
8.1.1 基础概念
8.1.2 Pattern API
8.1.3 事件获取
8.1.4 应用实例
8.2 Flink Gelly图计算应用
8.2.1 基本概念
8.2.2 Graph API
8.2.3 迭代图处理
8.2.4 图生成器
8.3 FlinkML机器学习应用
8.3.1 基本概念
8.3.2 有监督学习算子
8.3.3 数据预处理
8.3.4 推荐算法
8.3.5 Pipelines In FlinkML
8.4 本章小结
第9章 Flink部署与应用
9.1 Flink集群部署
9.1.1 Standalone Cluster部署
9.1.2 Yarn Cluster部署
9.1.3 Kubernetes Cluster部署
9.2 Flink高可用配置
9.2.1 Standalone集群高可用配置
9.2.2 Yarn Session集群高可用配置
9.3 Flink安全管理
9.3.1 认证目标
9.3.2 认证配置
9.3.3 SSL配置
9.4 Flink集群升级
9.4.1 任务重启
9.4.2 状态维护
9.4.3 版本升级
9.5 本章小结
第10章 Flink监控与性能优化
10.1 监控指标
10.1.1 系统监控指标
10.1.2 监控指标注册
10.1.3 监控指标报表
10.2 Backpressure监控与优化
10.2.1 Backpressure进程抽样
10.2.2 Backpressure页面监控
10.2.3 Backpressure配置
10.3 Checkpointing监控与优化
10.3.1 Checkpointing页面监控
10.3.2 Checkpointing优化
10.4 Flink内存优化
10.4.1 Flink内存配置
10.4.2 Network Buffers配置
10.5 本章小结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...