大数据应用期末总评Hadoop综合大作业

news/2024/7/19 9:54:28 标签: 大数据, 爬虫, 数据库

作业要求来源于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3339

1.将爬虫大作业产生的csv文件上传到HDFS

此次作业选取的是爬虫《人性的弱点全集》短评数据生成的cm.csv文件;爬取的数据总数为10991条。

cm.csv文件数据如下图所示:

将cm.csv文件上存到HDFS

2.对CSV文件进行预处理生成无标题文本文件

csv文件数据预处理,删除第一行字段名称

编辑pre_deal.sh文件进行数据的取舍处理

让pre_deal.sh文件生效,并显示前面几条数据

3.把hdfs中的文本文件最终导入到数据仓库Hive中

在hive中创建bdlab数据库,显示如下:

因为此次使用的是bdlab的数据库,所以在bdlab中创建相应的表为bigdata_cmd

4.在Hive中查看并分析数据

数据分析:图上显示,该爬取的数据属性主要包括评价的日期、评价的内容、用户名称和星级(一些无关分析的属性在进行数据预处理的时候已经去除,剩下的是有关数据分析的属性)。以上显示的数据可以看到一些读者对《人性的弱点全集》这本书的一些好的坏的态度。以下利用Hive进行更进一步的数据分析。

5.用Hive对爬虫大作业产生的进行数据分析,写一篇博客描述你的分析过程和分析结果。(10条以上的查询分析)

(1)查询前20条用户的星级评价

分析:上图所示的查询内容显示,评星三星以上的占较大的一部分;四星、五星的总占比约占一半(五星为满星),这说明读者们对于《人性的弱点全集》这本书的评价还是算中上等水平的,这也从侧面反映出该书是一本不错的书。

(2)查询读者给该书一星评星的短评

分析:上图所示的查询内容显示,读者们给该书评一星的原因是读者们认为这本书一味的励志,一味的给读者灌输一些通俗易懂却光说不练的道理,过于的心灵鸡汤。这是读者们反感它的地方以及给出一星评价的原因。

(3)查询读者给该书三星(即中评,不喜不厌的态度)评星的短评

分析:上图所示的查询内容显示,读者们认为该书的内容是有用的,对于人的成长也是有一定的帮助的,但是对于书本推销式的表达方式读者还是略显反感;整本书读下来也略显枯燥。这些都是读者们评三星的不喜不厌的原因。

(4)查询读者给该书五星评星的短评

分析:上图所示的查询内容显示,读者们给该书评五星的原因是读者们认为这是一本不错的书,也非常的经典,能给人深省和能读懂一些道理会让读者有一些感触,是值得一看的经典之书。所以读者买账的地方可能就是该书能给读者带来一些感触反省和一些道理。

(5)查询读者高评星与低评星数量(高低评星以三星为界限)

分析:上图所示查询内容显示,高评星(4星、5星)的数量为8360条,低评星(1星、2星)的数量为722条。从数量上比较可以知道读者对于《人性的弱点全集》这本书大体是持好的敏感度的,大多的读者认为这是一本好书,总体的评价也是好的趋向的。

 (6)查询评五星的用户名

(7)查询cm.csv文件数据中用户名不重复的数据量

分析:上图所示查询内容显示,用户名不重复评论的数据为4958条,差不多占数据量的一半,说明爬取的数据中因用户名重复的数据还是较多的,也说明的是同一个用户有过多次评论的可能,衍生的一个可能是同一个用户名的用户不同时间多次阅读该书从而发表的不同的评价;如果是这个可能同一个用户评论的内容也还是拥有参考价值的,但是还是要注意过多的数据重复。

(8)查询cm.csv文件数据中评论不重复的数据量

分析:上图所示查询内容显示,评论内容不重复的数据为5627条,占爬取总数据的一半往上。说明有5627条读者评论数据不存在重复,可用性的数据量还是较大的;较大的可用性数据量在做数据分析的时候是能够更准确的把握读者的对该书的态度和总体的评价的,所以此次的可用性数据和此次的数据分析是有一定的意义和参考价值的。

(9)查询读者给该高评价的短评

分析:上图所示查询内容显示,让人受益匪浅、启发、励志、实用和值得深思等是读者给该书高评价的原因,这些都是读者买该书账的地方。一个繁杂的社会、一个谁都不容易的社会氛围需要一些正面的东西来给人们一些前进的力量,读者可能可以在书中找到内心共鸣的地方所以喜欢这本书也所以给该书高的评价。

(10)查询三星评价数量

分析:上图所示查询内容显示,三星评价的数据量为1806条,约占总数据量的10%,比例不大;这也说明有将近一成的读者对于《人性的弱点全集》这本书不感冒。

(11)查询五星评价处于表格的序号

 

以上为此次Hadoop综合大作业的所有内容。从Ubuntu到MySQL到Hadoop到hbase到hive再到整个Hadoop整个环境的配置完成,这一路下来都是为最后的这个综合作业做准备。这期间,遇到过这个系统环境安装配置好到进不去hive,遇到过输入法的输入出错,遇到过格式化丢失Datanode等一系列的问题;这个过程必须是细心谨慎的,要不就是一步错后面就会卡死无法进行下去。学了几次这些内容,这次是比较有条理的一次。

转载于:https://www.cnblogs.com/CM33/p/11002121.html


http://www.niftyadmin.cn/n/815234.html

相关文章

常用类作业

package 常用类; import java.util.*; public class number {public static void main(String[] args) { Random anew Random(); int num0; for(int i0;i<5;i) { numa.nextInt(56); System.out.println("输出随机学号:"num); } } } package 常用类; import java.u…

电脑电流,电脑有电流怎么办?在YY上说话总是出现吱吱 – 手机爱问

2018-10-07电脑音响有声音耳机没有声音耳机的麦克风也说不起话 怎么回事下载个驱动精灵重新驱一下声卡驱动&#xff1b; 打开高清音频控制器---音频I/O----设置关闭前面板检测然后右击右下角的小喇叭图标-----音频控制器-----设置一下麦克声音WIN7系统麦克调置如下&#xff1a…

1_class

职业属性控制表class职业ID 已有范本 此表数据不可删除pvpdam1#1#1 [pvp的物理 技能 治疗倍率] 1.1就是伤害为1.1倍pvedam1#1#1 [pve的物理 技能 治疗倍率]msbv1#1 [pvp免伤倍率#pve免伤倍率 写0.8只收到80%伤害]maxdodge职业的最大躲避 比如写40就是最大为40 但是会员表…

买二手服务器选什么型号的,二手服务器主机值得买吗

二手服务器主机值得买吗 内容精选换一换该API用于获取集群下所有节点池。集群管理的URL格式为&#xff1a;https://Endpoint/uri。其中uri为资源路径&#xff0c;也即API访问的路径集群管理的URL格式为&#xff1a;https://Endpoint/uri。其中uri为资源路径&#xff0c;也即API…

java 插件原理_javaweb项目插件实现机制

如题&#xff0c;java开发web程序想实现插件机制有什么办法&#xff1f;就比如&#xff1a;一个论坛&#xff0c;里面有签到&#xff0c;积分&#xff0c;第三方登录&#xff0c;编辑器选择等等的功能&#xff0c;现在我想把他们都抽出来&#xff0c;当成插件&#xff0c;论坛核…

git send-email时报错:Client host rejected: cannot find your hostname 如何处理?

1. 先找出ip对应的域名 dig short -x <your ip> 2. 如果第1步没有输出,那么需要将hostname与ip绑定,如:hostname为jello,那么是往/etc/hosts中写入一下内容 <ip> jello 转载于:https://www.cnblogs.com/dakewei/p/11008986.html

java服务器 客户端 文件传输,基于Java的客户端与服务器文件传输

基于Java的客户端与服务器文件传输 内容精选换一换云堡垒机不仅拥有传统4A安全管控的基本功能特性&#xff0c;包括身份认证、账户管理、权限控制、操作审计四大功能。还拥有高效运维、工单申请等特色功能。采用多因子认证和远程认证技术&#xff0c;加强用户身份认证管理。引用…

雷林鹏分享:MySQL NULL 值处理

我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时&#xff0c;该命令可能就无法正常工作。 为了处理这种情况&#xff0c;MySQL提供了三大运算符: IS NULL: 当列的值是 NULL,此运算符返回 true。 IS NOT NULL: 当…