书籍详情

企业大数据处理实战派:基于阿里云大数据平台

企业大数据处理实战派:基于阿里云大数据平台

作者:赵渝强

出版社:电子工业出版社

出版时间:2023-09-01

ISBN:9787121460760

定价:¥128.00

购买这本书可以去
内容简介
  本书基于作者多年的教学与实践经验编写,重点介绍阿里云大数据体系的核心原理与架构,内容涉及开发、运维、管理与架构。全书分为4 篇,共13 章:第1 篇(第1~2 章)介绍大数据技术基础;第2 篇(第3~8 章)介绍阿里云大数据的离线计算服务;第3 篇(第9~10 章)介绍阿里云大数据的实时计算服务,包括消息队列Kafka 版和实时计算Flink 版;第4 篇(第11~13 章)介绍阿里云大数据增值服务——数加平台,包括阿里云大数据集成开发平台DataWorks、数据可视化分析平台Quick BI 和机器学习平台PAI。本书适合对大数据技术感兴趣的平台架构师、运维管理人员和项目开发人员阅读。无论读者是否接触过大数据技术,只要具备基础的Linux 知识和Java 基础,就能够通过本书快速掌握阿里云大数据技术并增加实战经验。根据本书中的操作步骤,读者可以在实际的项目生产环境中快速应用并实施阿里云大数据平台技术。
作者简介
  赵渝强,曾任京东大学大数据学院院长、Oracle(中国)高级技术顾问,现专职从事培训工作。出版了《大数据原理与实战》《Kafka进阶》等书。
目录
★★第1 篇 大数据技术基础

★第1 章 大数据核心理论基础与架构 2
1.1 什么是大数据 2
1.1.1 大数据的基本概念和特性 2
1.1.2 大数据平台的核心问题——存储与计算 4
1.2 大数据的理论基础 6
1.2.1 大数据的分布式存储 6
1.2.2 大数据的分布式计算 9
1.3 大数据技术与数据仓库 . 12
1.3.1 什么是数据仓库/12
1.3.2 基于大数据技术实现的数据仓库 13
1.4 基于开源大数据组件的大数据平台架构 15
1.4.1 数据源层 16
1.4.2 数据采集层 16
1.4.3 大数据平台层 16
1.4.4 数据仓库层 17
1.4.5 应用层 17
1.5 自建大数据平台与租赁大数据平台 17
1.5.1 为什么推荐使用租赁的大数据平台 17
1.5.2 为什么选择阿里云大数据平台 18
1.6 阿里云大数据生态圈体系/18
1.6.1 阿里云大数据基础组件 . 19
1.6.2 基于阿里云大数据基础组件的数加平台 24

★★第2 章 阿里云大数据技术基础——开源大数据技术生态圈 27
2.1 开源大数据技术生态圈简介 27
2.1.1 面向离线数据的存储计算引擎Hadoop 生态圈体系及其组件 27
2.1.2 面向批处理的大数据计算引擎Spark 生态圈体系及其组件 29
2.1.3 面向流处理的大数据计算引擎Flink 生态圈体系及其组件 . 30
2.2 面向离线数据的存储计算引擎Hadoop 快速上手 32
2.2.1 【实战】部署Hadoop 集群 33
2.2.2 【实战】使用Hadoop 文件系统HDFS 存储数据 38
2.2.3 【实战】使用Hadoop 离线计算引擎MapReduce 处理数据 46
2.3 面向批处理的大数据计算引擎Spark 快速上手 49
2.3.1 【实战】部署Spark 集群 49
2.3.2 【实战】执行Spark 离线计算任务 51
2.3.3 【实战】执行Spark 实时计算任务 57
2.3.4 【实战】使用Spark SQL 处理结构化数据 . 60
2.4 面向流处理的大数据计算引擎Flink 快速上手 . 61
2.4.1 【实战】部署Flink 集群/62
2.4.2 【实战】执行Flink 离线计算任务 63
2.4.3 【实战】执行Flink 实时计算任务 64
2.4.4 【实战】使用Flink SQL 处理结构化数据 66
2.5 大数据体系的单点故障问题 66
★★第2 篇 阿里云大数据的离线计算服务

★第3 章 面向离线数据存储与计算的MaxCompute 基础 . 70
3.1 MaxCompute 简介 70
3.1.1 什么是MaxCompute 70
3.1.2 MaxCompute 的特点 71
3.2 初识MaxCompute 71
3.2.1 MaxCompute 的架构 71
3.2.2 MaxCompute 的核心概念 74
3.2.3 MaxCompute 的数据类型 76
3.3 使用MaxCompute 的准备工作 78
3.3.1 【实战】创建阿里云账号 79
3.3.2 【实战】开通MaxCompute 服务 . 82
3.3.3 【实战】创建项目 83
3.3.4 配置MaxCompute 客户端/85
3.4 MaxCompute 快速上手 93
3.4.1 【实战】使用命令行客户端 93
3.4.2 【实战】执行MapReduce 任务 99
3.4.3 【实战】执行Spark 任务 101
3.5 基于Tunnel 的数据上传与下载/102
3.5.1 Tunnel 简介 102
3.5.2 【实战】使用Tunnel 的命令行工具 103
3.5.3 【实战】使用Tunnel 的SDK/107

★第4 章 处理结构化数据——基于MaxCompute SQL 112
4.1 MaxCompute SQL 简介 112
4.1.1 MaxCompute SQL 与其他SQL 的差异/112
4.1.2 MaxCompute SQL 的数据类型 114
4.1.3 MaxCompute SQL 的数据类型转换 115
4.2 使用MaxCompute SQL 119
4.2.1 【实战】使用DDL 语句 119
4.2.2 【实战】使用DML 语句 135
4.2.3 【实战】使用DQL 语句 140
4.2.4 【实战】使用MaxCompute SQL 的增强语法CTE 143
4.3 使用MaxCompute SQL 的内建函数 145
4.3.1 【实战】日期函数 . 145
4.3.2 【实战】窗口函数 . 148
4.3.3 【实战】聚合函数 . 152
4.3.4 【实战】条件判断函数/152
4.3.5 数学函数和字符串函数 154
4.4 在MaxCompute 中自定义SQL 155
4.4.1 【实战】UDF . 155
4.4.2 【实战】UDT . 157
4.4.3 UDJ . 158

★第5 章 处理离线数据——基于MaxCompute MapReduce/159
5.1 MaxCompute MapReduce 简介 159
5.1.1 MaxCompute MapReduce 的处理流程/159
5.1.2 MaxCompute MapReduce 的使用限制/160
5.2 开发WordCount 单词计数程序/161
5.2.1 WordCount 数据处理的流程/162
5.2.2 MaxCompute MapReduce 的编程接口/163
5.2.3 【实战】开发WordCount 程序 166
5.3 MaxCompute MapReduce 的高级特性 169
5.3.1 【实战】实现数据排序/170
5.3.2 【实战】实现数据二次排序/173
5.3.3 【实战】使用过滤模式MapOnly . 177
5.3.4 【实战】使用Join 实现多表连接 . 179
5.3.5 【实战】使用计数器Counter/183
5.3.6 【实战】使用Unique 实现数据去重 187
5.3.7 【实战】使用项目空间资源/193

★第6 章 处理离线数据——基于MaxCompute Spark/196
6.1 MaxCompute Spark 基础 . 196
6.1.1 MaxCompute Spark 的系统结构 . 196
6.1.2 MaxCompute Spark 的使用限制 . 197
6.1.3 使用spark-shell 198
6.2 MaxCompute Spark 的核心数据模型RDD 199
6.2.1 什么是RDD 200
6.2.2 熟悉RDD 的算子 202
6.2.3 【实战】RDD 的缓存机制 209
6.2.4 【实战】RDD 的检查点机制 211
6.2.5 RDD 的依赖关系和任务执行的阶段 212
6.3 在MaxCompute Spark 中使用SQL 处理数据 214
6.3.1 Spark SQL 的特点/214
6.3.2 Spark SQL 的数据模型/215
6.3.3 【实战】创建DataFrame 215
6.3.4 【实战】使用DataFrame 处理数据 218
6.3.5 【实战】创建视图 . 220
6.4 【实战】MaxCompute Spark 开发案例 . 222
6.4.1 开发Java 版本的单词计数程序WordCount 222
6.4.2 开发Scala 版本的单词计数程序WordCount/224
6.5 诊断MaxCompute Spark 作业 225
6.5.1 使用Logview 工具诊断作业 226
6.5.2 使用Spark Web UI 诊断作业 227

★第7 章 处理图数据——基于MaxCompute Graph 229
7.1 MaxCompute Graph 基础/229
7.1.1 MaxCompute Graph 的基本概念 230
7.1.2 MaxCompute Graph 的数据结构 . 230
7.1.3 MaxCompute Graph 的程序逻辑 . 231
7.1.4 MaxCompute Graph 的Aggregator 机制/233
7.1.5 MaxCompute Graph 的使用限制 . 236
7.2 使用MaxCompute Graph 计算单源最短距离 . 236
7.2.1 单源最短距离算法简介 236
7.2.2 【实战】开发并运行单源最短距离算法程序 239

★第8 章 MaxCompute 的权限与安全 245
8.1 MaxCompute 的权限与安全简介 245
8.2 管理MaxCompute 的用户 246
8.3 管理MaxCompute 的权限 247
8.3.1 授权的三要素 248
8.3.2 项目空间内的权限 249
8.3.3 【实战】使用ACL 授权 250
8.3.4 【实战】使用Policy 授权 252
8.3.5 ACL 授权与Policy 授权的区别 256
8.4 管理MaxCompute 的角色/257
8.4.1 角色的作用 . 257
8.4.2 内置角色和自定义角色 258
8.4.3 【实战】使用MaxCompute 的角色 259
8.5 LabelSecurity . 260
8.5.1 LabelSecurity 简介 260
8.5.2 【实战】使用LabelSecurity 260
8.5.3 【实战】LabelSecurity 的应用场景示例 264
8.6 使用Package 实现跨项目空间的资源分享 265
8.6.1 什么是跨项目空间的资源分享 265
8.6.2 Package 的创建与使用/266
8.6.3 【实战】Package 的应用场景示例 . 268
8.7 项目空间的数据保护 270
8.7.1 MaxCompute 的数据保护机制 271
8.7.2 数据保护机制下数据的流动 271

★★第3 篇 阿里云大数据的实时计算服务
★第9 章 消息队列Kafka 版 274
9.1 消息队列基础 274
9.1.1 消息队列概述/274
9.1.2 消息队列的分类/275
9.2 消息队列Kafka 版的体系架构 278
9.2.1 消息服务器Broker . 279
9.2.2 主题、分区与副本 279
9.2.3 消息的生产者 . 281
9.2.4 消息的消费者 . 283
9.3 快速上手消息队列Kafka 版 285
9.3.1 快速入门操作流程 285
9.3.2 【实战】获取访问授权 286
9.3.3 【实战】购买和部署 287
9.3.4 【实战】创建资源 . 292
9.3.5 【实战】使用管理控制台收发消息 294
9.3.6 【实战】实例运行健康自检指南 296
9.4 消息队列Kafka 版应用开发 298
9.4.1 【实战】开发基本的消息生产者与消费者 298
9.4.2 【实战】发送与接收自定义消息 304

★第10 章 实时计算Flink版 313
10.1 实时计算Flink 版基础 313
10.1.1 什么是实时计算Flink 版 313
10.1.2 实时计算Flink 版的应用场景 . 314
10.1.3 【实战】快速上手实时计算Flink 版 317
10.2 批处理开发——基于实时计算引擎Flink Dataset . 325
10.2.1 【实战】使用map、flatMap 与mapPartition 算子 326
10.2.2 【实战】使用filter 与distinct 算子 330
猜您喜欢

读书导航