Spark编程模型(中)

创建RDD

  • 方式一:从集合创建RDD
  1. makeRDD
  2. Parallelize

注意:makeRDD可以指定每个分区perferredLocations参数parallelize则没有。

  • 方式二:读取外部存储创建RDD

  Spark与Hadoop完全兼容,所以对Hadoop所支持的文件类型或者数据库类型,Spark同样支持。

1.  多文件格式支持:

2.  多文件系统支持:

    1)本地文件系统

    2)S3

    3)HDFS

3.  数据库

    1)JdbcRDD

    2)spark-cassandra-connector(datastax/spark-cassandra-connector)

    3)org.apache.hadoop.hbase.mapreduce.TableInputFormat(SparkContext.newAPIHadoopRDD)

    4)Elasticsearch-Hadoop

控制操作

1.  persist操作,可以将RDD持久化到不同层次的存储介质,以便后续操作重复使用。

    1)cache:RDD[T]

    2)persist:RDD[T]

    3)Persist(level:StorageLevel):RDD[T]

2. checkpoint

  将RDD持久化到HDFS中,与persist操作不同的是checkpoint会切断此RDD之前的依赖关系,而persist依然保留RDD的依赖关系。

  注意:控制操作的细节会在后续章节专门讲解

 

 转换操作

  • 基本转换操作1

  (1)RDD的转化操作是返回新的RDD的操作;

  (2)我们不应该把RDD看作存放着特定数据的数据集,而最好把每个RDD当作我们通过转化操作构建出来的、记录如何计算数据的指令列表。

  • 基本转换操作2

action操作

 

以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢!

 

posted @ 2018-09-18 14:47  子墨言良  阅读(166)  评论(0编辑  收藏  举报