SparkContext.textFile读取文件

这篇具有很好参考价值的文章主要介绍了SparkContext.textFile读取文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SparkContext.textFile读取文件

SparkContext提供了 textFile() 方法用于按行读取文本文件,返回RDD。

用法:

sc.textFile(path: String, minPartitions: Int)

sc: SparkContext 对象
path:本地文件路径或 hdfs:// , s3a:// 等Hadoop支持的文件系统URI
minPartitions:可选参数,指定数据的最小分区
默认情况下,Spark为文件的每个块创建一个分区(HDFS中一个块默认为128MB),可以通过 minPartitions 参数来设置更多分区。请注意,分区数不能少于块数。

读取单个文件

直接将文件路径作为 path 参数传入 textFile() 读取单个文件,返回每行内容的RDD。

val rdd = sc.textFile("/path/text.txt")
读取多个文件

如果要读取的多个指定文件,使用逗号分隔文件名传入 textFile() 即可。

val rdd = sc.textFile("/path/test01.txt,/path/test02.txt")
读取路径下所有文件

path 可传入文件路径来读取路径下所有文件。

val rdd = sc.textFile("/path/")
使用通配符读取多个文件

文件路径中可以使用通配符来读取多个文件。

val rdd1 = sc.textFile("/path/*.txt")  // 读取路径所有txt文件
val rdd2 = sc.textFile("/path/*/*.txt")  // 读取多个目录下的文件
从HDFS读取文件

从HDFS中读取文件和读取本地文件一样,只是要在URI中表明是HDFS。上面的所有读取方式也都适用于HDFS。

val rdd = sc.textFile("hdfs://master:9000/examples/data.txt")

完整代码文章来源地址https://www.toymoban.com/news/detail-432211.html

package com.sparkexamples.spark.rdd

import org.apache.spark.rdd.RDD
import org.apache.spark.sql.SparkSession

object ReadTextFileExample {

  def main(args: Array[String]): Unit = {
    val spark = SparkSession.builder()
      .master("local[1]")
      .appName("SparkExample")
      .getOrCreate()

    val sc = spark.sparkContext

    // 读取单个文件
    val rdd1:RDD[String] = sc.textFile("/path/test01.txt")
    rdd1.foreach(println)

    // 读取多个文件
    val rdd2:RDD[String] = sc.textFile("/path/test01.txt,/path/test02.txt")
    rdd2.foreach(println)

    // 读取路径下所有文件
    val rdd3:RDD[String] = sc.textFile("/path/resources/")
    rdd3.foreach(println)

    // 通配符示例-读取路径所有txt文件
    val rdd4:RDD[String] = sc.textFile("/path/*.txt")
    rdd4.foreach(println)

    // 通配符示例-读取多个目录下的文件
    val rdd5:RDD[String] = sc.textFile("/path/*/*.txt")
    rdd5.foreach(println)

    // 读取HDFS文件
    val rdd6:RDD[String] = sc.textFile("hdfs://master:9000/examples/data.txt")
    rdd6.collect.foreach(println)
  }
}

到了这里,关于SparkContext.textFile读取文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Hive数据存储格式有哪些?TextFile、SequenceFile、RCFile、ORCFile、Parquet有什么区别?为什么绝大多数都使用ORCFile、Parquet格式?

    Hive 的数据存储,是 Hive 操作数据的基础。 选择一个合适的底层数据存储文件格式,即使在不改变当前 Hive SQL 的情况下,性能也能得到数量级的提升 。 这种优化方式对 MySQL 等关系型数据库有些类似,选择不同的数据存储引擎,代表着不同的数据组织方式,对于数据库的表现

    2024年02月02日
    浏览(45)
  • java 逐行读取文件(读取文件每一行、按行读取文件)附带示例代码

    最快的读取每一行 相比较Scanner慢一点 行数达到一定规模,使用此方法读取会非常慢 一次把所有数据都读到内存中,当文件非常大时,会消耗掉内存资源导致程序崩掉,文件规模小推荐使用 统计每一行日志ip出现的次数

    2024年02月11日
    浏览(37)
  • Python读取文件相对路径理解以及文件读取路径格式

    绝对路径 :指的是是当前文件在 计算机磁盘中存放的具体位置 就是死的,物理上面的 相对路径 :指的是文件 相对于当前的py文件所处的位置 。就是参照py文件来说明路径,参照物嘛 读取文件路径方式(path.xls文件为例子)   执行命令的py文件同path.xls文件在同一个目录an

    2024年02月06日
    浏览(34)
  • 读取JSON文件 如何在Unity中读取Json文件中的数据

    Josn是一种轻量级的数据交换格式,JSON能够描述四种简单的类型(字符串、数字、布尔值及null)和两种结构化类型(对象及数组),在Unity里经常用Json来处理大量的字符串,容易解析,效率非常快。 基本结构 1、语法 数据存在键值对中 数据由逗号分隔 花括号保存对象 方括号保存

    2024年02月15日
    浏览(32)
  • 文件操作之文件下载、文件读取

    本文章仅做学习交流、如有违法行为,上传者自行负责 原理:  原理案例 检测 怎么寻找文件下载漏洞? 利用方面 文件目录的获取分两种 文件类型:常见文件、敏感文件 实际案例演示 Javaweb文件下载代码  当贝市场(通过功能点找到漏洞) RoarCTF2019-文件读取真题复现-比赛

    2024年02月03日
    浏览(47)
  • C++,文本文件,读取文件

    代码演示: 运行截图:  

    2024年02月13日
    浏览(33)
  • c#关于文件夹/文件/文本读取遍历,写入还有表格的读取的一些方法

    c#遍历文件夹下的各种文件 将一些log写入到文本文件中: fs.Seek(offset, whence);移动文件读取的指针到指定位置 offset:开始的偏移量,也就是代表需要移动偏移的字节数 whence:给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始

    2024年02月01日
    浏览(40)
  • Unity 数据读取|(二)多种方式读取文本文件

    在Unity3D中,我们经常会需要在本地或者服务器上读取游戏数据,Unity中读取文件的方式有很多种,写下此文章以做总结。 TextAsset是Unity 提供的一个文本对象,它可以通过 Resources.Load 或者 AssetBundle 来读取数据。 它支持读取的文本格式包括 . txt .html .htm .bytes .json .csv .yaml .fnt 。

    2024年02月04日
    浏览(62)
  • SpringBoot项目打成jar包之后无法读取资源文件【jar包文件的读取方式】

    将文件放在resources目录下,确保资源文件被打包到jar包中 如何判断资源是否在jar包中,只需要解压jar包,然后查询资源名称即可 读取文件的时候写成绝对路径,肯定是不行的,这个很容易理解。 那读取文件的时候写相对路径是否可以呢?答案也是不行,见下面解释。 这是原

    2024年02月14日
    浏览(39)
  • .NET学习笔记----关于.NET Core那些事(3)【配置文件的读取、json文件的通用解析、读取静态文件】

    appsettings.json准备 控制器中读取json 定义与配置文件中需要获取的标签结构完全一致的实体类:IConfiguration .Bind() ----反序列化 要读取的json字符串 定义的实体类 读取json 用到的json字符串 == 用到的类 Startup.cs中的配置 控制器中的代码 运行结果 当我们用《关于.NET Core那些事(2)》

    2024年02月04日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包