Spark SQL入门与实践指南

Spark SQL入门与实践指南 pdf epub mobi txt 电子书 下载 2025

纪涵,靖晓文,赵政达 著
图书标签:
  • Spark SQL
  • 大数据
  • 数据分析
  • 数据处理
  • SQL
  • Scala
  • Python
  • 数据仓库
  • ETL
  • 数据挖掘
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 清华大学出版社
ISBN:9787302496700
版次:1
商品编码:12319813
包装:平装
开本:16开
出版时间:2018-03-01
用纸:胶版纸
页数:220
字数:339000
正文语种:中文

具体描述

产品特色

编辑推荐

适读人群 :Spark初学者、Spark数据分析人员以及Spark程序开发人员

(1)讲解Spark SQL背景知识、编程基础
(2)通过一个工程实例让读者领略Spark SQL强大简便的分析能力
(3)学习构建一个大数据实际应用的方法,加强工程思维
(4)洞悉Spark的调优方式及其思想,让Spark SQL程序高效运行

内容简介

Spark SQL是 Spark大数据框架的一部分,支持使用标准SQL查询和HiveQL来读写数据,可用于结构化数据处理,并可以执行类似SQL的Spark数据查询,有助于开发人员更快地创建和运行Spark程序。
全书分为4篇,共9章,第一篇讲解了Spark SQL 发展历史和开发环境搭建。第二篇讲解了Spark SQL 实例,使得读者掌握Spark SQL的入门操作,了解Spark RDD、DataFrame和DataSet,并熟悉 DataFrame 各种操作。第三篇讲解了基于WiFi探针的商业大数据分析项目,实例中包含数据采集、预处理、存储、利用Spark SQL 挖掘数据,一步一步带领读者学习Spark SQL强大的数据挖掘功能。第四篇讲解了Spark SQL 优化的知识。
本书适合Spark初学者、Spark数据分析人员以及Spark程序开发人员,也适合高校和培训学校相关专业的师生教学参考。

作者简介

纪 涵,数据挖掘、云计算爱好者,曾负责多个中小型网站的开发维护工作,曾参与开发设计多款面向校园服务的App,参与开发设计过多个基于Hadoop、Spark平台的大数据应用,有着丰富的流数据、结构化数据处理经验,现主要研究方向为机器学习、数据挖掘。

目录

第一部分 入门篇
第1章 初识Spark SQL 3
1.1 Spark SQL的前世今生 3
1.2 Spark SQL能做什么 4
第2章 Spark安装、编程环境搭建以及打包提交 6
2.1 Spark的简易安装 6
2.2 准备编写Spark应用程序的IDEA环境 10
2.3 将编写好的Spark应用程序打包成jar提交到Spark上 18
第二部分 基础篇
第3章 Spark上的RDD编程 23
3.1 RDD基础 24
3.1.1 创建RDD 24
3.1.2 RDD转化操作、行动操作 24
3.1.3 惰性求值 25
3.1.4 RDD缓存概述 26
3.1.5 RDD基本编程步骤 26
3.2 RDD简单实例—wordcount 27
3.3 创建RDD 28
3.3.1 程序内部数据作为数据源 28
3.3.2 外部数据源 29
3.4 RDD操作 33
3.4.1 转化操作 34
3.4.2 行动操作 37
3.4.3 惰性求值 38
3.5 向Spark传递函数 39
3.5.1 传入匿名函数 39
3.5.2 传入静态方法和传入方法的引用 40
3.5.3 闭包的理解 41
3.5.4 关于向Spark传递函数与闭包的总结 42
3.6 常见的转化操作和行动操作 42
3.6.1 基本RDD转化操作 43
3.6.2 基本RDD行动操作 48
3.6.3 键值对RDD 52
3.6.4 不同类型RDD之间的转换 56
3.7 深入理解RDD 57
3.8 RDD 缓存、持久化 59
3.8.1 RDD缓存 59
3.8.2 RDD持久化 61
3.8.3 持久化存储等级选取策略 63
3.9 RDD checkpoint容错机制 64
第4章 Spark SQL编程入门 66
4.1 Spark SQL概述 66
4.1.1 Spark SQL是什么 66
4.1.2 Spark SQL通过什么来实现 66
4.1.3 Spark SQL 处理数据的优势 67
4.1.4 Spark SQL数据核心抽象——DataFrame 67
4.2 Spark SQL编程入门示例 69
4.2.1 程序主入口:SparkSession 69
4.2.2 创建 DataFrame 70
4.2.3 DataFrame基本操作 70
4.2.4 执行SQL查询 72
4.2.5 全局临时表 73
4.2.6 Dataset 73
4.2.7 将RDDs转化为DataFrame 75
4.2.8 用户自定义函数 78
第5章 Spark SQL的DataFrame操作大全 82
5.1 由JSON文件生成所需的DataFrame对象 82
5.2 DataFrame上的行动操作 84
5.3 DataFrame上的转化操作 91
5.3.1 where条件相关 92
5.3.2 查询指定列 94
5.3.3 思维开拓:Column的巧妙应用 99
5.3.4 limit操作 102
5.3.5 排序操作:order by和sort 103
5.3.6 group by操作 106
5.3.7 distinct、dropDuplicates去重操作 107
5.3.8 聚合操作 109
5.3.9 union合并操作 110
5.3.10 join操作 111
5.3.11 获取指定字段统计信息 114
5.3.12 获取两个DataFrame中共有的记录 116
5.3.13 获取一个DataFrame中有另一个DataFrame中没有的记录 116
5.3.14 操作字段名 117
5.3.15 处理空值列 118
第6章 Spark SQL支持的多种数据源 121
6.1 概述 121
6.1.1 通用load/save 函数 121
6.1.2 手动指定选项 123
6.1.3 在文件上直接进行SQL查询 123
6.1.4 存储模式 123
6.1.5 持久化到表 124
6.1.6 bucket、排序、分区操作 124
6.2 典型结构化数据源 125
6.2.1 Parquet 文件 125
6.2.2 JSON 数据集 129
6.2.3 Hive表 130
6.2.4 其他数据库中的数据表 133
第三部分 实践篇
第7章 Spark SQL 工程实战之基于WiFi探针的商业大数据分析技术 139
7.1 功能需求 139
7.1.1 数据收集 139
7.1.2 数据清洗 140
7.1.3 客流数据分析 141
7.1.4 数据导出 142
7.2 系统架构 142
7.3 功能设计 143
7.4 数据库结构 144
7.5 本章小结 144

前言/序言

  前 言
  我们处于一个数据爆炸的时代!
  大量涌现的智能手机、平板、可穿戴设备及物联网设备每时每刻都在产生新的数据,然而带来革命性变革的并非海量数据本身,而是我们如何从这些数据中挖掘到有价值的信息,来辅助我们做出更加智能的决策。我们知道,在生产环境下,所谓的大数据往往是由数千万条、上亿条具有多个预定义字段的数据单元组成的数据集,是不是很像传统关系型数据库的二维数据表呢?那么我们是否也能找到一个像SQL查询那样简便的工具来高效地分析处理大数据领域中的海量结构化数据呢?没错,这个工具就是Spark SQL。
  Spark SQL是Spark 用来操作结构化数据的高级模块,在程序中通过引入Spark SQL模块,我们便可以像从前在关系型数据库利用SQL(结构化查询语言)分析关系型数据库表一样简单快捷地在Spark大数据分析平台上对海量结构化数据进行快速分析,而 Spark 平台屏蔽了底层分布式存储、计算、通信的细节以及作业解析、调度的细节,使我们开发者仅需关注如何利用SQL 进行数据分析的程序逻辑就可以方便地操控集群来分析我们的数据。
  本书内容
  本书共分为四篇:入门篇、基础篇、实践篇、调优篇,所有代码均采用简洁而优雅的Scala语言编写,Spark框架也是使用Scala语言编写的。
  第一部分 入门篇(第1、2章)
  第1章简要介绍Spark的诞生、Spark SQL的发展历史以及Spark SQL的用处等内容,使读者快速了解Spark SQL背景知识,为以后的学习奠定基础。
  第2章通过讲解Spark SQL开发环境的搭建、Spark作业的打包提交、常见问题的解答,并结合大量图示,使读者快速掌握开发环境的搭建以及提交应用程序到集群上,为后面章节的学习奠定坚实的基础。
  第二部分 基础篇(第3、4、5、6章)
  第3章是真正开始学习Spark SQL必要的先修课,其中详尽地介绍了Spark框架对数据的核心抽象——RDD(弹性分布式数据集)的方方面面。先介绍与RDD相关的基本概念,例如转化操作、行动操作、惰性求值、缓存,讲解的过程伴随着丰富的示例,旨在提高读者对RDD的理解与加强读者的RDD编程基础。在讲明白RDD中基础内容的同时,又深入地剖析了疑点、难点,例如RDD Lineage(RDD依赖关系图)、向Spark传递函数、对闭包的理解等。在之前对基本类型RDD的学习基础上,又引入了对特殊类RDD——键值对RDD的大致介绍,在键值对RDD介绍中对combineByKey操作的讲解,深入地从代码实现的角度洞悉了Spark分布式计算的实质,旨在帮助对RDD有着浓厚兴趣的读者做进一步的拓展。最后,站在RDD设计者的角度重新审视了RDD缓存、持久化、checkpoint机制,从而诠释了RDD为什么能够很好地适应大数据分析业务的特点,有天然强大的容错性、易恢复性和高效性。
  第4章对Spark高级模块——Spark SQL,也就是本书的主题,进行了简明扼要的概述,并讲述了相应的Spark SQL编程基础。先是通过与前一章所学的Spark对数据的核心抽象——RDD的对比,引出了Spark SQL中核心的数据抽象——DataFrame,讲解了两者的异同,点明了Spark SQL是针对结构化数据处理的高级模块的原因在于其内置丰富结构信息的数据抽象。后一部分通过丰富的示例讲解了如何利用Spark SQL模块来编程的主要步骤,例如,从结构化数据源中创建DataFrames、DataFrames基本操作以及执行SQL查询等。
  第5、6章属于 Spark SQL编程的进阶内容,也是我们将Spark SQL应用于生产、科研计算环境下,真正开始分析多类数据源、实现各种复杂业务需求必须要掌握的知识。在第5章里,我们以包含简单且典型的学生信息表的JSON文件作为数据源,深入对DataFrame丰富强大的API进行研究,以操作讲解加示例的形式包揽了DataFrame中每一个常用的行动、转化操作,进而帮助读者轻松高效地组合使用DataFrame所提供的API来实现业务需求。在第6章里,介绍了Spark SQL 可处理的各种数据源,包括Hive表、JSON和Parquet文件等,从广度上使读者了解Spark SQL在大数据领域对典型结构化数据源的皆可处理性,从而使读者真正在工作中掌握一门结构化数据的分析利器。
  第三部分 实践篇(第7、8章)
  第7章通过讲解大型商业实例项目(基于WiFi探针的商业大数据分析技术)的功能需求、系统架构、功能设计、数据库结构来帮助读者理解如何在实际开发中应用Spark SQL来处理结构化数据,加强读者的工程思维,同时为第8章的学习做好铺垫。
  第8章通过讲解分布式环境搭建以及项目代码的解析来帮助读者进一步理解Spark SQL应用程序的执行过程,在后一部分介绍了Spark SQL程序的远程调试方法和Spark 的Web 界面,帮助读者更加方便地了解程序的运行状态。
  第四部分 调优篇(第9章)
  调优篇由第9章组成,本篇从Spark的执行流程到内存以及任务的划分,再到Spark应用程序的编写技巧,接着到Spark本身的调优,最后引出数据倾斜的解决思路,层层递进,逐步解析Spark的调优思想。最后以对Spark 执行引擎 Tungsten与Spark SQL的解析引擎Catalyst的介绍作为本部分的结尾。笔者将在本篇中带领读者掌握Spark的调优方式以及思想,让Spark程序再快一点。
  本书适合读者
  本书适合于学习数据挖掘、有海量结构化数据分析需求的大数据从业者及爱好者阅读,也可以作为高等院校相关专业的教材。建议在学习本书内容的过程中,理论联系实际,独立进行一些代码的编写,采取开放式的实验方法,即读者自行准备实验数据和实验环境,解决实际问题,最终达到理论联系实际的目的。
  本书在写作过程中得到了家人以及本书编辑的大力支持,在此对他们一并表示感谢。
  本书由纪涵(主要负责基础篇的编写)主笔,其他参与著作的还有靖晓文(主要负责实践篇的编写)、赵政达(主要负责入门篇、调优篇的编写),排名不分先后。
  纪 涵
  2018年2月

《数据洞察的利器:Spark SQL进阶之路》 在这信息爆炸的时代,数据已成为驱动商业决策、科技创新以及社会进步的核心要素。从海量用户行为日志到复杂的科学实验数据,再到物联网设备产生的实时流,我们正以前所未有的速度积累和产生数据。如何从这些庞杂的数据中挖掘出有价值的信息,实现快速、高效的数据分析,成为摆在我们面前的重大课题。而Spark SQL,正是这个时代赋予我们的强大武器。 本书并非一本简单的技术手册,它是一次深入探索Spark SQL潜力的旅程。我们将跳出“入门”的浅尝辄止,直抵“实践”的精髓,聚焦于如何将Spark SQL的力量淋漓尽致地发挥出来,以应对真实世界中复杂多变的数据分析挑战。我们不满足于知其然,更追求知其所以然,深入理解Spark SQL背后的原理,才能在面对疑难杂症时游刃有余,在优化性能时事半功倍。 面向对象:谁能从本书中获益? 本书的目标读者群体广泛,主要涵盖以下几类: 有一定Spark基础的数据工程师和开发人员: 如果您已经熟悉Spark Core API,并且希望将工作流程转向更声明式、更高效的SQL查询,本书将是您无缝过渡的理想选择。我们将帮助您理解Spark SQL与RDD之间的关系,掌握DataFrame和Dataset的优势,以及如何利用SQL语法和API进行复杂的数据转换和分析。 有SQL背景但初涉大数据领域的数据分析师和科学家: 如果您擅长使用传统SQL进行数据分析,但对大数据处理的复杂性感到困惑,本书将为您搭建一座桥梁。您将学习如何用熟悉的SQL语言操作TB甚至PB级别的数据,理解Spark SQL在分布式环境下的执行机制,并掌握利用SQL进行大规模数据探索和建模的技巧。 对大数据处理和分布式计算感兴趣的技术爱好者: 无论您的背景如何,只要您对如何处理海量数据、构建高性能数据管道、以及利用现代化技术进行数据驱动决策感兴趣,本书都将为您提供宝贵的知识和实践指导。 核心内容:深度解析与实战演练 本书的结构围绕着Spark SQL的核心概念、高级特性和实际应用展开,力求为读者提供一个全面而深入的学习体验。 第一部分:Spark SQL基石重塑 在深入探讨高级主题之前,我们首先将重新审视Spark SQL的基础,但视角会更加深入和全面。 DataFrame/Dataset的本质与优势: 我们将详细剖析DataFrame和Dataset的内部结构,理解它们如何通过Schema来优化数据存储和查询计划。我们将深入讲解Catalyst Optimizer的工作原理,揭示Spark SQL如何将SQL查询转化为高效的执行计划,以及其背后的逻辑和优化策略。 Schema的演进与灵活运用: 掌握Schema的定义、推断和演变对于构建健壮的数据应用至关重要。我们将演示如何处理半结构化数据,如JSON、Parquet等,以及如何动态地适应数据结构的变更。 SQL语法与API的融合: 除了标准的SQL查询,我们还将重点介绍Spark SQL提供的丰富API,包括DSL(Domain Specific Language),让您能够以编程的方式构建复杂的数据转换。理解SQL语法和API之间的互操作性,将极大地提升您的开发效率。 第二部分:性能优化与高级特性 理解了基础,我们便能着手于让Spark SQL运行得更快、更稳健。 查询优化深度剖析: Catalyst Optimizer是Spark SQL的大脑,我们将揭示其内部的工作流程,包括解析、逻辑优化和物理优化。您将学习如何阅读和理解Spark UI中的查询计划,识别性能瓶颈,并掌握如谓词下推(Predicate Pushdown)、列裁剪(Column Pruning)等核心优化技术。 数据存储格式与分区策略: 不同的数据存储格式(如Parquet、ORC)在性能上有着显著差异。本书将深入比较它们的优劣,并指导您如何选择最适合您业务场景的格式。同时,我们将详细讲解数据分区(Partitioning)和分桶(Bucketing)的重要性,以及如何通过合理的分区策略大幅提升查询效率。 缓存与持久化策略: 合理利用Spark的缓存机制(`cache()`和`persist()`)可以显著减少重复计算。我们将探讨不同缓存级别的影响,并指导您如何在数据访问模式下做出最佳选择。 窗口函数与复杂分析: 窗口函数是进行高级数据分析的利器,用于处理 sıralama、聚合等场景。本书将提供丰富的窗口函数应用实例,帮助您解决复杂的分析问题,例如计算移动平均、排名、滞后值等。 用户自定义函数(UDF)的性能考量: 虽然UDF提供了灵活性,但滥用或不当使用可能导致性能下降。我们将深入分析UDF在Spark SQL中的执行方式,讨论其性能开销,并指导您如何编写高效的UDF,甚至考虑使用Spark SQL内置函数或Pandas UDF等替代方案。 第三部分:Spark SQL在真实场景中的应用 理论的最终目的是指导实践。本部分将聚焦于Spark SQL在不同真实场景下的应用,通过具体的案例,让读者掌握解决实际问题的能力。 ETL(Extract, Transform, Load)流程构建: Spark SQL是构建高效ETL管道的理想工具。我们将展示如何利用Spark SQL从各种数据源(数据库、文件系统、消息队列)抽取数据,进行复杂的转换(清洗、聚合、关联),并将结果加载到目标系统中。 实时数据流处理: 结合Spark Streaming或Structured Streaming,Spark SQL能够无缝处理实时数据流。我们将演示如何对流式数据进行SQL查询,实现近乎实时的分析和响应。 交互式数据探索与可视化: Spark SQL强大的即席查询能力,使其成为交互式数据探索的绝佳选择。我们将探讨如何将其与各类可视化工具(如Tableau, Power BI, Zeppelin, Jupyter Notebook)集成,让数据分析师能够快速发现数据中的洞察。 机器学习特征工程: 在构建机器学习模型之前,特征工程是至关重要的一步。Spark SQL提供了丰富的函数和API,可以高效地完成特征的提取、转换和创建,本书将提供相关实践案例。 与其他大数据组件的协同: Spark SQL并非孤立存在,它能与Hadoop生态系统中的其他组件(如HDFS, Hive, Kafka, Cassandra)良好协作。我们将探讨如何将Spark SQL集成到现有的Hadoop架构中,发挥其最大价值。 本书特色:理论与实践的完美结合 深入浅出的讲解: 我们力求用清晰易懂的语言解释复杂的技术概念,避免冗余的理论堆砌,聚焦于核心要点。 丰富的实战案例: 本书包含大量贴近实际业务场景的代码示例和案例分析,让读者在学习过程中就能动手实践,巩固知识。 性能优化技巧: 我们将贯穿全书的性能优化策略,从查询计划到存储格式,全方位指导读者构建高性能的数据处理应用。 前沿技术的探讨: 除了核心的Spark SQL,我们还将适时引入与Spark SQL相关的最新技术和发展趋势,帮助读者保持技术领先。 解决实际问题的能力: 本书的目标是赋予读者解决真实世界数据挑战的能力,而不仅仅是学习API。 结语 在数据驱动的未来,掌握Spark SQL的强大能力,意味着您掌握了从海量数据中提炼价值、驱动创新的核心竞争力。本书将是您在这条道路上不可或缺的伙伴,陪伴您从理解Spark SQL的强大功能,到精通其性能优化技巧,最终能够自信地将其应用于各种复杂的数据分析场景。让我们一起踏上这段进阶之旅,解锁数据洞察的无限可能。

用户评价

评分

我必须得说,这本书的排版和案例设计简直是教科书级别的典范。市面上很多技术书籍往往为了追求知识的全面性而牺牲了阅读的连贯性,要么是知识点罗列,要么就是案例过于陈旧。但《指南》完全没有这个问题。它的逻辑主线非常清晰,从基础的数据源接入(Parquet, ORC, JSON的优劣对比)开始,逐步过渡到复杂的数据转换和聚合。最让我眼前一亮的是,作者并没有停留在理论上空谈,而是提供了大量可以直接在生产环境中借鉴的“最佳实践模板”。比如,在处理时间序列数据时,书中提供的那套基于日期分区和Bucket优化的方法,我按照操作下来,查询速度直接提升了四倍以上,这对我接下来的季度报告生成任务简直是雪中送炭。此外,书中对Spark SQL中涉及到的内存管理和垃圾回收的侧重点描述,也让我明白了为什么有些查询会无缘无故地OOM(内存溢出),并学会了如何通过调整配置参数来规避风险。这本书的实用性,绝对是五星好评,强烈推荐给那些希望快速将理论知识转化为生产力的人。

评分

说实话,刚开始我对技术书籍的“实践指南”这种命名持保留态度,总觉得很多都是挂羊头卖狗肉。但这本书彻底改变了我的看法。它不仅仅是教你写SQL语句,它是在教你如何“构建”一个健壮的数据处理流程。我非常欣赏作者在书中反复强调的“可观察性”和“调试”的重要性。书中有一章专门讲如何利用Spark UI和日志来诊断慢查询,这对于我来说简直是打开了新世界的大门。过去我只能靠猜和试错来优化性能,现在我能清晰地看到DAG执行图中的Shuffle读写量、Task的并行度和溢写大小,从而对症下药。例如,书中对于数据倾斜后的聚合操作,建议使用“二次聚合+随机盐值”的技巧,我实际操作后发现,这比单纯地使用`repartitionByHash`效果要好得多,因为它更具针对性。这本书的深度已经触及到了系统调优的层面,对于希望从“代码使用者”晋升为“系统设计者”的技术人员来说,它提供了极佳的参考框架和工具集。

评分

这本书简直是为我这种想在数据湖上玩转SQL的工程师量身定做的!刚翻开封面,我就被它扎实的理论基础和紧贴实际的案例深深吸引住了。作者似乎完全理解我们日常工作中会遇到的那些坑,比如如何处理海量非结构化数据,如何优化复杂的Join操作,以及在分布式环境下保证数据一致性的那些灰色地带。书中对Spark SQL的底层执行原理,特别是Catalyst优化器和Tungsten执行引擎的讲解,深入浅出,没有那种晦涩难懂的数学公式堆砌,而是通过清晰的流程图和代码片段,让你恍然大悟:原来我们写的SQL语句是这么被执行的!我尤其欣赏它在高级功能上的覆盖,比如窗口函数的高级用法、UDTF的编写与性能考量,甚至是UDAF的定制化实现,都给出了详尽的步骤和注意事项。读完前几章,我立刻感觉自己对Spark集群资源的利用效率都有了质的提升,不再是只会写SELECT FROM table的“SQL小白”了。这本书的价值远超一本普通的工具书,它更像是一位资深架构师在旁边手把手地带你进入这个高性能计算的世界。

评分

作为一个有着多年传统数据库经验的分析师,转向Spark SQL的生态系统时,最大的障碍就是那种面向批处理和分布式计算的思维转换。这本书的第三部分,专门探讨了SQL在ELT和数据治理场景下的应用,完全击中了我的痛点。作者没有回避Spark SQL在处理流式数据时的局限性,反而详细介绍了如何结合Structured Streaming来构建一个近似实时的分析管道,这比我过去摸索了几个月的时间要高效得多。书中对数据倾斜问题的分析尤其深刻,它不仅告诉你“什么导致了倾斜”,更重要的是,它提供了至少三种不同粒度的解决方案——从SQL级别的Hint用到数据预处理的广播变量,每一种方案的适用场景和性能权衡都分析得淋漓尽致。我甚至在书中找到了一些关于如何利用Spark SQL进行数据脱敏和安全审计的章节,这在当前数据合规要求日益严格的环境下,显得尤为重要。这本书的广度与深度兼备,真正做到了“入门”之后,还能让你“精通”的路线图。

评分

我接触过不少大数据相关的书籍,很多都是侧重于API调用或者框架的最新特性介绍,读完后感觉自己像个“API调用机器人”。但《Spark SQL入门与实践指南》的独特之处在于,它始终将“业务目标”放在首位,然后教你如何用SQL这一通用语言去实现它。它就像一位经验丰富的数据科学家在和你分享他的“工具箱”。书中关于窗口函数在复杂报表(如环比、同比、留存分析)中的应用实例,简直是艺术品级别的讲解。作者并没有仅仅给出代码,而是先剖析了业务逻辑,再用最简洁的Spark SQL语句实现,最后评估了其在分布式环境下的性能表现。这种“业务-逻辑-实现-评估”的完整闭环,极大地提升了我解决实际问题的信心。我特别喜欢作者在结尾处提到的关于Spark SQL与Delta Lake/Iceberg等现代数据湖表格式集成的章节,这让这本书的内容保持了与行业前沿的同步,确保读者学到的知识不会过时,绝对是值得反复阅读的案头必备参考书。

评分

适合入门学习的一本书。

评分

适合入门学习的一本书。

评分

适合入门学习的一本书。

评分

适合入门学习的一本书。

评分

花枝招展是准备准备准备准备准备准备准备

评分

适合入门学习的一本书。

评分

适合入门学习的一本书。

评分

入门很好的一本书

评分

从第6章开始,写的就太敷衍太不走心了。很多东西一带而过。第七章需求分析还可以,第八章真正实战,那代码个人认为真是实习生水平,大数据场景下,到处用collect,到处是循环里套循环中间加sql。代码几乎很少有注释,声明的变量没有一个有注释的。

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有