• 大数据从入门到精通(超详细版)之Hive案例,指标统计, Sql语句的编写


    前言

    嗨,各位小伙伴,恭喜大家学习到这里,不知道关于大数据前面的知识遗忘程度怎么样了,又或者是对大数据后面的知识是否感兴趣,本文是《大数据从入门到精通(超详细版)》的一部分,小伙伴们如果对此感谢兴趣的话,推荐大家按照大数据学习路径开始学习哦。

    以下就是完整的学习路径哦。

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    大数据从入门到精通文章体系!!!!!!!!!!!!!!

    ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑

    推荐大家认真学习哦!!!

    上一篇文章中,我们学习了Hive实战的数据清洗策略,我们这些来学习指标统计。
    在这里插入图片描述

    案例需求

    • 统计今日总消息量
    • 统计今日每小时消息量、发送和接收用户数
    • 统计今日各地区发送消息数据量
    • 统计今日发送消息和接收消息的用户数
    • 统计今日发送消息最多的Top10用户
    • 统计今日接收消息最多的Top10用户
    • 统计发送人的手机型号分布情况
    • 统计发送人的设备操作系统分布情况

    案例实现

    统计今日总消息量

    语法:

    --保存结果表
    CREATE TABLE IF NOT EXISTS tb_rs_total_msg_cnt 
    COMMENT "每日消息总量" AS 
    SELECT 
        msg_day, 
        COUNT(*) AS total_msg_cnt 
    FROM db_msg.tb_msg_etl 
    GROUP BY msg_day;
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    统计今日每小时消息量、发送和接收用户数

    语法:

    --保存结果表
    CREATE TABLE IF NOT EXISTS tb_rs_hour_msg_cnt 
    COMMENT "每小时消息量趋势" AS  
    SELECT  
        msg_hour, 
        COUNT(*) AS total_msg_cnt, 
        COUNT(DISTINCT sender_account) AS sender_usr_cnt, 
        COUNT(DISTINCT receiver_account) AS receiver_usr_cnt
    FROM db_msg.tb_msg_etl GROUP BY msg_hour;
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

    统计今日各地区发送消息数据量

    语法:

    CREATE TABLE IF NOT EXISTS tb_rs_loc_cnt
    COMMENT '今日各地区发送消息总量' AS 
    SELECT 
        msg_day,  
        sender_lng, 
        sender_lat, 
        COUNT(*) AS total_msg_cnt 
    FROM db_msg.tb_msg_etl
    GROUP BY msg_day, sender_lng, sender_lat;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    统计今日发送消息和接收消息的用户数

    语法:

    --保存结果表
    CREATE TABLE IF NOT EXISTS tb_rs_usr_cnt
    COMMENT "今日发送消息人数、接受消息人数" AS
    SELECT 
    msg_day, 
    COUNT(DISTINCT sender_account) AS sender_usr_cnt, 
    COUNT(DISTINCT receiver_account) AS receiver_usr_cnt
    FROM db_msg.tb_msg_etl
    GROUP BY msg_day;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    统计今日发送消息最多的Top10用户

    语法:

    --保存结果表
    CREATE TABLE IF NOT EXISTS db_msg.tb_rs_s_user_top10
    COMMENT "发送消息条数最多的Top10用户" AS
    SELECT 
        sender_name AS username, 
        COUNT(*) AS sender_msg_cnt 
    FROM db_msg.tb_msg_etl 
    GROUP BY sender_name 
    ORDER BY sender_msg_cnt DESC 
    LIMIT 10;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    在这里插入图片描述

    统计今日接收消息最多的Top10用户

    语法:

    CREATE TABLE IF NOT EXISTS db_msg.tb_rs_r_user_top10
    COMMENT "接收消息条数最多的Top10用户" AS
    SELECT 
    receiver_name AS username, 
    COUNT(*) AS receiver_msg_cnt 
    FROM db_msg.tb_msg_etl 
    GROUP BY receiver_name 
    ORDER BY receiver_msg_cnt DESC 
    LIMIT 10;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    统计发送人的手机型号分布情况

    语法:

    CREATE TABLE IF NOT EXISTS db_msg.tb_rs_sender_phone
    COMMENT "发送人的手机型号分布" AS
    SELECT 
        sender_phonetype, 
        COUNT(sender_account) AS cnt 
    FROM db_msg.tb_msg_etl 
    GROUP BY sender_phonetype;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    统计发送人的设备操作系统分布情况

    语法:

    --保存结果表
    CREATE TABLE IF NOT EXISTS db_msg.tb_rs_sender_os
    COMMENT "发送人的OS分布" AS
    SELECT
        sender_os, 
        COUNT(sender_account) AS cnt 
    FROM db_msg.tb_msg_etl 
    GROUP BY sender_os
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述

    以上就是关于指标统计案例的全部内容了.

    结尾

    恭喜小伙伴完成本篇文章的学习,相信文章的内容您已经掌握得十分清楚了,如果您对大数据的知识十分好奇,请接下来跟着学习路径完成大数据的学习哦,相信你会做到的~~~

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    大数据从入门到精通文章体系!!!!!!!!!!!!!!

  • 相关阅读:
    SAP UI5 应用中的 sap.ui.require 使用场景
    C语言基础知识:内存分配
    【HMS Core】School Diary应用集成多个HMS Core服务,更好的体验华为生态系统
    ZKP方案衍变及对比
    刷题1:数组篇
    HTTP协议
    踏入骑行新纪元: VELO Angel Glide坐垫,舒适与环保并驾齐驱!
    Android Framework通信:Handler
    【Java】SpringCloud基础知识点
    spring aop源码解析
  • 原文地址:https://blog.csdn.net/tyuiop321/article/details/132942443