[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序

目录

DStream窗口操作

DStream输出操作

DStream实例——实现网站热词排序


DStream的概述
Dstream(Discretized Stream)是Spark Streaming数据的基本传输单位。它表示一个连续的数据流,这个数据流可以是原始的数据输入流,也可以是将原始的数据输入流通过转换生成已处理的数据输入流

特点

1、Spark Streaming对流数据按秒/分等时间间隔进行微批划分,每个微批就是一个RDD
2、DStream由一系列连续的RDD组成,每个RDD都包含来自特定间隔的数据
3、DStream本质上就是一系列时间上连续的RDD(DStream = Seq[RDD])

 

DStream窗口操作

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第1张图片

一、window()

1编写WindowTest.scala

注意红框内容!!!

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第2张图片

2 运行程序并在master 9999 端口不断输入单词,观察到控制台输出内容

$ nc -lk 9999

1

2

3

4

5

6

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第3张图片

二、ReduceByKeyAndWindow()

1 编写ReduceByKeyAndWindowTest.scala

注意红框内容!!!

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第4张图片

2 运行程序并在master 9999 端口不断输入单词,观察到控制台输出内容

$ nc -lk 9999

A

A

B

B

c

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第5张图片

DStream输出操作

1 编写SaveAsTestFilesTest.scala

注意红框内容!!!

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第6张图片

2 运行程序

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第7张图片

3 启动Hadoop集群

$ start-all.sh

4 访问192.168.196.101(master):50070 点击【utilities】à【browse the file system】

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第8张图片

5 点击【data】à【SaveAsTestFiles

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第9张图片

 [Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第10张图片

6 可以看到均是以satf为前缀,txt为后缀

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第11张图片

DStream实例——实现网站热词排序

1.进入数据库

$ mysql -uroot –p   

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第12张图片

2.创建spark数据库,使用该数据库

$create database spark;

$ use spark;

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第13张图片

3.创建表

$ create table searchKeyWord(insert_time date,keyword varchar(30),search_count integer);

4.编写HotWordBySort.scala

注意红框内容!!!

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第14张图片

 [Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第15张图片

5.运行程序

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第16张图片

重新复制一个master窗口,在master 9999端口输入数据

nc lk 9999

Hadoop,111

Spark,222

Hadoop,222

Hive,222

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第17张图片

可以看到MySQL被写入数据

select * from searchKeyWord;

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第18张图片

[Spark、hadoop]DStream的窗口操作、输出操作、实例——实现网站热词排序_第19张图片

你可能感兴趣的:(spark,IDEA,hadoop,spark,hadoop,scala)