Spark SQL 与 DataFrame
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 orderB...
Spark Core 与 RDD 入门
Spark 的核心抽象是 RDD(弹性分布式数据集)。理解了 RDD 和它的 Transformation/Action 操作,就掌握了 Spark 的灵魂。 一、Spark 为什么快 1.1 内存计算——中间结果不进磁盘 1.2 DAG 调度——优化执行计划 1.3 与 MapReduce 的性能对比 二、RDD——弹性分布式数据集 2.1 什么是 RDD——不可变的分布式集合 2.2 分区——并行计算的基本单位 2.3 容错——Lineage 血统重算 2.4 依赖关系——窄依赖 vs 宽依赖 三、Transformation(转换) 3.1 map / ...
大数据技术栈概览
大数据技术名词繁多,刚接触时很容易迷失。本文从”解决了什么问题”的视角,帮你建立全景认知。 一、大数据的核心挑战 1.1 单机处理不了——数据量超过磁盘/内存 1.2 三个核心问题——存储、计算、查询 1.3 分布式是唯一出路 二、Hadoop 生态 2.1 HDFS——分布式文件系统,解决”存在哪” 2.2 MapReduce——分布式计算框架,解决”怎么算” 2.3 YARN——资源调度,解决”谁先算” 2.4 Hadoop 的局限——MapReduce 太慢 三、Spark——内存计算的崛起 3.1 为什么比 MapReduce 快——内存 vs 磁盘 3.2 S...