gpt4 book ai didi

scala - Scala Spark 作业需要多长时间才能处理一个文件中的一百万行?

转载 作者:可可西里 更新时间:2023-11-01 15:26:08 25 4
gpt4 key购买 nike

我在 HDFS 中有一个名为 file1 的文件,其中包含多个文件的路径:

this/is/path1
this/is/path2
this/is/path3
.
.
.
this/is/path1000000

如果我通过在 Scala 中执行以下行从该文件中获取所有行作为列表,

val lines=Source.fromFile("/my/path/file1.txt").getLines.toList

如果我如下使用“for”循环,在一个单独的函数中处理 file1 的每一行,该函数涉及每一行的一些映射功能,

for(i<-lines){
val firstLines=sc.hadoopFile(i,classOf[TextInputFormat],classOf[LongWritable],classOf[Text]).flatMap {
case (k, v) => if (k.get == 0) Seq(v.toString) else Seq.empty[String]
}
}

假设 file1 包含大约超过一百万行,这需要多长时间才能运行?这个 scala 作业已经在我的机器上运行了一个多小时,我想知道它是否在任何地方卡住了或者正在经历无限循环,或者类似的事情。

最佳答案

这是一个有点沉重的问题。但一般来说应该不会花很长时间。我猜是出了什么问题。根据个人经验,我猜你没有足够的执行者可用。

内存在 spark 中得到了很多关注,但可用执行程序的数量比内存问题更让我感到不适。特别是因为你会看到这样的行为,它不会出错。它会无限期地停止。

也就是说,这只是一个猜测,对工作和环境知之甚少。是时候调试你的部分了,看看你是否找不到问题或者回来提出更具体的问题/问题。

关于scala - Scala Spark 作业需要多长时间才能处理一个文件中的一百万行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47166177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com