![]()
内容推荐 本书系统讲述Apache Spark大数据计算平台的原理,以及如何将Apache Spark应用于大数据的实时流处理、批处理、图计算等各个场景。通过深入学习原理和对实践示例、案例的综合应用,使读者了解并掌握Apache Spark大数据计算平台的基本原理和技能,接近理论与实践的距离。 全书共分为13章,主要内容包括Spark架构原理与集群搭建、开发和部署Spark应用程序、Spark核心编程、Spark SQL、Spark SQL高级分析、Spark Streaming流处理、Spark结构化流、Spark结构化流高级处理、Spark图处理库Graph Frame、下一代大数据技术(Delta Lake数据湖、leeberg数据湖和Hudi数据湖)、Spark大数据处理综合案例。本书源码全部在Apache Spark 3.1.2上调试成功,所有示例和案例均基于Scala语言。 为降低读者学习大数据技术的门槛,本书除了提供丰富的上机实践操作和范例程序详解外,还为购买和使用本书的读者提供了搭建好的Hadoop、Hive数据仓库和Spark大数据开发及学习环境。读者既可参照本书的讲解自行搭建Hadoop和Spark环境,也可直接使用作者提供的开发和学习环境,快速开始大数据和Spark、数据湖的学习。 本书适合大数据学习爱好者、想要入门Apache Spark的读者作为入门和提高的技术参考书,也适合用作高等院校大数据专业相关的学生和老师的教材或教学参考书。 作者简介 辛立伟,一个在IT领域摸爬滚打二十多年的老程序员、技术培训师、技术作者。横跨Java、数据库、大数据开发与分析、人工智能等多个领域,参与多个IT项目的架构设计与开发。长期坚持撰写技术博客,曾在多个大学讲授Java开发、数据库和大数据技术课程,曾担任中国石油大学(青岛校区)等多所院校的外聘讲师。 目录 第1章 Spark架构原理与集群搭建 1.1 Spark简介 1.2 Spark技术栈 1.2.1 Spark Core 1.2.2 Spark SQL 1.2.3 Spark Streaming和Structured Streaming 1.2.4 Spark MLlib 1.2.5 Spark GraphX 1.2.6 SparkR 1.3 Spark架构原理 1.3.1 Spark集群和资源管理系统 1.3.2 Spark应用程序 1.3.3 SparkDriver和Executor 1.4 Spark程序部署模式 1.5 安装和配置Spark集群 1.5.1 安装Spark 1.5.2 了解Spark目录结构 1.5.3 配置Spark集群 1.5.4 验证Spark安装 1.6 配置Spark历史服务器 1.6.1 历史服务器配置 1.6.2 启动Spark历史服务器 1.7 使用spark-shell进行交互式分析 1.7.1 运行模式--master 1.7.2 启动和退出spark-shell 1.7.3 spark-shell常用命令 1.7.4 SparkContext和SparkSession 1.7.5 SparkWeb UI 1.8 使用spark-submit提交Spark应用程序 1.8.1 spark-submit指令的各种参数说明 1.8.2 提交SparkPi程序,计算圆周率π值 1.8.3 将SparkPi程序提交到YARN集群上执行 第 2章 开发和部署Spark应用程序 2.1 使用IntelliJ IDEA开发SparkSBT应用程序 2.1.1 安装IntelliJ IDEA 2.1.2 配置 IntelliJ IDEA Scala环境 2.1.3 创建 IntelliJ IDEA SBT项目 2.1.4 配置SBT构建文件 2.1.5 准备数据文件 2.1.6 创建Spark应用程序 2.1.7 部署分布式Spark应用程序 2.1.8 远程调试Spark程序 2.2 使用IntelliJ IDEA开发SparkMaven应用程序 2.2.1 创建IntelliJ IDEA Maven项目 2.2.2 验证SDK安装和配置 2.2.3 项目依赖和配置管理 2.2.4 测试Spark程序 2.2.5 项目编译和打包 2.3 使用Java 开发Spark应用程序 2.3.1 创建一个新的IntelliJ项目 2.3.2 验证SDK安装和配置 2.3.3 安装和配置Maven 2.3.4 创建Spark应用程序 2.3.5 部署Spark应用程序 2.3.6 远程调试Spark应用程序 2.4 使用Zeppelin进行交互式分析 2.4.1 下载Zeppelin安装包 2.4.2 安装和配置Zeppelin 2.4.3 配置Spark解释器 2.4.4 创建和执行Notebook程序 第3章 Spark核心编程 3.1 理解数据抽象RDD 3.1.1 RDD结构 3.1.2 RDD容错 3.2 RDD编程模型 3.2.1 单词计数应用程序 3.2.2 理解SparkSession 3.2.3 理解SparkContext 3.3 创建RDD 3.3.1 将现有的集合并行化以创建RDD 3.3.2 从存储系统读取数据集以创建RDD 3.3.3 从已有的RDD转换得到新的RDD 3.3.4 创建RDD时指定分区数量 …… 第4章 Spark SQL 第5章 Spark SQL(高级) 第6章 Spark Streaming流处理 第7章 Spark结构化流 第8章 Spark结构化流(高级) 第9章 Spark图处理库GraphFrame 第10章 Delta Lake数据湖 第11章 Iceberg数据湖 第12章 Hudi数据湖 第13章 Spark大数据处理综合案例 |