当前位置: 首页 > news >正文

3.1 掌握RDD的创建

在这里插入图片描述
在Apache Spark中,RDD(Resilient Distributed Dataset)是一个基本的、不可变的、分布式的和可分区的数据集。它能够自动进行容错处理,并支持在大规模集群上的并行操作。RDD之间存在依赖关系,可以实现管道化,避免了中间数据的存储。

创建RDD的方式有以下几种:

  1. 通过集合创建RDD,例如使用parallelize()方法或makeRDD()方法将List或Array转换为RDD。这种方式创建的RDD是基于内存中的集合,适合小规模数据。

  2. 通过外部存储系统中的数据集创建RDD,如本地文件、HDFS文件、HBase文件等。可以使用textFile()方法读取文本文件生成RDD。

    • 对于本地模式的Spark Shell,可以直接读取本地文件,也可以读取HDFS文件。读取本地文件时,加不加file://前缀都可以;读取HDFS文件时,需要添加hdfs://master:9000前缀。

    • 对于集群模式的Spark Shell,只能读取HDFS文件生成RDD,不能读取本地文件。读取HDFS文件时,必须添加hdfs://master:9000前缀。

下面是一些创建RDD的示例代码:

// 通过List创建RDD
val rddFromList = sc.parallelize(List(1, 2, 3, 4, 5, 6, 7, 8))// 通过Array创建RDD
val rddFromArray = sc.parallelize(Array("北京", "上海", "广州", "深圳", "泸州"))// 通过本地文件创建RDD
val rddFromLocalFile = sc.textFile("/home/test.txt")// 通过HDFS文件创建RDD
val rddFromHDFSFile = sc.textFile("hdfs://master:9000/luzhou/test.txt")

需要注意的是,创建的RDD是分布式的集合,可以在集群上进行并行操作。相比于Scala的List和Array,RDD具有更好的容错性和分布式计算能力。

http://www.lryc.cn/news/351809.html

相关文章:

  • 深入理解 Java 中的 `volatile` 关键字:可见性与有序性的保障
  • 1077: 平衡二叉树的判定
  • 深度学习-Softmax回归+损失函数+图像分类数据集
  • 【论文解读】Overview of the Scalable Video Coding Extension of the H.264/AVC Standard
  • 【C语言】程序员自我修养之文件操作
  • 一种获取java代码结构的实现思路
  • MySQL---增删改查
  • C#编程-.NET Framework使用工具类简化对象之间的属性复制和操作
  • 爬虫基本原理及requests库用法
  • spring和springboot、springcloud版本关系
  • 视频监控汇聚平台LntonCVS通过GB/T28181国标协议实现视频监控平台的级联方案
  • 【精品】使用 v-md-editor 上传图片
  • STM32——DAC篇(基于f103)
  • 突然提示由于找不到msvcr120.dll,无法继续执行代码有什么办法可以解决?
  • swig4.2.1压缩包中里面没有找到swig.exe
  • Vue文本溢出如何自动换行
  • 【系统架构师】-论文-系统安全性与保密性设计
  • Cisco Catalyst 9000 9200 9300 9400 IOS software upgrade
  • Web Server项目实战2-Linux上的五种IO模型
  • Docker | 基础指令
  • 10款手机黑科技app,每款都好用到爆!
  • tomcat请求数据解析过程
  • 《扑克牌游戏》
  • kali模块及字典介绍
  • 交换排序、归并排序、计数排序
  • 怎么查看 iOS ipa包 mobileprovision 改动
  • 【Unitydemo制作】音游制作—控制器与特效
  • [程序员] 最近的感悟,错误处理占大头?
  • vue3(一) - 结构认识
  • 数据库迁移——kettle开发01