开学第一测 大数据技术测试
Result文件数据说明:
Ip:106.39.41.166,(城市)
Date:10/Nov/2016:00:01:02 +0800,(日期)
Day:10,(天数)
Traffic: 54 ,(流量)
Type: video,(类型:视频video或文章article)
Id: 8701(视频或者文章的id)
测试要求:
1、 数据清洗:按照进行数据清洗,并将清洗后的数据导入hive数据库中。
两阶段数据清洗:
(1)第一阶段:把需要的信息从原始日志中提取出来
ip: 199.30.25.88
time: 10/Nov/2016:00:01:03 +0800
traffic: 62
文章: article/11325
视频: video/3235
(2)第二阶段:根据提取出来的信息做精细化操作
ip--->城市 city(IP)
date--> time:2016-11-10 00:01:03
day: 10
traffic:62
type:article/video
id:11325
(3)hive数据库表结构:
create table data( ip string, time string , day string, traffic bigint,
type string, id string )
2、数据分析:在HIVE统计下列数据。
(1)统计最受欢迎的视频/文章的Top10访问次数 (video/article)
(2)按照地市统计最受欢迎的Top10课程 (ip)
(3)按照流量统计最受欢迎的Top10课程 (traffic)
3、数据可视化:
将统计结果倒入MySql数据库中,通过图形化展示的方式展现出来。
当我拿到原数据后,立刻将数据导入了hive,后发现有一列数据缺失,发现是因为原数据文件中,有错误,多了一个空格。我应该先用python清洗数据,再将原数据导入到hive中。
将数据完成导入后,后面就简单了,利用hive sql 进行统计数据 利用vue进行展示。
老师要求用 sqoop 将hive表中的统计结果 转出到mysql,但是这次数据量太小,其实是可以复制粘贴的。
列一下这次测试常用的命令吧
这个命令是临时设置的,也可以修改hive的配置文件进行实现
set set hive.stats.column.autogather=false
上传文件
hadoop fs -put /home/cleaned_data.csv hdfs://node1:8020/user/hive/warehouse/
将文件导入到hive数据库中
LOAD DATA INPATH 'hdfs://node1:8020/user/hive/warehouse/mytable/cleaned_data.csv' INTO TABLE mytable;
查询表存储位置
DESCRIBE FORMATTED your_table_name;
这个命令是 用sqoop导出数据的,要求是 分隔符必须是 逗号 。ip地址,数据库,表名,列 需要自己修改(要求必须提前在mysql中 建立与hive表 结构一样的 表,才能导出成功)
bin/sqoop export \
--connect jdbc:mysql://192.168.83.1:3306/test_db \
--username root \
--password 123456 \
--table employees \
--columns "id,name,age,department" \
--input-fields-terminated-by ',' \
--input-lines-terminated-by '\n' \
--export-dir 'hdfs://node1:8020/user/hive/warehouse/test_db.db/employees' \
--input-null-string '\\N' \
--input-null-non-string '\\N' \
--null-string '\\N' \
--null-non-string '\\N' \
--num-mappers 1
后面就没有什么难的了,自己编写sql语句进行查询,然后将查询结果保存到查询表中,导出到mysql中。
Result文件数据说明:
Ip:106.39.41.166,(城市)
Date:10/Nov/2016:00:01:02 +0800,(日期)
Day:10,(天数)
Traffic: 54 ,(流量)
Type: video,(类型:视频video或文章article)
Id: 8701(视频或者文章的id)
测试要求:
1、 数据清洗:按照进行数据清洗,并将清洗后的数据导入hive数据库中。
两阶段数据清洗:
(1)第一阶段:把需要的信息从原始日志中提取出来
ip: 199.30.25.88
time: 10/Nov/2016:00:01:03 +0800
traffic: 62
文章: article/11325
视频: video/3235
(2)第二阶段:根据提取出来的信息做精细化操作
ip--->城市 city(IP)
date--> time:2016-11-10 00:01:03
day: 10
traffic:62
type:article/video
id:11325
(3)hive数据库表结构:
create table data( ip string, time string , day string, traffic bigint,
type string, id string )
2、数据分析:在HIVE统计下列数据。
(1)统计最受欢迎的视频/文章的Top10访问次数 (video/article)
(2)按照地市统计最受欢迎的Top10课程 (ip)
(3)按照流量统计最受欢迎的Top10课程 (traffic)
3、数据可视化:
将统计结果倒入MySql数据库中,通过图形化展示的方式展现出来。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix