欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > Spark-SQL(总结)

Spark-SQL(总结)

2025/4/27 6:49:24 来源:https://blog.csdn.net/2401_82413059/article/details/147408247  浏览:    关键词:Spark-SQL(总结)

了解到Spark SQL是Spark用于结构化数据处理的模块,其前身是Shark。Shark基于Hive开发,但对Hive的依赖制约了Spark的发展。掌握了 Spark - SQL 的特点,如易整合、统一数据访问、兼容 Hive 以及支持标准数据连接,可处理多种数据源的数据。

对于编程方面,学会使用 SparkSession 作为 SQL 查询的入口,它封装了 SparkContext 并整合了 SQLContext 和 HiveContext 的功能。掌握了 DataFrame 的创建方式(从数据源、RDD 转换或 Hive Table 查询)、查询语法(SQL 和 DSL)以及与 RDD 的相互转换方法。了解了 DataSet 的创建和与 RDD、DataFrame 的转换,以及三者之间的区别和联系。学会编写自定义函数,包括 UDF 和 UDAF,以满足特定的数据处理需求。

对于数据处理与存储方面,掌握了通用的数据加载和保存方式,默认格式为 parquet,可通过spark.read.loaddf.write.save结合formatoption处理不同格式数据。熟悉了 Parquet、JSON、CSV、MySQL 等数据格式的加载与保存特点及操作方法。

对于与Hive集成方面,学习了 Spark SQL 连接 Hive 的多种方式,如内嵌 Hive、外部 Hive、Spark beeline、Spark - SQL CLI 以及代码操作。明确了不同连接方式的使用场景和操作要点,如拷贝配置文件、导入依赖等。

本次课程Spark-SQL 展开,学习到其概念、核心编程、数据加载与保存、数据处理及与Hive集成与 Hive 的连接等多方面内容,帮助学习者全面掌握Spark-SQL技术。

学习到许多的程序,像是SparkSession 创建、 DataFrame 操作、DataSet 操作、自定义函数、数据加载与保存、 连接 Hive、词频统计、城市出现次数最多的等等

一、Spark - SQL 基础认知

了解到 Spark - SQL 是 Spark 用于结构化数据处理的关键模块。由于 Shark 对 Hive 的依赖限制了发展,Spark - SQL 应运而生,具备易整合、统一数据访问、兼容 Hive、支持标准数据连接等特性,能处理多种数据源的数据。

二、核心编程抽象

  1. DataFrame
    • 掌握了其创建方式,可从 Spark 数据源、现有 RDD 或 Hive Table 构建。
    • 学会运用 SQL 语法和 DSL 语法进行查询操作。
    • 熟悉了 DataFrame 与 RDD 的相互转换,借助样例类能更便捷地实现转换。
  2. DataSet
    • 明确了 DataSet 是分布式数据集合,具有强类型的特点。
    • 学会使用样例类序列或基本类型序列创建 DataSet。
    • 掌握了 DataSet 与 RDD、DataFrame 之间的相互转换方法。
    • 对比了 RDD、DataFrame 和 DataSet 的异同,理解它们在使用场景上的差异。

三、自定义函数编写

  1. UDF(用户自定义函数):学会注册 UDF 并在 SQL 语句中运用,以满足特定的数据处理需求。
  2. UDAF(用户自定义聚合函数):了解在 Spark 3.0 前后不同的实现方式,掌握使用Aggregator实现强类型聚合函数,如计算平均工资等功能。

四、数据加载与保存

  1. 通用方式:掌握了通用的数据加载和保存方式,默认格式为 parquet,学会使用spark.read.loaddf.write.save,并结合formatoption等方法处理不同格式数据。
  2. 特定格式:熟悉了 Parquet、JSON、CSV、MySQL 等数据格式的加载与保存特点及操作方法。

五、与 Hive 连接

  1. 连接方式:学习了 Spark SQL 连接 Hive 的多种方式,包括内嵌 Hive、外部 Hive、Spark beeline、Spark - SQL CLI 以及代码操作。
  2. 操作要点:明确不同连接方式的使用场景和操作要点,如拷贝相关配置文件、导入依赖等。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词