其他基础知识出错
我正在尝试在spark上下文中读取文件并通过执行此操作跳过文件的标题
scala> val read = sc.textFile("/user/edureka/data/ls2014.tsv")
scala> val header = read.first
scala> val data = read.filter(row => (row != header))
用这些我得到错误" org.apache.spark.SparkException:任务不可序列化"。
序列化如何在这种情况下工作..想知道基本的以及为什么它在这里出错。
注意:我知道有其他方法可以跳过文件的标题。但是我想知道在这种情况下序列化的概念。请分享您的观点。
答案 0 :(得分:0)
你有行,我认为你的意思是rec:
val restfile = read.map(rec => row != header)
应该是这样的:
val restfile = read.map(rec => rec != header)
可能行是你之前在repl中定义的一个不可序列化的东西,因此不能通过闭包自动传递给执行者。