spark--transform算子--filter

本文介绍了一个使用Apache Spark进行数据过滤的具体示例。通过定义一个简单的数据集并利用Spark的filter函数来筛选出符合条件的数据项。具体操作包括创建SparkConf配置、初始化SparkContext上下文、定义待处理的数据集合并应用filter过滤条件。
import org.apache.spark.{SparkConf, SparkContext}

/**
  * Created by yz02 on 2017/6/15.
  */
object T_filter {
  System.setProperty("hadoop.home.dir","F:\\hadoop-2.6.5")

  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setAppName("filter_test").setMaster("local")
    val sc = new SparkContext(conf)

    val numbers = Array(1, 2, 3, 4, 5)
    val numberRDD = sc.parallelize(numbers)

    //filter 过滤元素
    val resultRDD = numberRDD.filter(x => x % 2 == 0)
      .foreach(println)
  }
}
运行结果:
2
4
Spark中的操作分为两类:转换操作(Transformations)和行动操作(Actions)。 Transformations(转换操作)是指将一个RDD转换为另一个RDD的操作。这些操作不会立即执行,而是返回一个新的RDD,只有在遇到行动操作时才会执行。 以下是一些常见的Transformations操作: - map(func):传入一个函数,对RDD中每个元素进行映射操作,返回新的RDD。 - filter(func):传入一个函数,对RDD中的每个元素进行过滤操作,返回一个包含符合条件的元素的新RDD。 - flatMap(func):传入一个函数,对RDD中每个元素进行映射操作,并返回多个元素,最终生成新的RDD。 - distinct([numTasks])):返回一个去重后的RDD。 - groupByKey([numTasks]):按照Key进行分组,返回一个(K, Iterable[V])的RDD。 - reduceByKey(func, [numTasks]):按照Key进行分组,然后对每个Key的Value进行reduce操作,返回一个(K, V)的RDD。 Actions(行动操作)是触发Spark计算的操作,会执行Transformations操作生成的计算图,并返回计算结果。 以下是一些常见的Actions操作: - collect():将RDD中的所有元素收集到Driver端。 - count():返回RDD中元素的个数。 - first():返回RDD中的第一个元素。 - take(n):返回RDD中前n个元素。 - reduce(func):对RDD中的元素进行reduce操作。 - foreach(func):对RDD中的每个元素执行给定的函数。 以上是Spark中常见的Transformations和Actions,还有一些其他的操作,如join、union、distinct、sortBy等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

书灯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值