【问题标题】:Spark scala: convert Iterator[char] to RDD[String]Spark scala:将 Iterator[char] 转换为 RDD[String]
【发布时间】:2018-03-13 16:46:05
【问题描述】:

我正在从文件中读取数据,并且已经到达数据类型为 Iterator[char] 的位置。有没有办法将 Iterator[char] 转换为 RDD[String]?然后我可以使用案例类转换为 Dataframe/Dataset。

下面是代码:

val fileDir = "inputFileName"
val result = IOUtils.toByteArray(new FileInputStream (new File(fileDir)))
val remove_comp = result.grouped(171).map{arr => arr.update(2, 32);arr}.flatMap{arr => arr.update(3, 32); arr}
val convert_char = remove_comp.map( _.toChar)

这个返回convert_char:Iterator[Char] = 非空迭代器

谢谢

【问题讨论】:

  • 你真正想要达到什么目的?如果你想读取一个文件只是spark.read.text 或类似的。

标签: apache-spark


【解决方案1】:

不确定您要做什么,但这应该可以回答您的问题:

val ic: Iterator[Char] = ???
val spark : SparkSession = ???

val rdd: RDD[String] = spark.sparkContext.parallelize(ic.map(_.toString).toSeq)

【讨论】:

  • 我想读取一个消隐第 2 和第 3 个字节的文件,然后开始处理。
猜你喜欢
  • 2021-09-28
  • 2017-06-13
  • 1970-01-01
  • 1970-01-01
  • 2020-08-17
  • 2022-01-12
  • 1970-01-01
  • 2018-03-05
  • 2017-08-24
相关资源
最近更新 更多