资源详情

剑指大数据――Flink学习精要(Java版)

剑指大数据――Flink学习精要(Java版)-电子书下载


作者: 尚硅谷教育
出版社: 电子工业出版社
页数: 348
定价: 78.70元
ISBN: 9787121429125

下载次数:1


本站推荐

书籍资料

  • 内容简介
  • 作者介绍
  • 书籍目录

第1章初识Flink1
1.1 Flink的起源和设计理念1
1.2 Flink的应用3
1.2.1Flink在企业中的应用3
1.2.2Flink主要的应用场景3
1.3 流式数据处理的发展和演变4
1.3.1流处理和批处理5
1.3.2传统事务处理6
1.3.3有状态的流处理6
1.3.4Lambda架构9
1.3.5新一代流处理器10
1.4 Flink的特性总结10
1.4.1Flink的核心特性10
1.4.2分层API10
1.5 Flink与Spark11
1.5.1数据处理架构12
1.5.2数据模型和运行架构13
1.5.3Spark还是Flink13
1.6 本章总结14
第2章Flink快速上手15
2.1 环境准备15
2.2 创建项目15
2.3 编写代码18
2.3.1批处理18
2.3.2流处理20
2.4 本章总结23
第3章Flink部署25
3.1 快

启动一个Flink集群26
3.1.1环境配置26
3.1.2本地启动26
3.1.3集群启动27
3.1.4向集群提交作业29
3.2 部署模式32
3.2.1会话模式33
3.2.2单作业模式33
3.2.3应用模式34
3.3 独立模式34
3.3.1会话模式部署35
3.3.2单作业模式部署35
3.3.3应用模式部署35
3.3.4高可用35
3.4 YARN模式37
3.4.1相关准备和配置37
3.4.2会话模式部署38
3.4.3单作业模式部署39
3.4.4应用模式部署40
3.4.5高可用40
3.5 K8s模式41
3.6 本章总结41
第4章Flink运行时架构42
4.1 系统架构42
4.1.1整体构成42
4.1.2JobManager43
4.1.3TaskManager44
4.2 作业提交流程45
4.2.1高层级抽象视角45
4.2.2独立模式45
4.2.3YARN集群46
4.3 一些重要概念48
4.3.1数据流图48
4.3.2并行度49
4.3.3算子链51
4.3.4作业图与执行图53
4.3.5任务和任务槽55
4.4 本章总结60
第5章DataStreamAPI(基础篇)61
5.1 执行环境61
5.1.1创建执行环境62
5.1.2执行模式62
5.1.3触发程序执行64
5.2 源算子64
5.2.1准备工作64
5.2.2从集合中读取数据65
5.2.3从文件中读取数据66
5.2.4从Socket中读取数据67
5.2.5从Kafka中读取数据67
5.2.6自定义源算子69
5.2.7Flink支持的数据类型71
5.3 转换算子73
5.3.1基本转换算子73
5.3.2聚合算子76
5.3.3用户自定义函数81
5.3.4物理分区算子87
5.4 输出算子93
5.4.1连接到外部系统93
5.4.2输出到文件94
5.4.3输出到Kafka96
5.4.4输出到Redis97
5.4.5输出到ElasticSearch99
5.4.6输出到MySQL(JDBC)101
5.4.7自定义Sink输出102
5.5 本章总结104
第6章Flink中的时间和窗口105
6.1 时间语义105
6.1.1Flink中的时间语义105
6.1.2哪种时间语义更重要107
6.2 水位线108
6.2.1事件时间和窗口108
6.2.2什么是水位线110
6.2.3如何生成水位线114
6.2.4水位线的传递120
6.2.5水位线的总结121
6.3 窗口122
6.3.1窗口的概念122
6.3.2窗口的分类124
6.3.3窗口API概览128
6.3.4窗口分配器129
6.3.5窗口函数131
6.3.6测试水位线和窗口的使用142
6.3.7其他API144
6.3.8窗口的生命周期148
6.4 迟到数据的处理150
6.4.1设置水位线延迟时间150
6.4.2允许窗口处理迟到数据150
6.4.3将迟到数据放入窗口侧输出流151
6.5 本章总结154
第7章处理函数155
7.1 基本处理函数155
7.1.1处理函数的功能和使用155
7.1.2ProcessFunction解析157
7.1.3处理函数的分类158
7.2 KeyedProcessFunction159
7.2.1定时器和定时服务159
7.2.2KeyedProcessFunction的使用160
7.3 窗口处理函数164
7.3.1窗口处理函数的使用164
7.3.2ProcessWindowFunction解析164
7.4 应用案例――TopN166
7.4.1使用ProcessAllWindowFunction166
7.4.2使用KeyedProcessFunction168
7.5 侧输出流173
7.6 本章总结174
第8章多流转换175
8.1 分流175
8.1.1简单实现175
8.1.2使用侧输出流177
8.2 基本合流操作178
8.2.1联合178
8.2.2连接182
8.3 基于时间的合流――双流联结188
8.3.1窗口联结188
8.3.2间隔联结192
8.3.3窗口同组联结195
8.4 本章总结197
第9章状态编程198
9.1 Flink中的状态198
9.1.1有状态算子198
9.1.2状态的管理199
9.1.3状态的分类200
9.2 按键分区状态201
9.2.1基本概念和特点201
9.2.2支持的结构类型202
9.2.3代码实现204
9.2.4状态生存时间213
9.3 算子状态214
9.3.1基本概念和特点214
9.3.2状态类型215
9.3.3代码实现216
9.4 广播状态219
9.4.1基本用法219
9.4.2代码实例220
9.5 状态持久化和状态后端223
9.5.1检查点223
9.5.2状态后端224
9.6 本章总结226
第10章容错机制227
10.1 检查点227
10.1.1检查点的保存228
10.1.2从检查点恢复状态230
10.1.3检查点算法232
10.1.4检查点配置237
10.1.5保存点239
10.2 状态一致性240
10.2.1一致性的概念和级别240
10.2.2端到端的状态一致性241
10.3 端到端的精确一次241
10.3.1输入端保证242
10.3.2输出端保证242
10.3.3Flink和Kafka连接时的精确一次保证244
10.4 本章总结248
第11章TableAPI和SQL249
11.1 快速上手250
11.1.1需要引入的依赖250
11.1.2一个简单示例251
11.2 基本API252
11.2.1程序架构252
11.2.2创建表环境253
11.2.3创建表254
11.2.4表的查询255
11.2.5输出表257
11.2.6表和流的转换257
11.3 流处理中的表262
11.3.1动态表和持续查询262
11.3.2将流转换成动态表263
11.3.3用SQL持续查询265
11.3.4将动态表转换为流269
11.4 时间属性和窗口270
11.4.1事件时间271
11.4.2处理时间272
11.4.3窗口273
11.5 聚合查询275
11.5.1分组聚合275
11.5.2窗口聚合276
11.5.3开窗聚合279
11.5.4应用实例――TopN280
11.6 联结查询284
11.6.1常规联结查询284
11.6.2间隔联结查询285
11.7 函数286
11.7.1系统函数287
11.7.2自定义函数288
11.8 SQL客户端294
11.9 连接到外部系统296
11.9.1Kafka296
11.9.2文件系统298
11.9.3JDBC299
11.9.4ElasticSearch300
11.9.5HBase300
11.9.6Hive301
11.10 本章总结304
第12章FlinkCEP306
12.1 基本概念306
12.1.1CEP是什么306
12.1.2模式307
12.1.3应用场景307
12.2 快速上手308
12.2.1需要引入的依赖308
12.2.2一个简单实例308
12.3 模式API311
12.3.1个体模式311
12.3.2组合模式316
12.3.3模式组319
12.3.4匹配后跳过策略320
12.4 模式的检测处理321
12.4.1将模式应用到流上321
12.4.2处理匹配事件321
12.4.3处理超时事件324
12.4.4处理迟到数据329
12.5 CEP的状态机实现330
12.6 本章总结334