zoukankan      html  css  js  c++  java
  • Spark_RDD

    一、概念

    RDD是Resilient Distributed Dataset。
    RDD是Spark的基础数据结构。表现形式为不可变的分区元素的集合,并且可以在集群中并行操作。

    同时, RDD 还提供了一组丰富的操作来操作这些数据. 在这些操作中, 诸如 map, flatMap, filter 等转换操作实现了 Monad 模式, 很好地契合了 Scala 的集合操作. 除此之外, RDD 还提供了诸如 join, groupBy, reduceByKey 等更为方便的操作, 以支持常见的数据运算.

    二、属性

    • 获取分区列表(getPartitions):有一个数据分片列表,能够将数据进行切分,切分后的数据能够进行并行计算,是数据集的原子组成部分。
    • 可以在每一个分区上进行计算(compute):计算每个分区,得到一个可便利的结果,用于说明在父RDD上执行何种计算。
    • 获取每个RDD的依赖(getDependencies):计算每个RDD对父RDD的依赖列表,源RDD没有依赖,通过依赖关系描述血统。
    • RDD的键值分区器( @transient val partitioner: Option[Partitioner] = None):描述分区模式和数据存放的位置,键值对的RDD根据哈希值进行分区。
    • 在那个分区上进行计算最好(getPreferredLocations):每一个分片的优先计算位置

    三、使用

    1、创建入口

    val conf = new SparkConf().setMaster("local[6]")
    val sc = new SparkContext(conf)
    View Code
    2、通过文件方式
    def rddCreateFiles(): Unit ={
        val rdd1 = sc.textFile("hdfs://node01:8020/spark/data/wordcount.txt")
        val rdd2 = sc.textFile("dataset/wordcount.txt")
      }
    View Code
  • 相关阅读:
    3139:[HNOI2013]比赛
    3143: [Hnoi2013]游走
    目前游戏行业内部主要几款游戏引擎的技术对比
    6.使用AngularJS模板来创建视图
    css选择器(E[att^=”val”]序号选择器)
    5.把作用域实现为数据模型
    4.了解AngularJS模块和依赖注入
    3.创建基本的AngularJS应用
    2.AngularJS MVC
    1.AngularJS初探
  • 原文地址:https://www.cnblogs.com/hhjing/p/14319123.html
Copyright © 2011-2022 走看看