SparkR无法写入数据帧

SparkR无法写入数据帧,r,apache-spark,sparkr,R,Apache Spark,Sparkr,我尝试执行一个作业,从HDFS读取一个文本文件,并计算SparkR中每个句子的字数。它在少量数据上运行得非常好,但当我将数据大小增加到大约1GB时,它就失败了 input <- read.text(inFile) count <- function(text) { value <- apply(text, 1, function(line) { splits <- strsplit(line, "\\W+")[[1]] t <- l

我尝试执行一个作业,从HDFS读取一个文本文件,并计算SparkR中每个句子的字数。它在少量数据上运行得非常好,但当我将数据大小增加到大约1GB时,它就失败了

input <- read.text(inFile)

count <- function(text) {
    value <- apply(text, 1, function(line) {
      splits <- strsplit(line, "\\W+")[[1]]
      t <- length(splits)
      return(as.character(t))
    })
    return(data.frame(value, stringsAsFactors=FALSE))
}

count_schema <- structType(structField("value", "string"))

splitText <- dapply(input, count, count_schema)

write.df(splitText, outFile, source="csv", mode = "overwrite")
我尝试将纯文本、csv和拼花作为输出格式,但都失败了,出现了相同的错误


我是否指定了错误的输出,或者我的Dappy UDF有问题?

R UDF非常昂贵。为什么不像
length(expr(“split(value,\\\\W+)”))”
?你能给我一个更详细的例子,我将如何使用它吗?只需将上面显示的表达式与
select
一起使用即可。您可能需要稍微调整它以处理具有相同语义的空字符串。
17/04/19 17:58:39 ERROR LiveListenerBus: SparkListenerBus has already stopped! Dropping event SparkListenerSQLExecutionEnd(0,1492617519955)
17/04/19 17:58:39 ERROR RBackendHandler: csv on 12 failed