千家信息网

MapReduce的简单案例

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,字数统计:MapReduce过程:写一个继承mapper的类,声明输入(基本固定)输出(看需求)类型重写map(K,V,context),map方法会被调用多次,每次调用map方法读取split传过来
千家信息网最后更新 2026年11月03日MapReduce的简单案例

字数统计:

MapReduce过程:

  1. 写一个继承mapper的类,声明输入(基本固定)输出(看需求)类型

  2. 重写map(K,V,context),map方法会被调用多次,每次调用map方法读取split传过来的一行数据,需要将这一行数据切割(StringTokeizer类,默认看空格切割)

While遍历,通过context输出



要书写一个程序主入口类,将程序打包发给JobTracker(移动计算而不是移动数据)

注意,这里因为是本地的程序,将程序打成xxx.jar包,放入namenode节点的服务器上执行

Hadoop/bin有个hadoop命令

#./hadoop (回车) 展开所有和hadoop组合的命令

#./hadoop jar path/xxx.jar ww.cola.JobRun


------------------------------------------------------------------

好友推荐系统:笛卡尔积运算

一对朋友的关系,每个个体既是主又是从,即一个人又做K又做V,

因此map处理后的数据会增加,每调用一次map方法,输出两次数据,且K和V

对调。

Map过程:

在经过系统默认shuff处理,对相同K值得数据进行了合并

出现如下形式:(Key和Value用冒号隔开):

A:B C D E //要处理他们之间可能的关系,只要将Value值做笛卡尔积

B: G

C:F

。。。

。。

Reduce过程:

用Set存储因为可以去重


---------------------------------------------------------------------------------

精准广告推送:并且按照关注度由高到底排序

案例:在新浪微博中给小米手机打广告,找到那些关注手机的人,这些用在一登录后就弹出广告,并按关注度高低排序。

关注度权重公式:W=TF*Log(N/DF) (打分)

TF:当前的关键字在该片微博内容中出现的次数

DF:当前的关键字在所有微博中内容中出现的条数,比如,"小米",在某条微博中出现4次,只记为1条数据

N:微博总数

结果显示:(为了减少磁盘内容的开销,将不同关键词用唯一数字标识)

微博的id 关键词1:分数 关键词2:分数 关键词3:分数 ….


之后我会专门写一篇博客


数据 关键 关键词 程序 关注度 分数 广告 方法 过程 处理 输出 一行 关键字 内容 命令 小米 手机 系统 笛卡尔 排序 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华服互联网科技靠谱吗 天津市摩尔互联网科技 互联网科技财经 互联网是不是新科技 互联网金融 金融科技 善班互联网科技 小马过河互联网科技 科技创新互联网企业 互联网金融 科技创新 中国互联网金融科技基金 互联网公司会议桌创意科技软装饰 互联网科技创新服务 阿大互联网科技有限公司 广西互联网科技孵化中心 浙南科技城互联网大厦建设工程 威龙国际互联网科技公司 互联网科技融合创新 科技互联网行业投资研究 互联网科技大佬云集 互联网领先科技成果宣传视频 哈尔滨大商圈互联网科技有限公司 科技互联网项目 互联网科技深圳 上海喔噻互联网科技 碳银互联网科技有限公司 知域互联网科技有限公司大骗子 互联网科技人工智能实验室 朱啸虎曾投资哪些互联网科技企业 有人说阿里系是互联网科技企业 广州有谷有贝互联网科技有限公司
0