余老师带你学习大数据框架全栈第十一章Flink第七节社交网络数据分析案例

社交网络数据分析案例

数据集介绍

该数据集包含2153471个用户,1143092个场所,1021970个签到,27098490个社交关系以及用户分配给场所的2809581评级;所有这些都是通过公共API从Foursquare应用程序中提取的。所有用户信息均已匿名,即用户地理位置也已匿名。每个用户都由一个id和GeoSpatial位置表示。场地也一样。数据包含在五个文件中:users.dat,containers.dat,checkins.dat,socialgraph.dat和rating.dat。以下是有关所有这些文件的内容和使用的更多详细信息。

文件内容:

  1. users.dat:由一组用户组成,因此每个用户都有一个唯一的ID和代表用户家乡位置的地理空间位置(纬度和经度)。

  2. events.dat:由一组场所(例如,餐馆)组成,以便每个场所都有唯一的ID和地理空间位置(纬度和经度)。

  3. checkins.dat:标记用户在场所的签到(访问)。每个签到都具有唯一的ID以及用户ID和场所ID。

  4. socialgraph.dat:包含用户之间存在的社交图边缘(连接)。每个社交关系由两个唯一的ID(first_user_id和second_user_id)表示的两个用户(朋友)组成。

  5. rating.dat:包含隐式评分,用于量化用户对特定地点的喜欢程度。

数据集统计分析

  1. hadoopc2创建hive表,
CREATE DATABASE IF NOT EXISTS test;
USE test;
DROP TABLE IF EXISTS `SOCIALGRAPH`;
CREATE EXTERNAL TABLE IF NOT EXISTS `SOCIALGRAPH` (
  firstUserId STRING, 
  secondUserId STRING
)
ROW FORMAT DELIMITED 
FIELDS TERMINATED BY '\|'
LINES TERMINATED BY '\n' 
LOCATION '/user/hive/warehouse/test.db/socialgraph'
tblproperties ("skip.header.line.count"="2");

---select trim(firstUserId) as firstUserId, trim(secondUserId) as secondUserId from SOCIALGRAPH;
  1. hadoopc2(hive --service cli),统计
select count(1) from SOCIALGRAPH;
---27098490

select count(distinct Id) from (select trim(firstUserId) as Id from SOCIALGRAPH union select trim(secondUserId) as Id from SOCIALGRAPH)u;
---1880423

编译scala分析程序

bigdatawithloadeddatac1=>/tools:

  1. 进入bdcode/Flink, 编译程序
mvn clean scala:compile compile package -Dexec.mainClass="com.kinginsai.wc.SocialGraph"

也可以尝试执行单机版此数据处理程序,

mvn exec:java -Dexec.mainClass="com.kinginsai.wc.SocialGraph"
  1. cp target/Flink-1.0-SNAPSHOT-jar-with-dependencies.jar 到 /workspace_logs/

bigdatawithloadeddatac1=>/hadoopc1/hadoopc1:

  1. 集群上执行,
nohup yarn-session.sh -n 3 -s 3 -jm 1024 -tm 1024 -nm test -d 2>&1 >/tmp/yarnsession.log &
nohup flink run -c com.kinginsai.wc.SocialGraph /workspace_logs/Flink-1.0-SNAPSHOT-jar-with-dependencies.jar 1 hdfs://dmcluster/user/hive/warehouse/test.db/socialgraph/socialgraph.dat 50 2>&1 >/tmp/flink.log &
tail -f /tmp/flink.log
  1. 结果分析

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

社会网络分析方法

在这里插入图片描述
在这里插入图片描述

你有没有想过,你的朋友圈里的每一个人都是你的社交网络中的一个节点,而你们之间的互动则是社交网络中的边。这些节点和边构成了一个复杂的网络,而这个网络又会影响你的生活和决策。

这就是社会网络分析的基本概念。社会网络分析是一种研究人际关系和信息传播的方法,它可以帮助我们理解社交网络中的结构和动态,从而更好地预测和干预社会现象。

社会网络分析是近年来一种新兴的社科研究方法,帮助很多学者不断产出优秀的科研成果;有人甚至将“社会网络分析”称为“论文发表神器”,知网上以”社会网络分析“为关键词进行搜索,发文量呈上升的趋势。

在这里插入图片描述

社会网络分析已被广泛应用于社会科学的各个领域,如社会学、经济学、管理学、心理学、人类学、图书情报档案学、新闻传播学、教育学、数学、通信科学等学科。

详细学习内容可观看Spark快速大数据处理扫一扫~~~或者引擎搜索Spark余海峰
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值