服务热线

全国咨询热线:0755-28995058

产品默认广告
当前位置:主页 > 技术支持 > UV机知识 >

如何利用Spark Streaming实现UV统计

文章出处:未知责任编辑:三昆科技人气:发表时间:2017-08-05 08:49

问题描述:首先以一个简单的示例开始:用Spark Streaming对从TCP连接中接收的文本进行单词计数。 /** * 功能:用spark streaming实现的针对流式数据进行单词计数的程序。 * 该程序只是对数据流中的每一批数据进行单独的计数,而没有进行增量计数。

回答(1).首先以一个简单的示例开始:用Spark Streaming对从TCP连接中接收的文本进行单词计数。 /** * 功能:用spark streaming实现的针对流式数据进行单词计数的程序。 * 该程序只是对数据流中的每一批数据进行单独的计数,而没有进行增量计数。

回答(2).首先以一个简单的示例开始:用Spark Streaming对从TCP连接中接收的文本进行单词计数。 /** * 功能:用spark streaming实现的针对流式数据进行单词计数的程序。 * 该程序只是对数据流中的每一批数据进行单独的计数,而没有进行增量计数。 * 环境:spark 1.6.1, scala 2.10.4 */ // 引入相关类库 import org.apache.spark._ import org.apache.spark.streaming._ object NetworkWordCount { def main(args: Array[String]) { // Spark Streaming程序以StreamingContext为起点,其内部维持了一个SparkContext的实例。 // 这里我们创建一个带有两个本地线程的StreamingContext,并设置批处理间隔为1秒。 val conf = new SparkConf().setMaster("local[2]").setAppName("NetworkWordCount") val ssc = new StreamingContext(conf, Seconds(1)) // 在一个Spark应用中默认只允许有一个SparkContext,默认地spark-shell已经为我们创建好了 // SparkContext,名为sc。因此在spark-shell中应该以下述方式创建StreamingContext,以 // 避免创建再次创建SparkContext而引起错误: // val ssc = new StreamingContext(sc, Seconds(1)) // 创建一个从TCP连接获取流数据的DStream,其每条记录是一行文本 val lines = ssc.socketTextStream("localhost", 9999) // 对DStream进行转换,最终得到计算结果 val res = lines.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _) // 打印该DStream中每个RDD中的前十个元素 res.print() // 执行完上面代码,Spark Streaming并没有真正开始处理数据,而只是记录需在数据上执行的操作。 // 当我们设置好所有需要在数据上执行的操作以后,我们就可以开始真正地处理数据了。如下: ssc.start() // 开始计算 ssc.awaitTermination() // 等待计算终止 } } 为了测试程序,我们得有TCP数据源作为输入,这可以使用Netcat(一般linux系统中都有,如果是windows系统,则推荐你使用 Ncat ,Ncat是一个改进版的Netcat)。如下使......

回答(3).首先,需要将以下代码编译成jar包,然后在flume中使用,代码转自这里 (如果发现需要依赖的工具类神马的,请在相同目录下的scala文件中找一找) package org.apache.spark.streaming.flume.sink import java.net.InetSocketAddress import java....

回答(4).初始化的过程主要可以概括为两点: 1)调度器的初始化。 调度器调度 Spark Streaming 的运行,用户可以通过配置相关参数进行调优。 2)将输入流的接收器转化为 RDD 在集群进行分布式分配,然后启动接收器集合中的每个接收器。

回答(5).  初始化的过程主要可以概括为两点:   1)调度器的初始化。   调度器调度 Spark Streaming 的运行,用户可以通过配置相关参数进行调优。   2)将输入流的接收器转化为 RDD 在集群进行分布式分配,然后启动接收器集合中的每个接收器。   针对不同的数据源, Spark Streaming 提供了不同的数据接收器,分布在各个节点上的每个接收器可以认为是一个特定的进程,接收一部分流数据作为输入。

回答(6).参看这个贴子 里面说介绍

回答(7).随着大数据的发展,人们对大数据的处理要求也越来越高,原有的批处理框架MapReduce适合离线计算,却无法满足实时性要求较高的业务,如实时推荐、用户行为分析等。 Spark Streaming是建立在Spark上的实时计算框架,通过它提供的丰富的API、基于内.

本文章由三昆厂家整理原创,转载请注明出处:http://www.skunuv.com/UVj/3691.html

此文TAG标签:

推荐文章

最新资讯文章

在线客服

主营:UV机,LEDUV机,UV固化机,UVLED光固化机,UV烤箱,UV灯管,IR隧道炉,UV配件

李炳基 李炳基:13823369867 黄朝阳 黄朝阳:13510246266 黄永贵 黄永贵:13913507139
座机:0755-28995058
传真:0755-89648039
在线客服