使用 Spark SQL 和 PySpark 3 掌握 Apache Spark
使用 Spark SQL 掌握 Apache Spark 以及使用 Python3 掌握 PySpark 并获得互补的实验室访问权限
讲师:Durga Viswanatha Raju Gadiraju
口袋资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将学到什么
- 在本地或 AWS Cloud9 上使用 Docker 设置单节点 Hadoop 和 Spark
- 查看 ITVersity 实验室(ITVersity 实验室客户专享)
- 与验证 HDFS 中的文件和文件夹相关的所有 HDFS 命令。
- 与学习 Spark 相关的 Python 快速回顾
- 能够使用 Spark SQL 使用 SQL 样式语法解决问题。
- Pyspark Dataframe API 使用 Dataframe 风格的 API 来解决问题。
- Spark Metastore 将数据帧转换为临时视图的相关性,以便可以使用 Spark SQL 处理数据帧中的数据。
- Apache Spark 应用程序开发生命周期
- Apache Spark 应用程序执行生命周期和 Spark UI
- 设置 SSH 代理来访问 Spark 应用程序日志
- Spark应用部署方式(集群和客户端)
- 运行 Spark 应用程序时传递应用程序属性文件和外部依赖项
要求
- 使用任何编程语言的基本编程技能
- 自助实验室(提供说明)或 ITversity 实验室,需要额外付费才能获得适当的环境。
- 所需的最小内存取决于您使用 64 位操作系统的环境
- 4 GB RAM 可访问适当的集群,或 16 GB RAM 可使用 Docker 设置环境
描述
作为本课程的一部分,您将学习使用 Spark SQL 和 Spark Data Frame API(使用 Python 作为编程语言)构建数据工程管道的所有关键技能。本课程曾经是 CCA 175 Spark 和 Hadoop 开发人员课程,用于准备认证考试。截至 2021 年 10 月 31 日,考试已结束,我们已将其重命名为 Apache Spark 2 和 Apache Spark 3 using Python 3,因为它涵盖了认证范围之外的行业相关主题。
关于数据工程
数据工程只不过是根据我们下游的需求来处理数据。作为数据工程的一部分,我们需要构建不同的管道,例如批处理管道、流处理管道等。与数据处理相关的所有角色都合并在数据工程下。传统上,它们被称为 ETL 开发、数据仓库开发等。Apache Spark已发展成为处理大规模数据工程的领先技术。
我为任何想要使用 Pyspark (Python + Spark)过渡到数据工程师角色的人准备了本课程。我本人是一位经过验证的数据工程解决方案架构师,在使用Apache Spark设计解决方案方面拥有丰富的经验。
让我们详细了解您将在本课程中学习的内容。请记住,本课程包含大量实践任务,这将为您提供使用正确工具的足够练习。此外,还有大量的任务和练习来评估自己。我们将提供有关使用 Python 3 学习 Spark SQL 和 PySpark 3 的资源或环境的详细信息,以及GitHub 上使用 Python 3 练习Spark SQL 和 PySpark 3 的参考资料。请记住,您可以在工作场所使用集群,也可以在工作场所使用集群。使用提供的说明设置环境或使用 ITversity Lab 来学习本课程。
单节点大数据集群搭建
许多人希望从大型机、Oracle PL/SQL 等传统技术过渡到大数据,但您可能无法访问大数据集群。以正确的方式设置环境对于您来说非常重要。如果您手边没有集群,请不要担心,我们将通过 Udemy 问答指导您获得支持。
- 使用正确的配置设置基于 Ubuntu 的 AWS Cloud9 实例
- 确保 Docker 已设置
- 设置 Jupyter Lab 和其他关键组件
- 设置和验证 Hadoop、Hive、YARN 和 Spark
您是否对设置环境感到有点不知所措?不用担心!!!我们将提供长达 2 个月的补充实验室访问权限。以下是详细信息。
- 使用交互式环境进行培训。首先,您将获得 2 周的实验室访问权限。如果您喜欢这个环境,并通过提供 5* 评级和反馈来认可,实验室访问时间将延长至额外 6 周(2 个月)。请随时发送电子邮件至 [email protected] 以获得补充实验室访问权限。此外,如果您的雇主提供多节点环境,我们将帮助您设置练习材料,作为现场会议的一部分。除了问答支持之外,我们还通过现场会议提供所需的支持。
Python 快速回顾
本课程需要对 Python 有一定的了解。为了确保您从数据工程的角度理解 Spark,我们添加了一个模块来快速预热 Python。如果您不熟悉 Python,那么我们建议您学习我们的另一门课程《数据工程基础 – Python、SQL 和 Spark》。
掌握构建数据工程应用程序所需的 Hadoop 技能
作为本节的一部分,您将主要关注 HDFS 命令,以便我们可以将文件复制到 HDFS。复制到 HDFS 的数据将用作使用 Spark 和 Hadoop 以及 Python 作为编程语言构建数据工程管道的一部分。
- HDFS命令概述
- 使用 put 或 copyFromLocal 命令使用适当的 HDFS 命令将文件复制到 HDFS
- 使用 HDFS 命令检查文件是否正确复制到 HDFS。
- 使用 HDFS 命令(例如 du、df 等)获取文件的大小。
- 与HDFS相关的一些基本概念,例如块大小、复制因子等。
使用 Spark SQL 进行数据工程
让我们深入研究 Spark SQL,了解如何使用它来构建数据工程管道。Spark with SQL 将使我们能够利用 Spark 的分布式计算功能以及易于使用的开发人员友好的 SQL 样式语法。
- Spark SQL入门
- 使用Spark SQL 的基本转换
- 管理表– Spark SQL中的基本 DDL 和 DML
- 管理表- 使用Spark SQL DML 和创建分区表
- Spark SQL 操作字符串、日期、空值等函数概述
- 使用 Spark SQL 进行排序、高级聚合等的窗口函数。
使用 Spark Data Frame API 进行数据工程
Spark Data Frame API 是利用 Apache Spark 的分布式计算功能大规模构建数据工程应用程序的另一种方法。具有应用程序开发背景的数据工程师可能更喜欢使用 Data Frame API 而不是 Spark SQL 来构建数据工程应用程序。
- 使用Spark 或 Pyspark Data Frame API 的数据处理概述。
- 使用 Pyspark 数据框架 API从 Spark 数据框架投影或选择数据、重命名列、提供别名、从数据框架中删除列等。
- 使用 Spark 或 Pyspark Data Frame API处理列数据– 您将学习操作字符串、日期、空值等的函数。
- 使用 Pyspark Data Frame API 对 Spark Data Frame进行基本转换,例如使用 filter/where、带有 agg 的 groupBy、sort 或 orderBy 等函数进行过滤、聚合和排序。
- 使用 Pyspark 数据框架 API(例如 join)连接 Spark 数据框架上的数据集。您将使用正确的示例来学习内连接、外连接等。
- Spark 数据帧上的窗口函数使用 Pyspark 数据帧 API 执行高级聚合、排名和分析函数
- Spark Metastore 数据库和表以及Spark SQL 和 Data Frame API 之间的集成
Apache Spark 应用程序开发和部署生命周期
一旦您使用基于 Jupyter 的环境浏览了与 Spark 相关的内容,我们还将引导您详细了解 Spark 应用程序通常如何使用 Python 进行开发、部署和审核。
- 使用 Pycharm设置Python 虚拟环境和项目以进行Spark 应用程序开发
- 使用 Pycharm 和 Python了解完整的Spark 应用程序开发生命周期
- 为 Spark 应用程序构建 zip 文件,复制到它应该运行的环境并运行。
- 了解如何查看Spark 应用程序执行生命周期。
所有演示都是在我们最先进的大数据集群上进行的。您可以通过发送 Udemy 收据联系 [email protected],获得一个月的免费实验室访问权限。
本课程适合谁:
- 任何愿意使用 Apache Spark 学习数据工程的 IT 爱好者/专业人士
- 想要学习 Spark 以增加成为数据工程师的关键技能的 Python 开发人员
- 希望使用 Python 作为编程语言来学习 Spark 的基于 Scala 的数据工程师