2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待…
2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待…
武汉唯众智创科技有限公司
2024 年 2 月
联系人:辜渝傧13037102709
题号:试题01
模块三:业务分析与可视化
(一)任务一:数据可视化
1.子任务一:数据分析
(1)在 comm 数 据 库 下 创 建 一 个 名 为
dws_behavior_log的外部表,如果表已存在,则先删除;分区字段为dt,即根据日期进行分区;另外,要求指定表的存储路径为HDFS的/behavior/dws/dws_behavior_log目录,存储文件类型为“orc”,文件的压缩类型为“snappy”;字段类型如下表所示;
表6 字段类型表

答:
DROP TABLE IF EXISTS dws_behavior_log;
create external table comm.dws_behavior_log(client_ip string,device_type string,type string,device string,url string,province string,city string) partitioned by (dt string) STORED AS orc location '/behavior/dws/dws_behavior_log' tblproperties ("orc.compress"="SNAPPY");
(2)启动Hive的动态分区功能,并将Hive设置为非严格模式;
答:
set hive.exec.dynamic.partition=true;
set hive.exec.dynamic.partition.mode=nostrict;
(3)使用insert overwrite … select …子句将dwd_behavior_log表中数据插入分区表dws_behavior_log中,并实现根据dt进行动态分区;
答:insert overwrite table dws_behavior_log PARTITION (dt) select * from dwd_behavior_log;
(4)查看dws_behavior_log表的所有现有分区、前3行数据,并统计统计表数据总行数;
答:
SHOW PARTITIONS dws_behavior_log;
SELECT * FROM dwd_behavior_log LIMIT 3;
SELECT count(*) FROM dws_behavior_log;
(5)在comm数据库下创建一个名为dim_date的外部表,如果表已存在,则先删除;另外,要求指定表的存储路径为HDFS的/behavior/dim/dim_date目录,字段分隔符为 “\t” , 建 表 时 添 加 TBLPROPERTIES
(‘skip.header.line.count’=‘1’) 语句让Hive读取外表数据时跳过文件行首(表头);字段类型如下表所示;
表7 字段类型表

答:
DROP TABLE IF EXISTS comm.dim_date;
create external table comm.dim_date(date_id string,week_id string,week_day string,day string,month string,quarter string,year string,is_workday string,holiday string) row format delimited fields terminated by '\t' location '/behavior/dim/dim_date' TBLPROPERTIES ('skip.header.line.count'='1');
(6)在comm数据库下创建一个名为dim_area的外部表,如果表已存在,则先删除;另外,要求指定表的存储路径为HDFS的/behavior/dim/dim_area目录,字段分隔符为
“\t”;字段类型如下表所示;
表8 字段类型表

答:
drop table if exists comm.dim_area;
create external table comm.dim_area(city string,province string,area string) row format delimited fields terminated by '\t' location '/behavior/dim/dim_area';
(7)使用load data子句将本地/root/eduhq/data目录下的“dim_date_2023.txt”和“dim_area.txt”文件分别加载到外部表dim_date和dim_area中;
答:
load data local inpath '/root/eduhq/data/dim_date_2023.txt' into table comm.dim_date;
load data local inpath '/root/eduhq/data/dim_area.txt' into table comm.dim_area;
(8)分别查看外部表dim_date和dim_area的前3行数据;
答:
select * from comm.dim_date limit 3;
select * from comm.dim_area limit 3;
(9)分别统计外部表dim_date和dim_area数据总行数;
答:
select count(*) from comm.dim_date;
select count(*) from comm.dim_area;
(10)统计不同省份用户访问量;将统计结果导出到本地文件系统的/root/eduhq/result/ads_user_pro目录下,并指定列的分隔符为逗号(特别注意:因为省份是随机获取的,所以结果会有所差异);
insert overwrite local directory '/root/eduhq/result/ads_user_pro' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select province,count(*) from comm.dim_area group by province;
(11)统计不同时间段的网页浏览量将统计结果导出到本地文件系统的/root/eduhq/result/ads_user_hour 目录下,并指定列的分隔符为逗号;
答:insert overwrite local directory '/root/eduhq/result/ads_user_hour' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select *,DATE_FORMAT(time, 'yyyy-MM-dd HH') AS hour from comm.xxx group by hour;
(12)不同网站访客的设备类型统计;将统计结果导出到本地文件系统的/root/eduhq/result/ads_visit_mode目录下,并指定列的分隔符为逗号;
答:insert overwrite local directory '/root/eduhq/result/ads_visit_mode' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select url,device_type from comm.xxx group by device_type;
(13)不同网站的上网模式统计;将统计结果导出到本地文件系统的/root/eduhq/result/ads_online_type 目录下,并指定列的分隔符为逗号;
答:insert overwrite local directory '/root/eduhq/result/ads_online_type' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select url,type from comm.xxx group by type;
2.子任务二:数据可视化
(1)使用Pyecharts库绘制中国地图,以直观展示不同省份用户访问量分布情况;
⚫文件名:ads_user_pro.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:/root/eduhq/result/ads_user_pro目录
⚫背景地址:/root/eduhq/images/img_1.png
⚫图表名称:不同省份用户访问量分布图.html
⚫图表存放地址:/root/eduhq/html/
(2)使用Pyecharts库绘制一个带时间轴的柱形图,以直观展示不同经济大区用户的访问量统计情况;
⚫文件名:ads_user_region.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:
/root/eduhq/result/ads_user_region目录
⚫背景地址:/root/eduhq/images/img_2.png
⚫图表名称:不同经济大区用户访问量统计柱形图
.html
⚫图表存放地址:/root/eduhq/html/
(3)使用Pyecharts绘制网页浏览量统计折线图,直观展示不同时间段内的访问量变化趋势;
⚫文件名:ads_user_hour.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:/root/eduhq/result/ads_user_hour目录
⚫背景地址:/root/eduhq/images/img_3.png
⚫图表名称:不同时间段网页浏览量统计曲线图.html
⚫图表存放地址:/root/eduhq/html/
(4)使用Pyecharts绘制网页浏览量统计折线图,直
观展示节假日和工作日不同时间段内的访问量变化趋势;
⚫文件名:ads_hol_work_user.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:
/root/eduhq/result/ads_hol_work_user目录
⚫背景地址:/root/eduhq/images/img_3.png
⚫图表名称:节假日和工作日各时间段网页浏览量统计曲线图.html
⚫图表存放地址:/root/eduhq/html/
(5)使用Pyecharts绘制堆积柱形图,直观地展示访客在不同设备类型上的访问次数情况;
⚫文件名:ads_visit_mode.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:/root/eduhq/result/ads_visit_mode
目录
⚫背景地址:/root/eduhq/images/img_2.png
⚫图表名称:网站访客设备类型统计堆积柱形图
.html
⚫图表存放地址:/root/eduhq/html/
(6)使用Pyecharts绘制堆积柱形图,直观地展示访客在不同上网模式下的访问次数情况;
⚫文件名:ads_online_type.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:/root/eduhq/result/
ads_online_type目录
⚫背景地址:/root/eduhq/images/img_2.png
⚫图表名称:网站访客上网模式统计堆积柱形图
.html
⚫图表存放地址:/root/eduhq/html/
(7)使用Pyecharts绘制词云图,直观地展示不同域名用户访问情况;
⚫文件名:ads_user_domain.py
⚫文件存放地址:/root/eduhq/python/
⚫数据目录:/root/eduhq/result/ads_user_domain
目录
⚫背景地址:/root/eduhq/images/img_2.png
⚫图表名称:不同域名用户访问统计词云.html
⚫图表存放地址:/root/eduhq/html/
(二)任务二:业务分析
(1)统计每天不同经济大区用户访问量;将统计结果导出到本地文件系统的/root/eduhq/result/ads_user_region目录下,并指定列的分隔符为逗号;
答:insert overwrite local directory '/root/eduhq/result/ads_user_region' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select day,area from table_name group by area;
(2)统计节假日和工作日的浏览量差异;将统计结果导出到本地文件系统的/root/eduhq/result/ads_hol_work_user目录下,并指定列的分隔符为逗号;
答:
insert overwrite local directory '/root/eduhq/result/ads_hol_work_user' ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
SELECT CASE WHEN is_workday = 1 THEN '工作日' ELSE '节假日' END AS day_type, SUM(url) AS total_views
FROM page_views
GROUP BY day_type;
(3)统计不同域名的用户访问量;将统计结果导出到本地文件系统的
/root/eduhq/result/ads_user_domain目录下,并指定列的分隔符为逗号;
答:
CREATE TABLE user_visits ( user_id STRING, visit_date STRING, domain STRING, visit_count INT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t';
insert overwrite local directory '/root/eduhq/result/ads_user_domain' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' SELECT user_id, DATE_FORMAT(REGEXP_REPLACE(visit_date, '/', '-'), 'yyyy-MM-dd') AS visit_date, domain, visit_count FROM user_visits;
更多内容请联系
武汉唯众智创科技有限公司
欲了解更多信息,欢迎登录www.whwzzc.com,咨询电话13037102709
*本资料产品图片及技术数据仅供参考,如有更新恕不另行通知,具体内容解释权归唯众所有。
相关文章:
2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待…
2023年全国职业院校技能大赛中职组大数据应用与服务赛项题库参考答案陆续更新中,敬请期待… 武汉唯众智创科技有限公司 2024 年 2 月 联系人:辜渝傧13037102709 题号:试题01 模块三:业务分析与可视化 (一࿰…...
设计MySQL数据表的几个注意点
最近合作搞项目,发现了很多问题。特别的,数据库层面上的问题更为致命。记录一下,希望后面看到博客的同学们注意。 注意:以下观点只用于一般情况下的单体、微服务,不保证适用所有场景。 一、ID问题 ID名称问题 如下图…...
android 键盘遮挡输入框问题回忆
背景 刚开始做Android的时候,有一次遇到输入框位于页面底部,弹出的键盘老是遮挡输入框,这就给人一种感觉----不咋舒服。当时,网上百度了一遍,后面终于解决了,由于当时天天加班,没时间写博客&…...
ZJGSU 1737 链表
题目描述 请根据输入数据构造一个带头结点的单链表,链表结点的数据结构为struct node {int data; struct node *next;},试设计算法:按递增次序输出单链表中各结点的数据元素,并释放结点所占用的存储空间。 要求:不允…...
Java开发人员不得不收集的代码,java软件开发面试常见问题
前言 今年的金三银四已经过去一大半了,在这其中参与过不少面试,2021都说工作不好找,这也是对开发人员的要求变向的提高了。 之前在Github上收获15Kstar的Java核心神技(这参数,质量多高就不用我多说了吧)非…...
浅谈块存储、文件存储、对象存储
**块存储、文件存储和对象存储各自有其独特的特点和适用场景**。具体来说: 1. **块存储**: - 描述:块存储将存储空间分割成固定大小的块,这些块可以直接映射到主机操作系统。它提供的是原始的存储空间,不带文件系统…...
2024年 Python面试热点
当然,以下是一些Python相关的热点面试题: 请解释一下Python中的装饰器(Decorators)是什么,以及它们的主要用途是什么? 装饰器是Python中的一个高级功能,它允许用户修改或增强函数、方法或类的行…...
Map集合体系——遍历,HashMap,TreeMap,LikedHashMap
认识Map集合 Map集合体系特点 方法 代码示例 package com.zz.Map;import java.util.*;public class Test {public static void main(String args[]){Map<String, Integer> map new HashMap <>();//经典代码,按照键 无序 不重复 无索引map.put("…...
docker mysql主从复制
新建主服务器容器实例3301 mysql 主 3301 docker run -p 3301:3306 --name mysql-master \ -v /mydata/mysql-master/log:/var/log/mysql \ -v /mydata/mysql-master/data:/var/lib/mysql \ -v /mydata/mysql-master/conf:/etc/mysql \ -v /home/mysql/mysql-files:/var/lib/…...
iOS 自动化测试踩坑(一): 技术方案、环境配置与落地实践
移动端的自动化测试,最常见的是 Android 自动化测试,我个人觉得 Android 的测试优先级会更高,也更开放,更容易测试;而 iOS 相较于 Android 要安全稳定的多,但也是一个必须测试的方向,这个系列文…...
Redis的事务
在 Redis 中,事务(Transaction)是一组命令的集合,可以作为一个单独的操作来执行,保证这组命令要么全部执行成功,要么全部执行失败,具有原子性。在 Redis 中,事务是通过 MULTI、EXEC、…...
4.2 比多数opencv函数效果更好的二值化(python)
在这里之间写代码: import numpy as np import torch import torch.nn as nn import cv2#1.silu激活函数 class SiLU(nn.Module):staticmethoddef forward(x):return x*torch.sigmoid(x)#2.获得轨道的类 def railway_classes3(img,x1,x2,y1,y2):img2 img[x1:x2, y…...
webpack打包一个文件,做了哪些事情
用webpack打包一个文件,在webpack内部做了哪些事情,用代码详细介绍一下 当你使用 Webpack 打包一个文件时,Webpack 内部会进行一系列操作来实现模块加载、代码转换、依赖分析、模块打包等功能。以下是使用 Webpack 打包一个简单 JavaScript …...
设计模式学习笔记 - 设计原则 - 6.KISS原则和YAGNI原则
前言 今天,将两个设计原则:KISS 原则和 YANGI 原则。其中,KISS 原则比较经典,耳熟能详,但 YANGI 你可能没怎么听过,不过它理解起来也不难。 理解这个两个原则的时候,经常会有一个共同的问题&a…...
【Vue3-vite】动态导入路由
route文件结构 router moduleindex.ts 路由定义 // 需要导入的路由如下: const routes [{path: /manage,name: manage,component: () > import(/views/home/index.vue),children: manageRoutes,}]index.ts实现从module中自动导入 // 动态导入 const routeFil…...
C++——string类
前言:哈喽小伙伴们,从这篇文章开始我们将进行若干个C中的重要的类容器的学习。本篇文章将讲解第一个类容器——string。 目录 一.什么是string类 二.string类常见接口 1.string类对象的常见构造 2.string类对象的容量操作 3. string类对象的访问及遍…...
进制转换md5绕过 [安洵杯 2019]easy_web1
打开题目 在查看url的时候得到了一串类似编码的东西,源码那里也是一堆base64,但是转换成图片就是网页上我们看见的那个表情包 ?imgTXpVek5UTTFNbVUzTURabE5qYz0&cmd 我们可以先试把前面的img那串解码了 解码的时候发现长度不够,那我们…...
.kat6.l6st6r勒索病毒的最新威胁:如何恢复您的数据?
导言: 在当今数字化时代,数据安全变得至关重要。然而,随着网络威胁不断增加,勒索病毒已成为企业和个人面临的严重威胁之一。其中,.kat6.l6st6r勒索病毒是最新的变种之一,它能够加密您的数据文件࿰…...
Day 6.有名信号量(信号灯)、网络的相关概念和发端
有名信号量 1.创建: semget int semget(key_t key, int nsems, int semflg); 功能:创建一组信号量 参数:key:IPC对像的名字 nsems:信号量的数量 semflg:IPC_CREAT 返回值:成功返回信号量ID…...
MySQL 常用优化方式
MySQL 常用优化方式 sql 书写顺序与执行顺序SQL设计优化使用索引避免索引失效分析慢查询合理使用子查询和临时表列相关使用 日常SQL优化场景limit语句隐式类型转换嵌套子查询混合排序查询重写 sql 书写顺序与执行顺序 (7) SELECT (8) DISTINCT <select_list> (1) FROM &…...
ColorControl开源显示调校工具:从新手到专家的HDR优化之路
ColorControl开源显示调校工具:从新手到专家的HDR优化之路 【免费下载链接】ColorControl Easily change NVIDIA display settings and/or control LG TVs 项目地址: https://gitcode.com/gh_mirrors/co/ColorControl 在数字显示技术快速发展的今天ÿ…...
10个libxev实战技巧:从定时器到TCP服务器的完整实现
10个libxev实战技巧:从定时器到TCP服务器的完整实现 【免费下载链接】libxev libxev is a cross-platform, high-performance event loop that provides abstractions for non-blocking IO, timers, events, and more and works on Linux (io_uring or epoll), macO…...
Django CORS Headers 终极指南:10个企业级跨域架构设计技巧
Django CORS Headers 终极指南:10个企业级跨域架构设计技巧 【免费下载链接】django-cors-headers Django app for handling the server headers required for Cross-Origin Resource Sharing (CORS) 项目地址: https://gitcode.com/gh_mirrors/dj/django-cors-he…...
从IPv4到IPv6迁移实战:在eNSP里排查那些容易被忽略的安全配置(避坑指南)
从IPv4到IPv6迁移实战:eNSP环境下的安全配置深度排查指南 当企业网络从IPv4向IPv6过渡时,工程师们常常会陷入一种"配置惯性"——沿用IPv4时代的安全策略直接套用到IPv6环境。这种思维定式往往会导致网络出现各种"隐形漏洞"。本文将通…...
RocketMQ Topic队列配置实战指南:从原理到最佳实践
1. RocketMQ Topic队列配置的核心原理 第一次接触RocketMQ的Topic配置时,我也曾被那些专业术语搞得一头雾水。直到有一次线上系统因为队列配置不当导致消息积压,我才真正理解这些参数的重要性。现在回想起来,其实Topic队列配置就像高速公路的…...
Claude Tool Use 怎么用?从零到生产的完整教程(2026)
上周接了个需求,做一个能查天气、查数据库、还能发邮件的 AI 助手。一开始想着用 LangChain 套一层,后来发现 Claude 原生的 Tool Use(也叫 Function Calling)已经很成熟了,根本不需要额外框架。但官方文档写得有点绕&…...
MinerU 2.5-1.2B新手教程:无需深度学习基础,快速上手PDF提取
MinerU 2.5-1.2B新手教程:无需深度学习基础,快速上手PDF提取 1. 引言:为什么选择MinerU? PDF文档是我们日常工作和学习中常见的文件格式,但要从PDF中提取内容却常常让人头疼。特别是遇到学术论文、技术报告这类包含复…...
OpenClaw自动化测试:基于Nanobot的持续集成方案
OpenClaw自动化测试:基于Nanobot的持续集成方案 1. 引言 在软件开发领域,测试环节往往是耗时最长、人力投入最大的阶段之一。传统的自动化测试脚本编写不仅需要专业的技术知识,还需要大量的维护成本。随着项目迭代速度加快,测试…...
戴森吸尘器电池锁死?终极开源固件修复指南拯救你的设备
戴森吸尘器电池锁死?终极开源固件修复指南拯救你的设备 【免费下载链接】FU-Dyson-BMS (Unofficial) Firmware Upgrade for Dyson V6/V7 Vacuum Battery Management System 项目地址: https://gitcode.com/gh_mirrors/fu/FU-Dyson-BMS 当你的戴森V6/V7吸尘器…...
MogFace-large保姆级部署:Ubuntu/CentOS系统GPU驱动适配指南
MogFace-large保姆级部署:Ubuntu/CentOS系统GPU驱动适配指南 1. 前言:为什么选择MogFace-large 如果你正在寻找一个强大的人脸检测解决方案,MogFace-large绝对值得你的关注。这个模型在Wider Face榜单的六项评测中已经霸榜超过一年…...
