我们在网页上经常可以看到比如 百度热榜微博热搜 这样的排行数据,那么我们在进行网络搜索的时候如何统计这些数据呢?

热词统计有很多中方法,这里主要记录下flink如何进行热词统计。

一、场景

小白在网络上搜索水果相关内容,如何记录各中水果被搜索的次数呢?通过搜索的次数推荐搜索内容给用户,需要如何实现呢?

统计的水果有:“苹果”, “梨”, “西瓜”, “葡萄”, “火龙果”, “橘子”, “桃子”, "香蕉"

二、实现

如下为设计demo

我们先定义一个水果的数组FRUIT

private static final String[] FRUIT = { "苹果", "梨", "西瓜", "葡萄", "火龙果", "橘子", "桃子", "香蕉" };

获取数据流,随机模拟搜索的水果

统计结构:Tuple2<String, Integer> 水果名称,搜索次数

通过 keyBy(0) 聚合相同名称的水果

通过 sum(1) 统计搜索次数

final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(1);DataStream<Tuple2<String, Integer>> fruit = env.addSource(new SourceFunction<Tuple2<String, Integer>>() {private volatile boolean isRunning = true;private final Random random = new Random();@Overridepublic void run(SourceContext<Tuple2<String, Integer>> ctx) throws Exception {while (isRunning) {TimeUnit.SECONDS.sleep(1);ctx.collect(Tuple2.of(FRUIT[random.nextInt(FRUIT.length)], 1));}}@Overridepublic void cancel() {isRunning = false;}});
fruit.keyBy(0).sum(1).print();env.execute("fruit");

运行结果:

当统计完成后可以将统计好的数据传到页面上通过组建绘制词云哦

Flink学习笔记(八):flink热词统计相关推荐

  1. kafka jar包_Windows环境下Flink消费Kafka实现热词统计

    前言碎语 昨天博主写了<windows环境下flink入门demo实例>实现了官方提供的最简单的单词计数功能,今天升级下,将数据源从socket流换成生产级的消息队列kafka来完成一样的 ...

  2. java 热词推荐搜索实现,Flink 热词统计(1): 基础功能实现

    本系列文章将从热词统计需求讲起,讲解flink在实际项目中的应用.部署.容错.项目中的代码为scala所编写,没有用 java 的原因是scala语言看起来更加简练,同时与java语言的兼容性较好,可 ...

  3. 结对第二次—文献摘要热词统计及进阶需求

    课程链接:软件工程1916|W(福州大学) 作业要求:结对第二次-文献摘要热词统计及进阶需求 结对学号:221600205 | 221600207 作业目标1:一.基本需求:实现一个能够对文本文件中的 ...

  4. MongoDB 学习笔记八 复制、分片、备份与恢复、监控

    MongoDB 学习笔记八 复制.分片.备份与恢复.监控 MongoDB复制(副本集) 什么是复制? MongoDB 复制原理 MongoDB 副本集设置 副本集添加成员 MongoDB 分片 分片 ...

  5. 结对第一次—原型设计(文献摘要热词统计)

    课程 软件工程1916|W(福州大学) 作业要求 结对第一次-原型设计(文献摘要热词统计) 结对学号 221600426     221600401 原型设计工具 墨刀 原型浏览 点击浏览 作业目标 ...

  6. ReactJS学习笔记八:动画

    ReactJS学习笔记八:动画 分类: react学习笔记 javascript2015-07-06 20:27 321人阅读 评论(0) 收藏 举报 react动画 目录(?)[+] 这里只讨论Re ...

  7. 【opencv学习笔记八】创建TrackBar轨迹条

    createTrackbar这个函数我们以后会经常用到,它创建一个可以调整数值的轨迹条,并将轨迹条附加到指定的窗口上,使用起来很方便.首先大家要记住,它往往会和一个回调函数配合起来使用.先看下他的函数 ...

  8. python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑

    python3.4学习笔记(八) Python第三方库安装与使用,包管理工具解惑 许多人在安装Python第三方库的时候, 经常会为一个问题困扰:到底应该下载什么格式的文件? 当我们点开下载页时, 一 ...

  9. python数据挖掘学习笔记】十三.WordCloud词云配置过程及词频分析

    #2018-03-28 09:59:40 March Wednesday the 13 week, the 087 day SZ SSMR 11,12因为涉及到数据库被我暂时放弃了 python数据挖 ...

最新文章

  1. 第一本的java 的小总结
  2. JavaEE——JavaScript
  3. R语言dplyr包对数据进行超前或者之后处理(lead、lag)实战
  4. Web前端小白入门指迷
  5. ux设计师薪水_我是如何从33岁的博物馆导游变成专业的Web开发人员和UX设计师的:我的…...
  6. darknet_ros消息在其它包中的订阅
  7. block相对于delegate有哪些优缺点?
  8. 体验Windows server 2012上安装SQL 2012
  9. 正确解决:关于Lattic Diamond软件注册不成功(license问题)
  10. lpush rpush 区别_php-redis中文参考手册_list容器相关_lPush_rPush_lPushx_rPu...
  11. php a标签加nofollow,Z-Blog给文章所有的站外a链接添加nofollow的方法
  12. php fflush函数的用法,fflush 函数
  13. stm32之蓝牙无线超声波测距
  14. gdc服务器ssl证书不一致,如何解决SSL证书不匹配错误
  15. Linux虚拟地址空间
  16. 数据挖掘导论(Pang-Ning Tan)习题记录
  17. 基于S12ZVM的无感FOC失步检测
  18. 九.配置SMB共享(Samba共享)
  19. html春节祝福烟花,《烟花AR》用ARkit带来浪漫情人节和新春祝福
  20. 用matlab求上三角矩阵的逆,现代科学运算—MATLAB语言与应用-中国大学mooc-题库零氪...

热门文章

  1. Python用10行代码爬取大批美女图片
  2. 2020年重庆区块链论坛,大石化新区与时俱进
  3. 如何用HTML写一个旋转万花筒
  4. 达人评测 骁龙898参数
  5. Dobbo微服务项目实战(详细介绍+案例源码) - 5.推荐好友列表/MongoDB集群/动态发布与查看
  6. EO类与VO类--组装转换
  7. 使用cv2实现图片与numpy数组的相互转化
  8. 电路设计_USB转串口,CH340T和341T心得
  9. MetaTrader LiveUpdate 概览
  10. 30个T的硬盘都不够装,你想要的资源都在这里