hadoop-小案例实现qq好友推荐

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

一、本文主要是hadoop hdfs文件系统和mapReduce离线计算框架整合小案例

二、前提是读者已经部署了hadoop的namenode、datanode、secodaynamenode

三、分析需求:

    1、好友列表一个人有多个好友,那么如何实现好友推荐呢?简单的二度关系这里是使用

    2、我的好友的好友有可能是我认识的人,所以将来进行好友推荐的时候就可以将这些人推荐给我(这里只是简单的关系,其实还可以做的复杂那就是我的好友的好友跟我有三个以上相同的好友才推荐给我这里我们不实现)

     3、比如我们的好友关系存储形式如下:

hadoop	hello
hdfs	world
xiaopi	w3c
w3c	xiaoming	
hello	world

那么我们这里可以得道的二度关系就需要笛卡尔积去获取了也就是hadoop-----hello ------world 这里 hadoop 和world 也就存在二度关系

程序里怎么实现呢?

四、1、启动namenode

[root@localhost bin]# ./hadoop start-all.sh 

       2、将我们的测试数据上传到hdfs文件系统

rz 选择测试文件上传到服务器
./hadoop dfs -put relation.txt  /home/ma/input/ 上传测试文件到hdfs文件系统

     

MapReduce实现QQ好友推荐 大家都知道qq用户量上亿,每个用户又有很多的好友,因此,数据量十分的庞大,如何才能实现QQ好友推荐呢?  下面举一个例子:  A有QQ好友B  B有QQ好友C  则A,C有可能是好友。  当A登录的时候,则会向A推荐C,当C登录的时候,则会向C推荐A。 package com.FriendsRecommended.findFrends; import java.io.IOExcep 阅读详情

相关推荐

hadoop学习笔记--8.MapReduce案例一:简单好友推介实现

一、好友推介概述         好友推荐算法在实际的社交环境中应用较多,比如qq软件中的“你可能认识的好友”或者是Facebook中的好友推介。常见的好友推介算法有六度分割理论,三元闭包论 最基本的好友推介算法。在这简单介绍最简单的好友推介算法。         假设用户A有好友A1,A2,A3,则A1,A2,A3相互之间都可能通过好友A认识,是潜在的好友关系。如果用户B有好友A1,A2,B1

liuzebin9的专栏 2037

Hadoop-1.2.1 QQ推荐好友例子

NULL 博文链接:https://listen-raining.iteye.com/blog/2279908

hadoop实现求共同好友

hadoop实现求共同好友

congge 1万+

大数据Hadoop学习之——好友推荐

一、算法说明 好友关系如图: 1、直接相连的表示两个人是直接好友关系; 2、两个人有相同的好友表示两个人是间接好友(当然可能两个人同时也是直接好友,如图hellohive)。 3好友推荐列表就是按照两个用户的共同好友数量排名 二、MapReduce分析 1、分两步MapReduce计算完成; 2、第一步先得到用户的间接好友关系数目,注意有直接好友关系的用户需要过滤掉; 3、第二步根...

xdkb159的博客 4997

hadoop2.7.1 mapreduce实现QQ好友推荐功能

Hadoop实现QQ好友推荐功能

jiang0426的博客 2973

第三节 Hadoop学习案例——MapReduce课程设计 好友推荐功能

Hadoop学习案例——MapReduce课程设计 好友推荐功能

qq_53114527的博客 5428

MapReduce案例好友推荐简单实现

一、好友推荐算法在实际的社交环境中应用较多,比如qq软件中的“你可能认识的好友”或者是Facebook中的好友推介。常见的好友推介算法有六度分割理论,三元闭包论最基本的好友推介算法。 学习分享好友推介算法。 假设用户A有好友A1,A2,A3,则A1,A2,A3相互之间都可能通过好友A认识,是潜在的好友关系。如果用户B有好友A1,A2,B1,则A1,A2,B1相互之间都可能通过好友B认识。如下图...

arne's Blog 3384

mapreduce实现——腾讯大数据QQ共同好友推荐系统【你可能认识的人】

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34380296的博客 2638

MapReduce实例——好友推荐

1. 实例介绍 好友推荐算法在实际的社交环境中应用较多,比如qq软件中的“你可能认识的好友”或者是Facebook中的好友推介。好友推荐功能简单的说是这样一个需求,预测某两个人是否认识,并推荐好友,并且某两个非好友的用户,他们的共同好友越多,那么他们越可能认识。 2. 数据流程 3. 具体实现 3.1 上传数据qq.txt tom cat hadoop hello hello mr tom...

sinat_34045444的博客 5049

hadoop2.7.3+win10+idea环境下:MapReduce实现二度好友推荐算法

hadoop2.7.3 + win10 + idea 环境下,利用MapReduce实现二度好友推荐算法,主要包含问题描述、思路分析、步骤讲解代码分析。

渣渣的夏天 1822

Hadoop集群大数据解决方案之MapReduce 程序实战进阶(QQ/微博好友推荐实现)(七)

准 备   经常玩QQ、微博的朋友不难发现,时不时浏览到图1类似的界面,说是你可能认识的人,是否需要加对方为好友,你发现其中有些人是真的认识,有些人是不认识的,那么这个QQ、微博好友推荐掌法是怎么练成的,现在我们来一探武功秘籍。 图1 QQ好友推荐界面 需 求   转化一下其实就是,已知ab是好友,bc是好友,那么得出ac科能认识,推荐ac是否加好友,典型的二度关系算法,当然以此类推还...

LXWalaz1s1s的博客 884

MapReduce编程-类似qq好友推荐(朋友的朋友)[文章最后 面试相关问题讲解]

1.案例一:好友推荐(朋友的朋友) 案例场景:在qq 微博等众多社交平台中,用户a有n位好友,在这n位好友里面的好友中有m位不是a的直接好友(例如用户b)。但是通过朋友的朋友,a与b之间有多位共同好友,换而言之,a是b可能认识的人。 那如何得到用户a可能认识的人呢?方法:利用两个map/resuce方法,第一个map/reduce得到朋友的朋友出现的次数,第二个map/reduce得到每个用户 可...

南国的技术栈 1162

[hadoop]MapReduce实例之好友推荐(六)

一、定义好友文件qq hadoop hello hdfs world tom cat cat dog hello world hello hdfs hadoop好友hello,hdfs好友world...依次类推。那么hadoopworld有共同的好友hello,所以hadoopworld可能具有好友关系,world就是hadoop推荐好友。计算出qq文件内符合上述条件的推荐好友

胖胖的ALEX 4742

互联网社交好友推荐

互联网社交好友推荐项目背景实验目的启动基础环境第一步:登录本机第二步:启动Hadoop集群实验步骤1代码分析2、创建项目第一步:自定义一个 FriendOfFriend 的输出类第二步:创建分组类FriendRecommendGroup第三步:创建执行好友推荐的任务类第四步:创建数据切分类第五步:创建好友推荐Reduce类第六步:创建排序Map类第七步:创建排序Reduce类3、运行代码第一步:...

u014552259的博客 628

实验——社交好友推荐实践

通过编写社交好友推荐MapReduce程序,加深笛卡尔积以及其结合MapReduce方式的理解,熟 练掌握MapReduce程序在处理企业实际项目问题的方法。前言一、二、实验步骤1.2.总结。

m0_68219172的博客 627

mapreduce案例_案例1-使用hadoop-mapreduce来统计并进行好友推荐

先来看一个图:途中相邻连线的人之间是彼此直接好友的关系,那么现在问个问题:基于上图,如果要给小明推荐一个好友,你会推荐谁?相信你很快就有答案了,答案就是凤姐,为什么是凤姐呢!我们能很清晰的看到凤姐与小明的共同好友是图中最多的。同样的,我们之前经常能在QQ里会看到,"你可能认识的人",有xx个共同好友。 那么我们推荐的规则是同一对”好友好友”(简称FOF)出现的次数,比如:如花的好友好友...

weixin_35728636的博客 560

3.4 Hadoop-MapReduce,模拟QQ好友推荐

模拟QQ好友推荐好友好友,出现次数最多的推荐第一行为QQ账号名,后面同排为自己好友工程结构:Mapper1:package com.test.friend;import java.io.IOException;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.ha...

心雨先生 687
上一篇: SpringCloud服务注册、发现与调用
下一篇: hadoop2.x搭建和部署以及遇到的问题
马仁喜
博客等级 码龄10年 3粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值