主页 > 新闻资讯 > 什么是Spark的核心数据集?Spark RDD全面解析

什么是Spark的核心数据集?Spark RDD全面解析

作者:张老师 浏览次数: 2020-02-19 16:58
在Spark框架当中,为了提升计算性能,对于数据模型做了创新性的调整,也就是引入了RDD。基于RDD数据模型,Spark运行计算得到了很好的支持。关于什么是Spark的核心数据集,RDD设计特点,下面为大家带来Spark RDD核心全面解析。

RDD,全称Resilient Distributed Dataset,通常被翻译为弹性分布式数据集,这是一种对于数据集形态的抽象,在Spark框架当中,所有的数据都被简化为RDD,此基础上施加各种高阶算子,以构建DAG执行引擎,这就是Spark获得计算性能提升的重要一步。

什么是Spark的核心数据集

作为Spark的核心数据集模型,RDD在设计上的精妙性是值得称赞的——

显式抽象。将运算中的数据集进行显式抽象,定义了其接口和属性。由于数据集抽象的统一,从而可以将不同的计算过程组合起来进行统一的DAG调度。

基于内存。RDD通过将结果保存在内存中,大大降低了单个算子计算延迟以及不同算子之间的加载延迟。

宽窄依赖。在进行DAG调度时,定义了宽窄依赖的概念,并以此进行阶段划分,优化调度计算。

谱系容错。主要依赖谱系图计算来进行错误恢复,而非进行冗余备份,因为内存实在是有限,只能以计算换存储了。

交互查询。修改了Scala的解释器,使得可以交互式的查询基于多机内存的大型数据集。进而支持类SQL等高阶查询语言。

在实际的计算任务当中,Spark通过暴露与编程语言集成的算子来提供操作RDD的接口。其中RDD表现为编程语言中的类,而RDD的算子为作用于这些类上的函数。

用户使用RDD时,首先将数据从持久化存储中通过变换(Transformations,如map或者filter)将其载入内存,然后可以对RDD施加任何系统支持的一系列变换,最后利用动作(Action)算子,将RDD重新持久化到外存中或者将控制权交还用户。

关于什么是Spark的核心数据集,相信看完以上的内容,大家也都有了更清楚的认识了。在Spark框架当中,RDD作为核心数据模型,可以说是Spark性能提升的一大关键,基于RDD提供的计算操作便利性,能够更低延迟的完成数据处理任务。成都加米谷大数据,专业大数据培训机构,大数据开发2020春季班正在招生中,详情可联系客服了解!
热点排行
推荐文章
立即申请>>