RDD 虽然灵活,但缺少结构信息。DataFrame 和 Spark SQL 让数据操作更像传统的 SQL 查询,性能也更好。

一、DataFrame 简介

  • 1.1 DataFrame = RDD + Schema
  • 1.2 与 Pandas DataFrame 的区别
  • 1.3 创建 DataFrame——从 RDD / JSON / CSV

二、DataFrame 常用操作

  • 2.1 select / filter / where
  • 2.2 groupBy / agg——聚合
  • 2.3 join——关联查询
  • 2.4 orderBy / limit

三、Spark SQL 查询

  • 3.1 注册临时视图——createOrReplaceTempView
  • 3.2 直接用 SQL 查询 DataFrame
  • 3.3 与 Hive 的集成——读写 Hive 表

四、内置函数

  • 4.1 字符串函数——concat / substring
  • 4.2 日期函数——date_format / datediff
  • 4.3 聚合函数——sum / avg / countDistinct
  • 4.4 窗口函数——row_number() over

五、性能优化基础

  • 5.1 Catalyst 优化器
  • 5.2 Tungsten——代码生成
  • 5.3 缓存策略——cache / persist
  • 5.4 广播变量——小表 Join 优化