需求:从数据源中保留奇数
package com.atguigu.bigdata.spark.core.operator.transform.test
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}
import java.text.SimpleDateFormat
import java.util.Date
object RDD_filter_01 {
def main(args: Array[String]): Unit = {
val sparkConf = new SparkConf().setMaster("local[*]").setAppName("Operator")
val sc = new SparkContext(sparkConf)
// TODO 算子 -filter - 将数据根据指定的规则进行筛选过滤,符合规则的数据保留,不符合规则的数据丢失
// 当数据进行筛选过滤后,分区不变,但是分区内的数据可能不均衡,生产环境下,可能会出现数据倾斜
// 数据倾斜:比如两个分区每个分区都有100个数据,经过过滤后一个分区剩下99个数据,另外一个剩下10个,一个多一个少
// 需求:从数据源中保留奇数
val rdd = sc.makeRDD(List(1, 2, 3, 4))
val filterRDD = rdd.filter(num => {
num % 2 != 0
})
filterRDD.collect().foreach(println)
sc.stop()
}
}