• Spark入门(1-3)Spark的重要概念


    1、什么是弹性分布式数据集?

    Spark提出了RDD(Resilient Distributed Datasets)这么一个全新的概念,RDD弹性分布式数据集是并行、容错的分布式数据结构;可以将RDD视作数据库中的一张表。其中可以保存任何类型的数据。

    RDD可以持久化到硬盘或内存当中。

    RDD是一个分区(Partition)的数据集,Spark将数据存储在不同节点上的分区(Block)上。分区的多少决定了并行计算的粒度;

    Spark提供了一系列操作用于操作RDD中的数据。

    RDD还具有容错性,可以帮助重新安排计算并优化数据处理过程。

    2、RDD的【Transformation】操作-变换

    变换:调用一个变换方法,不会有任何求值计算,它只获取一个RDD作为参数,然后返回一个新的RDD,新的RDD也可以进行另外的转换。这个过程是分布式的。
    变换操作包括map,filter,flatMap,groupByKey,reduceByKey,aggregateByKey,pipe和coalesce
    变换操作不会立刻执行,Spark遇到Transformations操作时只会记录需要这样的操作,并不会去执行,需要等到有Actions操作的时候才会真正启动计算过程进行计算。

    3、RDD的【Acttion】操作-行动

    行动:行动操作计算并返回一个新的值。当在一个RDD对象上调用行动函数时,会在这一时刻计算全部的数据处理查询并返回结果值。
    行动操作包括:reduce,collect,count,first,take,countByKey以及foreach
    Actions操作会返回结果或把RDD数据写到存储系统中。Actions是触发Spark启动计算的动因。
    Action返回值不是一个RDD。它要么是一个Scala的普通集合,要么是一个值,要么是空,最终或返回到Driver程序,或把RDD写入到文件系统中

  • 相关阅读:
    OI无关--关于侧边栏
    Codeforces Round #528 div1
    BZOJ 3531: [Sdoi2014]旅行
    BZOJ 4538: [Hnoi2016]网络
    Codeforces Round #527 (Div. 3)
    Avito Cool Challenge 2018
    Educational Codeforces Round 56 (Rated for Div. 2)
    Codeforces Round #526 (Div. 1)
    2018-2019 Russia Open High School Programming Contest (Unrated, Online Mirror, ICPC Rules, Teams Preferred)
    Codeforces Round #525 (Div. 2)
  • 原文地址:https://www.cnblogs.com/lexiaofei/p/6727503.html
Copyright © 2020-2023  润新知