RDD有哪几种创建方式

RDD 的创建方式

在 Spark 中,RDD 可以通过多种方式进行创建。以下是主要的两种方法及其详细说明:

1. 从集合中创建 RDD

这是最简单的方式之一,适用于本地数据结构(如数组或列表)转化为分布式数据集的情况。parallelize()makeRDD() 是两个常用的方法来实现这一点。

  • 使用 parallelize() 方法可以将一个 Scala 集合对象转换为 RDD2

    复制代码

    scala

    val conf = new SparkConf().setAppName("Example").setMaster("local") val sc = new SparkContext(conf) // 将本地数组转为 RDD val rdd: RDD[Int] = sc.parallelize(Array(1, 2, 3, 4))

  • 同样地,也可以使用 makeRDD() 来完成相同的功能1:

    复制代码

    scala

    val rdd1: RDD[Int] = sc.makeRDD(Array(1, 2, 3, 4, 5, 6))

这两种方法本质上都是把内存中的数据分布到集群的不同节点上去形成一个 RDD 实例2

2. 从外部存储系统加载数据创建 RDD

除了能够直接由程序内部的数据构建外,RDD 还可以从诸如 HDFS,S3,Cassandra,HBase 等外部存储媒介里获取原始资料进而初始化自己.

  • 当需要处理大规模存在于远程文件服务器上的文本文档时,则可通过调用 textFile() 函数指定路径参数达成目标2 :

    复制代码

    scala

    val hdfsRdd = sc.textFile("hdfs://localhost:9000/data/words.txt")

此命令会读取位于给定 URI 下的所有文件并将每一行作为单独元素放入最终得到的新建实例之中.

综上所述,无论是针对小型测试用途还是生产环境下涉及庞大数据量的实际运用场景,Spark 均提供了灵活简便的方式来生成所需的 RDD 结构形式以便后续进一步分析挖掘价值所在.

相关推荐
yumgpkpm1 天前
腾讯云TBDS与CDH迁移常见问题有哪些?建议由CDH迁移到CMP 7.13 平台(类Cloudera CDP,如华为鲲鹏 ARM 版)
hive·hadoop·zookeeper·flink·spark·kafka·hbase
bigdata-rookie2 天前
Spark 部署模式
大数据·分布式·spark
sheji34162 天前
【开题答辩全过程】以 基于Spark的药品库存可视化分析系统为例,包含答辩的问题和答案
大数据·分布式·spark
larance2 天前
spark-submit 常用方式
大数据·spark
A尘埃2 天前
Spark基于内存计算的数据处理
大数据·分布式·spark
bigdata-rookie3 天前
Flink Checkpoint 和 Spark Checkpoint 的区别
大数据·flink·spark
灯下夜无眠3 天前
conda打包环境上传spark集群
大数据·spark·conda
杂家3 天前
Hive on Spark && Spark on Hive配置
大数据·数据仓库·hive·hadoop·spark
bigdata-rookie4 天前
Spark SQL 简介
大数据·sql·spark
lhyzws4 天前
CENTOS上的网络安全工具(二十八)SPARK+NetSA Security Tools容器化部署(4)
linux·spark·centos