当前位置: 首页 > news >正文

行业类网站应如何建设新闻摘抄2022最新5篇

行业类网站应如何建设,新闻摘抄2022最新5篇,网络服务器忙请稍后重试3008是什么意思,通过音乐做网站外链一、上下文 《Spark-Streaming初识》中的NetworkWordCount示例只能统计每个微批下的单词的数量,那么如何才能统计从开始加载数据到当下的所有数量呢?下面我们就来通过官方例子学习下Spark-Streaming有状态计算。 二、官方例子 所属包:org.…

一、上下文

《Spark-Streaming初识》中的NetworkWordCount示例只能统计每个微批下的单词的数量,那么如何才能统计从开始加载数据到当下的所有数量呢?下面我们就来通过官方例子学习下Spark-Streaming有状态计算。

二、官方例子

所属包:org.apache.spark.examples.streaming

object StatefulNetworkWordCount {def main(args: Array[String]): Unit = {if (args.length < 2) {System.err.println("Usage: StatefulNetworkWordCount <hostname> <port>")System.exit(1)}StreamingExamples.setStreamingLogLevels()val sparkConf = new SparkConf().setAppName("StatefulNetworkWordCount")//创建微批为 1 秒的上下文val ssc = new StreamingContext(sparkConf, Seconds(1))//指定 checkpoint 目录ssc.checkpoint(".")// 用一个 List 初始化一个 RDDval initialRDD = ssc.sparkContext.parallelize(List(("hello", 1), ("world", 1)))// 在目标ip:port上创建一个ReceiverInputDStream,并对分隔测试的输入流中的单词进行计数(例如由'nc'生成)val lines = ssc.socketTextStream(args(0), args(1).toInt)val words = lines.flatMap(_.split(" "))val wordDstream = words.map(x => (x, 1))// 使用mapWithState更新累积计数这将给出一个由状态组成的DStream(即单词的累积计数)val mappingFunc = (word: String, one: Option[Int], state: State[Int]) => {val sum = one.getOrElse(0) + state.getOption.getOrElse(0)val output = (word, sum)state.update(sum)output}val stateDstream = wordDstream.mapWithState(StateSpec.function(mappingFunc).initialState(initialRDD))stateDstream.print()ssc.start()ssc.awaitTermination()}
}

三、分析

1、构建SparkConf

它是Spark应用程序的配置,用于设置Spark的各种参数。支持链式设置

new SparkConf().setMaster("local").setAppName("My app")

 一旦SparkConf对象传递给Spark,用户就不能再对其进行修改。Spark不支持在运行时修改配置

2、构建StreamingContext

它是Spark Streaming功能的主要入口点,且提供了从各种输入源创建[[org.apache.spark.streaming.dstream.DStream]] 的方法。

创建和转换DStreams后,可以分别使用start()、stop()启动和停止流计算,awaitTermination()允许当前线程通过stop()或异常等待上下文的终止。

3、设置checkpoint

StreamingContext最终还是通过SparkContext来设置checkpoint,但其实都是为各自的checkpointDir设置checkpoint路径,在有状态计算中checkpoint是必须的。

所谓有状态计算就必须要把历史状态给存储下来,spark中使用使用checkpoint来实现这个存储,每个微批的数据的计算都要更新到历史状态中。

class SparkContext(config: SparkConf) extends Logging {private[spark] var checkpointDir: Option[String] = None}
class StreamingContext private[streaming] (_sc: SparkContext,_cp: Checkpoint,_batchDur: Duration) extends Logging {private[streaming] var checkpointDir: String = {if (isCheckpointPresent) {sc.setCheckpointDir(_cp.checkpointDir)_cp.checkpointDir} else {null}}}

4、初始化一个RDD

为什么要初始化一个RDD呢?我们看看下面是如何用到的。

5、创建一个ReceiverInputDStream

这里是从TCP源hostname:port创建输入流。使用TCP套接字接收数据,并使用给定的转换器将接收字节解释为对象

6、处理单词

从源码中可以看出会把这样的文本

hadoop spark flink kafka hadoop spark-streaming

处理成这样的格式

hadoop 1

spark 1

flink 1

kafka 1

hadoop 1

spark-streaming 1

6、使用mapWithState更新累积计数

该算子可以维护并更新每个key的状态。

这里用到一个新对象:StateSpec,且用到了它的两个方法,initialState和function

initialState:设置包含“mapWithState”将使用的初始状态的RDD`

function:设置实际的状态更新操作

//第1个参数:状态 key 的类别
//第2个参数:状态 value 的类别
//第3个参数:状态 数据 的类别
//第4个参数:状态 处理完要返回 的类别
def mappingFunction(key: String, value: Option[Int], state: State[Int]): Option[String] = {// 使用state.exists()、state.get()、state.update()和state.remove()来管理状态,并返回必要的字符串
}

四、运行

运行Netcat

nc -lk 9999

新建一个窗口运行官方例子

cd /opt/cloudera/parcels/CDH-6.3.1-1.cdh6.3.1.p0.1470567/lib/spark/
bin/run-example org.apache.spark.examples.streaming.StatefulNetworkWordCount cdh1 9999


大多数高校硕博生毕业要求需要参加学术会议,发表EI或者SCI检索的学术论文会议论文:
可访问艾思科蓝官网,浏览即将召开的学术会议列表。会议如下:

第四届大数据、信息与计算机网络国际学术会议(BDICN 2025)

  • 广州
  • https://ais.cn/u/fi2yym

第四届电子信息工程、大数据与计算机技术国际学术会议(EIBDCT 2025)

  • 青岛
  • https://ais.cn/u/nuQr6f

第六届大数据与信息化教育国际学术会议(ICBDIE 2025)

  • 苏州
  • https://ais.cn/u/eYnmQr

第三届通信网络与机器学习国际学术会议(CNML 2025)

  • 南京
  • https://ais.cn/u/vUNva2
http://www.yayakq.cn/news/164695/

相关文章:

  • 七牛云可以做网站的存储空间吗页面设计培训学校
  • 烟台住房和城乡建设厅网站特色个人网页设计
  • 咸宁网站制作培训阿克苏网站建设服务
  • 浙江中企建设集团有限公司网站兰陵住房建设局网站
  • 昆明网站建设高端定制建网站报价
  • 网站地图怎样做软件开发人员外包
  • wordpress 多语言 站点天津网站建设运营方案
  • 一般设计网站页面用什么软件做苏州知名网站建设公司排名
  • 传统外贸网站的seo运用网页布局的设计原则
  • 宿迁新站seo怎么在网上建网站
  • 网站建设管理软件上海网页优化软件
  • 如何查网站点击量校园网站建设调查问卷
  • 网站名查找如何免费虚拟网站
  • 做跨境电商一件代发的网站怎么做网站倒计时
  • 廊坊做网站公司排名网站开发接活
  • 电子商务网站建设与管理的实验报告电子商务网站建设的流程
  • 灵感网站砀山县住房和城乡建设局网站
  • 西安网站推广慧创科技亿网域名
  • 河南网站建设怎么收费wordpress收不到邮件
  • 网站开发人员年薪网站cname解析
  • 化妆品网站建设思路学网页制作的网站
  • asp 手机网站页面设计教案
  • 仿win8 网站模版安徽网站设计流程
  • 站长工具seo综合查询推广qq官网登录入口手机版
  • 承德网站建设制作大连建设工程信息网下载中心
  • 网站怎么做咨询邯郸网站设计制作
  • 惠山做网站公司服务器购买网站
  • 网站数据库默认地址重庆企业网站推广
  • 佛山公司网站建设建设通网站是什么时间成立
  • 关于产品网站建设的问题微信小程序论坛