如何使用 Scala 读取边缘节点中的 .text 文件



如何使用Scala在边缘节点中读取.text文件。

def main(args: Array[String]) {
  val srcFile=sc.textFile("file://home//viji.palanisamy//dev//kpi_library//EDI//Prof_test1").toString()
  readFile(srcFile)
}
def readFile(filename: String) = {
  val bufferedSource = Source.fromFile(filename)
  println("bufferedSource"+bufferedSource)
}

出现错误,如找不到文件。有没有使用 Scala 从节点读取文本的解决方案。

有没有使用 Scala 从节点读取文本的解决方案。

除非你想在本地读取文件,使用标准的IO工具(在Scala中读取整个文件?(并且parallelize没有。

您必须将文件分发到每个执行程序节点或将其放置在分布式存储中。

此处显示的技巧由 user8371915 https://stackoverflow.com/a/47845360/9658417:

import org.apache.spark.SparkFiles
val filename: String = ???
sc.addFile(filename)
val srcFile=sc.textFile(SparkFiles.get(filename))

但是,如果您只想读取驱动程序上的本地文件,请跳过textFile部分,仅:

Source.fromFile(filename)

最新更新