主页

Spark SQL I

快速入门 什么是 SparkSQL Spark SQL is Spark’s module for working with structured data. 限定:结构化数据处理 SparkSQL 的特点 融合性:SQL 可以无缝集成在代码中,随时用 SQL 处理数据 统一数据访问:一套标准 API 可读写不同数据源 Hive 兼容:可以使用 SparkSQL 直接计算并生成 Hive 数据表 标准化连接:支持标准化 JDBC\ODBC 连接,方便和各种数据库进行数据交互 SparkSQL 概述 SparkSQL 和 Hive 的异同 SparkSQL 和 Hive 都是”分布式 SQL 计算引擎“ SparkSQL 的数据抽象 ...

阅读更多

Spark Core - Part III

第6章 Spark 内核调度 DAG 有向无环图(Directed Acyclic Graph) Spark 的核心是根据 RDD 来实现的,Spark Scheduler 则为 Spark 核心实现的重要一环,其作用就是任务调度。Spark 的任务调度就是如何组织任务去处理 RDD 中每个分区的数据,根据 RDD 的依赖关系构建 DAG,基于 DAG 划分 Stage, 将每个 Stage 中的任务发到指定节点运行。基于 Spark 的任务调度原理,可以合理规划资源利用,做到尽可能用最少的资源高效地完成任务计算。 [[2021-12-15-SparkCore#RDD 的缓存|RDD 的缓存]] 对应的 DAG: 结论:1个Action = 1个DAG = 1个Jo...

阅读更多

Spark Core - Part II

第3章 RDD 持久化 RDD 的数据是过程数据 RDD 之间进行相互迭代计算(Transformation),当执行开启后,新 RDD 的生成,代表老 RDD 的消失 RDD 的数据是过程数据,只在处理的过程中存在,一旦处理完成,就不见了。 RDD 的缓存 基于 [[2021-12-15-SparkCore#RDD 的数据是过程数据|RDD 的数据是过程数据]],如果需要重复使用中间 RDD,那么需要重复生成这个中间 RDD。 因此,Spark 提供了缓存 API,可以让我们通过调用 API,将指定的 RDD 数据保留在内存或硬盘上。 API: RDD.cache() RDD.persist(storageLevel=StorageLevel(False, True, ...

阅读更多

Spark Core - Part I

第1章 RDD 详解 为什么需要 RDD 分布式计算需要: 分区控制 Shuffle 控制 数据存储\序列化\发送 数据计算 API 等一系列功能 什么是 RDD 定义 RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最基本的数据抽象,代表一个不可变、可分区、可并行计算的集合。 Resilient:RDD 中的数据可以存储在内存中或者磁盘中 Distributed:RDD 中的数据是分布式存储的,可用于分布式计算 Dataset:一个数据集合,用于存放数据的 RDD,是 Spark 中最基本的数据抽象,代表一个不可变、可分区、可并行计算的集合。 所有的...

阅读更多

Spark 基础入门

第1章 Spark 框架概述 Spark 是什么 Apache Spark 是一个多语言引擎,用于在单节点机器或集群上执行数据工程、数据科学和机器学习。 Apache Spark™ is a multi-language engine for executing data engineering, data science, and machine learning on single-node machines or clusters. Spark 有哪些特性 批处理/流式数据(Batch/streaming data) SQL分析(SQL analytics) 弹性数据科学(Data science at scale) 机器学习(Machine learn...

阅读更多

Welcome

If you see this page, that means you have setup your site. enjoy! :ghost: :ghost: :ghost: You may want to config the site or writing a post next. Please feel free to create an issue or send me email if you have any questions.

阅读更多