spark streaming scala 过滤黑名单

原创 2018年04月17日 09:56:40

本文章主要通过spark streaming实时过滤黑名单

import org.apache.spark.SparkConf
import org.apache.spark.streaming.StreamingContext
import org.apache.spark.streaming.Seconds

/**
 * @author jhp
  *         spark streaming实时过滤黑名单
 */
object TransformBlacklist {
  
  def main(args: Array[String]): Unit = {
    val conf = new SparkConf()
        .setMaster("local[2]")  
        .setAppName("TransformBlacklist")
    //实例化流上下文
    val ssc = new StreamingContext(conf, Seconds(5))
    
    val blacklist = Array(("tom", true))  
    val blacklistRDD = ssc.sparkContext.parallelize(blacklist, 5)  
    
    val adsClickLogDStream = ssc.socketTextStream("spark1", 9999)   
    val userAdsClickLogDStream = adsClickLogDStream
        .map { adsClickLog => (adsClickLog.split(" ")(1), adsClickLog) } 
    //转换RDD
    val validAdsClickLogDStream = userAdsClickLogDStream.transform(userAdsClickLogRDD => {
      val joinedRDD = userAdsClickLogRDD.leftOuterJoin(blacklistRDD)
      //RDD过滤
      val filteredRDD = joinedRDD.filter(tuple => {
        if(tuple._2._2.getOrElse(false)) {  
          false
        } else {
          true
        }
      })
      val validAdsClickLogRDD = filteredRDD.map(tuple => tuple._2._1) 
      validAdsClickLogRDD
    })
    
    validAdsClickLogDStream.print()
    //启动上下文
    ssc.start()
    ssc.awaitTermination()
  }
  
}

sparkstreaming实现过滤黑名单

sparkstreaming实现过滤黑名单
  • high2011
  • high2011
  • 2016-06-04 17:22:14
  • 959

Spark-Spark Streaming-广告点击的在线黑名单过滤

任务广告点击的在线黑名单过滤 使用 nc -lk 9999 在数据发送端口输入若干数据,比如:1375864674543 Tom 1375864674553 Spy 1375864674571...
  • youdianjinjin
  • youdianjinjin
  • 2016-05-11 12:29:15
  • 2102

通过过滤黑名单案例对SparkStreaming 透彻理解

SparkStreaming是随着流进来数据按照时间为单位生成job,然后触发job在cluster执行的一个流式处理引擎,实质上是加上了时间维度的批处理。DStream是一个RDD的集合,对DStr...
  • xiaonaughty
  • xiaonaughty
  • 2016-05-19 16:44:54
  • 1847

用spark streaming实现黑名单实时过滤

项目介绍: 本项目用spark streaming实现简单的黑名单实时过滤,用scala语言编写,用到的知识点如下: 1.RDD,弹性分布式数据集 2.ssc.socketTextStream("lo...
  • qq_37581329
  • qq_37581329
  • 2017-09-03 11:47:20
  • 141

动手实战联合使用Spark Streaming、Broadcast、Accumulator计数器实现在线黑名单过滤和计数

本博文主要包括: 1、Spark Streaming与Broadcast、Accumulator联合 2、在线黑名单过滤和计数实战一、Spark Streaming与Broadcast、Accum...
  • erfucun
  • erfucun
  • 2016-08-31 17:10:45
  • 2121

SparkStreaming通过读取文件动态黑名单过滤

SparkStream通过读取文件动态黑名单过滤定时从blackName中拷贝文件到write文件夹中public class CopyFile { public static void co...
  • qq_28095827
  • qq_28095827
  • 2017-11-26 17:11:23
  • 143

Spark 实现黑名单实时过滤

黑名单实时过滤 一、实验介绍 1.1 实验内容 本节课主要讲解 Spark 的 RDD 操作,让您对 Spark 算子的特性快速了解。通过演示案例实时黑名单过滤,让您切身体会到 RDD 的强大功...
  • oxuzhenyi
  • oxuzhenyi
  • 2017-07-02 16:37:20
  • 1018

scala程序写Spark程序实现黑名单过滤

package com.bigdata import org.apache.spark.rdd.RDD import org.apache.spark.{SparkContext, Spa...
  • kexin_010
  • kexin_010
  • 2016-12-19 16:54:39
  • 455

第106课: Spark Streaming电商广告点击综合案例黑名单过滤实现

第106课:  Spark Streaming电商广告点击综合案例黑名单过滤实现 /*王家林老师授课http://weibo.com/ilovepains  每天晚上20:00YY频道现场授课频道6...
  • duan_zhihua
  • duan_zhihua
  • 2016-05-19 21:36:40
  • 1162

第108讲: Spark Streaming电商广告点击综合案例动态黑名单过滤真正的实现代码

package com.dt.streaming; import java.sql.Connection; import java.sql.DriverManager; import java.sq...
  • qq_21234493
  • qq_21234493
  • 2016-05-25 07:04:49
  • 1147
收藏助手
不良信息举报
您举报文章:spark streaming scala 过滤黑名单
举报原因:
原因补充:

(最多只允许输入30个字)