1、filter(func) (filter—翻译—>过滤)
筛选出满足函数func的元素,并返回一个新的数据集。
在第3行中,filter()的输入参数line => line.contains("Spark")是一个匿名函数,或者被称为“λ表达式”。
filter(line => line.contains("Spark"))的含义:依次取出lines这个RDD中的每个元素,对于当前取到的元素,把它赋值给λ表达式中的line变量,然后,执行λ表达式的函数体部分 line.contains("Spark"),如果line中包含"Spark"这个单词,就把这个元素加入到新的RDD(即linesWithSpark)中,否则,就丢弃该元素。最终,新生成的RDD中所有的元素都包含单词"Spark"。如下图:
2、map(func)
将每个元素传递到函数func中,并将结果返回为一个新的数据集。(一个元素map一下,得到另外一个元素,一对一的映射)
例一: