万本电子书0元读

万本电子书0元读

顶部广告

Flink原理与实践电子书

本书一方面对Flink的技术架构做了深的介绍,另一方面涵盖了Flink大多数API,本书每章都提供了一些实践案例和习题训练,帮助读者了解、上手和熟悉Flink技术。与其他中文Flink图书相比,本书从初学者角度出发,结合相关案例,深浅出,有助于读者学懂学会Flink。

售       价:¥

纸质售价:¥51.90购买纸书

125人正在读 | 0人评论 6.2

作       者:鲁蔚征 编著

出  版  社:人民邮电出版社有限公司

出版时间:2021-02-01

字       数:31.6万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书围绕大数据流处理领域,介绍Flink DataStream API、时间和窗口、状态和检查、Table API和SQL等知识。本书以实践为导向,使用大量真实业务场景案例来演示如何基于Flink行流处理。 本书主要面向对大数据领域感兴趣的本科生、研究生,想转行到大数据发行业的在职人员,或有一定大数据发经验的相关从业人员。读者*好有一定的Java或Scala编程基础,掌握计算机领域的常见技术概念。<br/>【推荐语】<br/>本书一方面对Flink的技术架构做了深的介绍,另一方面涵盖了Flink大多数API,本书每章都提供了一些实践案例和习题训练,帮助读者了解、上手和熟悉Flink技术。与其他中文Flink图书相比,本书从初学者角度出发,结合相关案例,深浅出,有助于读者学懂学会Flink。<br/>【作者】<br/>鲁蔚征 前小米工程师,现中国人民大学教师,一直从事大数据相关的发和研究工作,关注大数据行业的发展,先后触了Hadoop、Hive、Kafka、Spark、TensorFlow等大数据中间件,在大数据的流处理和批处理方向上有一定的实际工作经验。主要研究项目及领域为推荐系统、大数据。今日头条科技领域优质创作者。<br/>
目录展开

扉页

目录

内容提要

前言

第1章 大数据技术概述

1.1 什么是大数据

1.1.1 大数据的5个“V”

1.1.2 大数据分而治之

1.2 从批处理到流处理

1.2.1 数据与数据流

1.2.2 批处理与流处理

1.2.3 为什么需要一个优秀的流处理框架

1.3 代表性大数据技术

1.3.1 Hadoop

1.3.2 Spark

1.3.3 Apache Kafka

1.3.4 Flink

1.4 从Lambda到Kappa:大数据处理平台的演进

1.4.1 Lambda架构

1.4.2 Kappa架构

1.5 流处理基础概念

1.5.1 延迟和吞吐

1.5.2 窗口与时间

1.5.3 状态与检查点

1.5.4 数据一致性保障

1.6 编程语言的选择

1.6.1 Java和Scala

1.6.2 Python

1.6.3 SQL

1.7 案例实战使用Kafka构建文本数据流

1.7.1 Kafka和消息队列相关背景知识

1.7.2 使用Kafka构建一个文本数据流

本章小结

第2章 大数据必备编程知识

2.1 继承和多态

2.1.1 继承、类和接口

2.1.2 重写与重载

2.1.3 继承和多态小结

2.2 泛型

2.2.1 Java中的泛型

2.2.2 Scala中的泛型

2.2.3 泛型小结

2.3 函数式编程

2.3.1 函数式编程思想简介

2.3.2 Lambda表达式的内部结构

2.3.3 函数式接口

2.3.4 Java Stream API

2.3.5 函数式编程小结

2.4 案例实战Flink开发环境搭建

2.4.1 准备所需软件

2.4.2 下载并安装Flink

2.4.3 创建Flink工程

2.4.4 调试和运行Flink程序

2.4.5 运行程序

本章小结

第3章 Flink的设计与运行原理

3.1 Flink数据流图简介

3.1.1 Flink程序和数据流图

3.1.2 从逻辑视图转化为物理执行图

3.1.3 数据交换策略

3.2 Flink分布式架构与核心组件

3.2.1 Flink作业提交过程

3.2.2 Flink核心组件

3.2.3 Flink组件栈

3.3 任务执行与资源划分

3.3.1 再谈逻辑视图到物理执行图

3.3.2 任务、算子子任务与算子链

3.3.3 Slot与计算资源

3.4 实验WordCount程序迭代和完善

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第4章 DataStream API的介绍和使用

4.1 Flink程序的骨架结构

4.1.1 设置执行环境

4.1.2 读取数据源

4.1.3 进行转换操作

4.1.4 结果输出

4.1.5 执行

4.2 常见Transformation的使用方法

4.2.1 单数据流基本转换

4.2.2 基于Key的分组转换

4.2.3 多数据流转换

4.2.4 并行度与数据重分布

4.3 数据类型和序列化

4.3.1 Flink支持的数据类型

4.3.2 TypeInformation

4.3.3 注册类

4.3.4 Avro、Kryo、Thrift和Protobuf

4.3.5 数据类型的选择

4.4 用户自定义函数

4.4.1 接口

4.4.2 Lambda表达式

4.4.3 Rich函数类

4.5 实验股票价格数据流处理

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第5章 时间和窗口

5.1 Flink的时间语义

5.1.1 Flink的3种时间语义

5.1.2 设置时间语义

5.1.3 Event Time和Watermark

5.1.4 分布式环境下Watermark的传播

5.1.5 设置时间戳及生成Watermark

5.1.6 平衡延迟和准确性

5.2 ProcessFunction系列函数

5.2.1 Timer的使用方法

5.2.2 侧输出

5.2.3 在两个数据流上使用ProcessFunction

5.3 窗口算子的使用

5.3.1 窗口程序的骨架结构

5.3.2 内置的3种窗口划分方法

5.3.3 窗口处理函数

5.3.4 拓展和自定义窗口

5.4 双流连接

5.4.1 Window Join

5.4.2 Interval Join

5.5 处理迟到数据

5.5.1 将迟到数据发送到另外一个数据流

5.5.2 更新计算结果

5.6 实验股票价格数据进阶分析

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第6章 状态和检查点

6.1 实现有状态的计算

6.1.1 为什么要管理状态

6.1.2 Flink中几种常用的状态

6.1.3 横向扩展问题

6.1.4 Keyed State的使用方法

6.1.5 Operator List State的使用方法

6.1.6 BroadcastState的使用方法

6.2 Checkpoint机制的原理及配置方法

6.2.1 Flink分布式快照流程

6.2.2 分布式快照性能优化方案

6.2.3 State Backend

6.2.4 Checkpoint相关配置

6.2.5 重启恢复流程

6.3 Savepoint机制的原理及使用方法

6.3.1 Savepoint机制与Checkpoint机制的区别

6.3.2 Savepoint的使用方法

6.3.3 读/写Savepoint中的数据

6.3.4 Queryable State和State Processor API

6.4 实验电商平台用户行为分析

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第7章 Flink连接器

7.1 Flink端到端的Exactly-Once保障

7.1.1 故障恢复与一致性保障

7.1.2 幂等写

7.1.3 事务写

7.2 自定义Source和Sink

7.2.1 Flink 1.11之前的Source

7.2.2 Flink 1.11之后的Source

7.2.3 自定义Sink

7.3 Flink中常用的Connector

7.3.1 内置I/O接口

7.3.2 Flink Kafka Connector

7.4 实验读取并输出股票价格数据流

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第8章 Table API & SQL的介绍和使用

8.1 Table API & SQL综述

8.1.1 Table API & SQL程序的骨架结构

8.1.2 创建TableEnvironment

8.1.3 获取表

8.1.4 在表上执行语句

8.1.5 将表结果输出

8.1.6 执行作业

8.1.7 获取表的具体方式

8.2 动态表和持续查询

8.2.1 动态表和持续查询

8.2.2 流处理的限制

8.2.3 状态过期时间

8.3 时间和窗口

8.3.1 时间属性

8.3.2 窗口聚合

8.4 Join

8.4.1 时间窗口Join

8.4.2 临时表Join

8.4.3 传统意义上的Join

8.5 SQL DDL

8.5.1 注册和获取表

8.5.2 USE和SHOW语句

8.5.3 CREATE、DROP、ALTER语句

8.5.4 INSERT语句

8.6 系统内置函数

8.6.1 标量函数

8.6.2 聚合函数

8.6.3 时间单位

8.7 用户自定义函数

8.7.1 注册函数

8.7.2 标量函数

8.7.3 表函数

8.7.4 聚合函数

8.8 实验使用Flink SQL处理IoT数据

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

第9章 Flink的部署和配置

9.1 Flink集群部署模式

9.1.1 Standalone集群

9.1.2 Hadoop YARN集群

9.1.3 Kubernetes集群

9.2 配置文件

9.2.1 Java和类加载

9.2.2 并行度与槽位划分

9.2.3 内存

9.2.4 磁盘

9.3 算子链与槽位共享

9.3.1 设置算子链

9.3.2 设置槽位共享

9.4 命令行工具

9.4.1 提交作业

9.4.2 管理作业

9.5 与Hadoop集成

9.5.1 添加Hadoop Classpath

9.5.2 将Hadoop依赖包添加到lib目录中

9.5.3 本地调试

9.6 实验作业编码、打包与提交

一、实验目的

二、实验内容

三、实验要求

四、实验报告

本章小结

参考文献

累计评论(0条) 1个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部