Transformation类算子:
filter
过滤符合条件的记录数,true保留,false过滤掉。
map
将一个RDD中的每个数据项,通过map中的函数映射变为一个新的元素。
特点:输入一条,输出一条数据。
flatMap
先map后flat。与map类似,每个输入项可以映射为0到多个输出项。
sample
随机抽样算子,根据传进去的小数按比例进行又放回或者无放回的抽样。
reduceByKey
将相同的Key根据相应的逻辑进行处理。
sortByKey/sortBy
作用在K,V格式的RDD上,对key进行升序或者降序排序。
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
object ScalaSpark {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
conf.setMaster("local")
conf.setAppName("wc")
val con = new SparkContext(conf)
con.setLogLevel("error")//不显示log(可选的有:ALL,DEBUG,ERROR,FATAL,TRACE,WARN,INFO,OFF)
val lines = con.textFile("./data/words")
//0.1-》随机抽样比例为0.1 (抽取的数据量是在10%左右) //指定seed,执行结果不变