Spark各个知识点总结分析
Actions .foreach(println) 风格:把函数println当作参数传递给函数foreach 例子 - 计算bad的个数 errorsRDD = inputRDD.filter(line.contains(error)) warningsRDD = inputRDD.filter(line.contains(warning)) badLinesRDD = errorsRDD.union(warningsRDD) println(badLinesRDD.count() ) badLinesRDD.take(1).foreach(println)//使用take()取前1个数据 Actions top() 排序(根据RDD中数据的比较器) takeSample(withReplacement, num, seed) 取样例,是否需要替换值。 countByValue() 返回一个map,表示唯一元素出现的个数 Spark的核心概念 向Spark传递函数: 需要注意的地方: 如果你传递的函数是一个对象的成员,或者包含一个对象中字段的引用(例如self.field),Spark会把整个对象都发送到工作节点上,这样会比仅仅发送你关心的信息要大很多,而且有时候会带来一些奇怪的问题。 传送信息太多解决方法:我们可以把关心的字段抽取出来,只传递关心的字段。 奇怪问题的避免:序列化
原创力文档

文档评论(0)