助力工业物联网,工业大数据之服务域:回访主题分析【二十八】

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 助力工业物联网,工业大数据之服务域:回访主题分析【二十八】

11:服务域:回访主题分析

  • step1:需求
  • step2:分析
  • 实施
  • 需求:统计不同维度下的回访主题指标的结果
字段名称 字段说明 来源
rtn_srv_num 回访服务人员数量 one_make_dwb.fact_srv_rtn_visit
vst_user 回访人员数量 one_make_dwb.fact_srv_rtn_visit
wait_dispatch_num 待派工数量 one_make_dwb.fact_worker_order
wait_departure_num 待出发数量 one_make_dwb.fact_worker_order
alread_complete_num 已完工工单数量 one_make_dwb.fact_worker_order
processing_num 正在处理工单数量 one_make_dwb.fact_worker_order
satisfied_num 满意数量 one_make_dwb.fact_srv_rtn_visit
unsatisfied_num 不满意数量 one_make_dwb.fact_srv_rtn_visit
srv_atu_num 服务态度满意数量 one_make_dwb.fact_srv_rtn_visit
srv_bad_atu_num 服务态度不满意数量 one_make_dwb.fact_srv_rtn_visit
srv_rpr_prof_num 服务维修水平满意数量 one_make_dwb.fact_srv_rtn_visit
srv_rpr_unprof_num 服务维修水平不满意数量 one_make_dwb.fact_srv_rtn_visit
srv_high_res_num 服务响应速度满意数量 one_make_dwb.fact_srv_rtn_visit
srv_low_res_num 服务响应速度不满意数量 one_make_dwb.fact_srv_rtn_visit
rtn_rpr_num 返修数量 one_make_dwb.fact_srv_rtn_visit
max_vst_user 回访人员最大数量 one_make_dwb.fact_srv_rtn_visit
min_vst_user 回访人员最小数量 one_make_dwb.fact_srv_rtn_visit
dws_day string 日期维度-按天 one_make_dws.dim_date
dws_week string 日期维度-按周 one_make_dws.dim_date
dws_month string 日期维度-按月 one_make_dws.dim_date
orgname 组织机构-回访人员所属部门 one_make_dws.dim_emporg
posiname 组织机构-回访人员所属岗位 one_make_dws.dim_emporg
posiname 组织机构-回访人员名称 one_make_dws.dim_emporg
oil_type string 油站类型 one_make_dws.dim_oilstation
oil_province 油站所属省 one_make_dws.dim_oilstation
oil_city string 油站所属市 one_make_dws.dim_oilstation
oil_county string 油站所属区 one_make_dws.dim_oilstation
customer_classify 客户类型 one_make_dws.dim_oilstation
customer_province 客户所属省 one_make_dws.dim_oilstation

  • 分析
  • 指标
  • 回访工程师数量、回访人员数量、回访人员最大数量、回访人员最小数量
  • 回访事务事实表
  • 待派工数量、待出发数量、已完工数量、处理中数量
  • 工单事务事实表
  • 满意数量、不满意数量、态度满意数量、态度不满意数量、水平满意数量、水平不满意数量、响应速度满意数量、响应速度不满意数量、返修数量
  • 回访事务事实表
  • 维度
  • 日期维度:天、周、月
  • 日期维度表
  • 组织机构维度:人员部门、人员岗位、人员姓名
  • 组织机构维度表
  • 油站维度:类型、省份、城市、区域
  • 客户维度:类型、省份
  • 油站维度表
  • 数据
  • 事实表
  • fact_srv_rtn_visit:回访事务事实表
select
    srv_user_id,--工程师id
    vst_user_id,--回访人员id
    satisfied_num,--满意个数
    unsatisfied_num,--不满意个数
    srv_atu_num,--态度满意个数
    srv_bad_atu_num,--态度不满意个数
    srv_rpr_prof_num,--水平满意个数
    srv_rpr_unprof_num,--水平不满意个数
    srv_high_res_num,--响应速度满意个数
    srv_low_res_num,--响应速度不满意个数
    rtn_rpr_num, --返修数量
    wrkodr_id, --工单id
    os_id,--油站id
    dt --日期id
from fact_srv_rtn_visit;
  • fact_worker_order:工单事务事实表
select
    wo_id,--工单id
    wait_dispatch_num,--待派工个数
    wait_departure_num,--待出发个数
    alread_complete_num,--已完成个数
    processing_num --正在处理个数
from fact_worker_order;
  • 维度表
  • dim_oilstation:油站维度表
select
    id,--油站id
    company_name,--公司名称
    province_name,--省份名称
    city_name,--城市名称
    county_name,--区域名称
    customer_classify_name,--客户名称
    customer_province_name--客户省份
from dim_oilstation;
  • dim_date:时间维度表
select
    date_id,--天
    week_in_year_id,--周
    year_month_id --月
from dim_date;
  • dim_emporg:组织机构维度
select
    empid,--人员id
    orgname,--部门名称
    posiname,--岗位名称
    empname --员工名称
from dim_emporg;
  • 分析
select
    srv_user_id,--工程师id
    vst_user_id,--回访人员id
    satisfied_num,--满意个数
    unsatisfied_num,--不满意个数
    srv_atu_num,--态度满意个数
    srv_bad_atu_num,--态度不满意个数
    srv_rpr_prof_num,--水平满意个数
    srv_rpr_unprof_num,--水平不满意个数
    srv_high_res_num,--响应速度满意个数
    srv_low_res_num,--响应速度不满意个数
    rtn_rpr_num, --返修数量
    b.wait_dispatch_num,--待派工个数
    b.wait_departure_num,--待出发个数
    b.alread_complete_num,--已完成个数
    b.processing_num, --正在处理个数
    c.orgname,--部门名称
    c.posiname,--岗位名称
    c.empname --员工名称
    wrkodr_id, --工单id
    os_id,--油站id
    dt --日期id
from fact_srv_rtn_visit a
join fact_worker_order b on a.wrkodr_id = b.wo_id
join one_make_dws.dim_emporg c on a.srv_user_id = c.userid
join one_make_dws.dim_oilstation d on a.os_id = d.id
join one_make_dws.dim_date e on a.dt = e.date_id;
  • 小结
  • 掌握回访主题的需求分析

12:服务域:回访主题实现

  • 目标:实现回访主题表的维度指标构建
  • 实施
  • 建表
drop table if exists one_make_st.subj_rtn_visit;
create table if not exists one_make_st.subj_rtn_visit(
    rtn_srv_num int comment '回访服务人员数量'
    ,vst_user int comment '回访人员数量'
    ,wait_dispatch_num bigint comment '待派工数量'
    ,wait_departure_num bigint comment '待出发数量'
    ,alread_complete_num bigint comment '已完工工单数量'
    ,processing_num bigint comment '正在处理工单数量'
    ,satisfied_num int comment '满意数量'
    ,unsatisfied_num int comment '不满意数量'
    ,srv_atu_num int comment '服务态度满意数量'
    ,srv_bad_atu_num int comment '服务态度不满意数量'
    ,srv_rpr_prof_num int comment '服务维修水平满意数量'
    ,srv_rpr_unprof_num int comment '服务维修水平不满意数量'
    ,srv_high_res_num int comment '服务响应速度满意数量'
    ,srv_low_res_num int comment '服务响应速度不满意数量'
    ,rtn_rpr_num int comment '返修数量'
    ,max_vst_user int comment '回访人员最大数量'
    ,min_vst_user int comment '回访人员最小数量'
    ,dws_day string comment '日期维度-按天'
    ,dws_week string comment '日期维度-按周'
    ,dws_month string comment '日期维度-按月'
    ,orgname string comment '组织机构维度-回访人员所属部门'
    ,posiname string comment '组织机构维度-回访人员所属岗位'
    ,empname string comment '组织机构维度-回访人员名称'
    ,oil_type string comment '油站维度-油站类型'
    ,oil_province string comment '油站维度-油站所属省'
    ,oil_city string comment '油站维度-油站所属市'
    ,oil_county string comment '油站维度-油站所属区'
    ,customer_classify string comment '客户维度-客户类型'
    ,customer_province string comment '客户维度-客户所属省'
) comment '回访主题表'
partitioned by (month String, week String, day String)
stored as orc
location '/data/dw/st/one_make/subj_rtn_visit'
;
  • 构建
insert overwrite table one_make_st.subj_rtn_visit partition(month = '202101', week='2021W1', day='20210101')
select
  sum(rtn_srv_num) rtn_srv_num,                                --回访工程师数量
  sum(vst_user) vst_user,                                      --回访人员数量
  sum(wait_dispatch_sumnum) wait_dispatch_sumnum,              --待派工数量
    sum(wait_departure_sumnum) wait_departure_sumnum,            --待出发数量
  sum(alread_complete_sumnum) alread_complete_sumnum,          --已完工数量
  sum(processing_sumnum) processing_sumnum,                    --处理中数量
    sum(satisfied_sumnum) satisfied_sumnum,                      --满意数量
  sum(unsatisfied_sumnum) unsatisfied_sumnum,                  --不满意数量
  sum(srv_atu_sumnum) srv_atu_sumnum,                          --态度满意数量
    sum(srv_bad_atu_sumnum) srv_bad_atu_sumnum,                  --态度不满意数量
  sum(srv_rpr_prof_sumnum) srv_rpr_prof_sumnum,                --水平满意数量
  sum(srv_rpr_unprof_sumnum) srv_rpr_unprof_sumnum,            --水平不满意数量
    sum(srv_high_res_sumnum) srv_high_res_sumnum,                --响应速度满意数量
  sum(srv_low_res_sumnum) srv_low_res_sumnum,                  --响应速度不满意数量
  sum(rtn_rpr_sumnum) rtn_rpr_sumnum,                          --返修数量
    max(vst_user) max_vst_user,                                  --回访人员最大数量
  min(vst_user) min_vst_user,                                  --回访人员最小数量
  dws_day,                                                     --日期天
  dws_week,                                                    --日期周
  dws_month,                                                   --日期月
  orgname,                                                     --组织机构人员部门
  posiname,                                                    --组织机构人员岗位
  empname,                                                     --组织机构人员姓名
  oil_type,                                                    --油站类型
  oil_province,                                                --油站省份
    oil_city,                                                    --油站城市
  oil_county,                                                  --油站区域
  customer_classify,                                           --客户类型
  customer_province                                            --客户省份
from (
     --查询得到每个工单的指标
         select
             count(fsrv.srv_user_id) rtn_srv_num,
             count(fsrv.vst_user_id) vst_user,
             sum(fwo.wait_dispatch_num) wait_dispatch_sumnum,
             sum(fwo.wait_departure_num) wait_departure_sumnum,
             sum(fwo.alread_complete_num) alread_complete_sumnum,
             sum(fwo.processing_num) processing_sumnum,
             sum(fsrv.satisfied_num) satisfied_sumnum,
             sum(fsrv.unsatisfied_num) unsatisfied_sumnum,
             sum(fsrv.srv_atu_num) srv_atu_sumnum,
             sum(fsrv.srv_bad_atu_num) srv_bad_atu_sumnum,
             sum(fsrv.srv_rpr_prof_num) srv_rpr_prof_sumnum,
             sum(fsrv.srv_rpr_unprof_num) srv_rpr_unprof_sumnum,
             sum(fsrv.srv_high_res_num) srv_high_res_sumnum,
             sum(fsrv.srv_low_res_num) srv_low_res_sumnum,
             sum(fsrv.rtn_rpr_num) rtn_rpr_sumnum,
             dd.date_id dws_day, dd.week_in_year_id dws_week, dd.year_month_id dws_month,
             emp.orgname, emp.posiname, emp.empname,
             dimoil.company_name oil_type,
             dimoil.province_name oil_province, dimoil.city_name oil_city, dimoil.county_name oil_county,
             dimoil.customer_classify_name customer_classify,
             dimoil.customer_province_name customer_province
       --回访事务事实表
         from one_make_dwb.fact_srv_rtn_visit fsrv
     --关联工单事实表
       left join one_make_dwb.fact_worker_order fwo on fsrv.wrkodr_id = fwo.wo_id
     --关联日期维度表
       left join one_make_dws.dim_date dd on fsrv.dt = dd.date_id
     --关联油站维度表
       left join one_make_dws.dim_oilstation dimoil on fsrv.os_id = dimoil.id
     --关联组织机构维度表
       left join one_make_dws.dim_emporg emp on fsrv.vst_user_id = emp.empid
         where dd.year_month_id = '202101'and dd.week_in_year_id = '2021W1' and  dd.date_id = '20210101'
     --按照分组维度聚合
         group by fsrv.wrkodr_id, dd.date_id, dd.week_in_year_id, dd.year_month_id, emp.orgname, emp.posiname, emp.empname, dimoil.company_name, dimoil.province_name, dimoil.city_name, dimoil.county_name,
                  dimoil.customer_classify_name, dimoil.customer_province_name
     )
group by dws_day, dws_week, dws_month, orgname, posiname, empname, oil_type, oil_province, oil_city, oil_county, customer_classify, customer_province
;
  • 小结
  • 实现回访主题表的维度指标构建


目录
相关文章
|
3天前
|
机器学习/深度学习 数据可视化 大数据
机器学习与大数据分析的结合:智能决策的新引擎
机器学习与大数据分析的结合:智能决策的新引擎
41 15
|
9天前
|
SQL 分布式计算 DataWorks
DataWorks产品测评|基于DataWorks和MaxCompute产品组合实现用户画像分析
本文介绍了如何使用DataWorks和MaxCompute产品组合实现用户画像分析。首先,通过阿里云官网开通DataWorks服务并创建资源组,接着创建MaxCompute项目和数据源。随后,利用DataWorks的数据集成和数据开发模块,将业务数据同步至MaxCompute,并通过ODPS SQL完成用户画像的数据加工,最终将结果写入`ads_user_info_1d`表。文章详细记录了每一步的操作过程,包括任务开发、运行、运维操作和资源释放,帮助读者顺利完成用户画像分析。此外,还指出了文档中的一些不一致之处,并提供了相应的解决方法。
|
7天前
|
分布式计算 DataWorks 搜索推荐
用户画像分析(MaxCompute简化版)
通过本教程,您可以了解如何使用DataWorks和MaxCompute产品组合进行数仓开发与分析,并通过案例体验DataWorks数据集成、数据开发和运维中心模块的相关能力。
43 4
|
27天前
|
机器学习/深度学习 存储 大数据
在大数据时代,高维数据处理成为难题,主成分分析(PCA)作为一种有效的数据降维技术,通过线性变换将数据投影到新的坐标系
在大数据时代,高维数据处理成为难题,主成分分析(PCA)作为一种有效的数据降维技术,通过线性变换将数据投影到新的坐标系,保留最大方差信息,实现数据压缩、去噪及可视化。本文详解PCA原理、步骤及其Python实现,探讨其在图像压缩、特征提取等领域的应用,并指出使用时的注意事项,旨在帮助读者掌握这一强大工具。
63 4
|
28天前
|
关系型数据库 分布式数据库 数据库
PolarDB 以其出色的性能和可扩展性,成为大数据分析的重要工具
在数字化时代,企业面对海量数据的挑战,PolarDB 以其出色的性能和可扩展性,成为大数据分析的重要工具。它不仅支持高速数据读写,还通过数据分区、索引优化等策略提升分析效率,适用于电商、金融等多个行业,助力企业精准决策。
34 4
|
1月前
|
存储 安全 物联网
政府在推动物联网技术标准和规范的统一方面可以发挥哪些作用?
政府在推动物联网技术标准和规范的统一方面可以发挥哪些作用?
101 50
|
1月前
|
安全 物联网 物联网安全
制定统一的物联网技术标准和规范的难点有哪些?
制定统一的物联网技术标准和规范的难点有哪些?
51 2
|
1月前
|
供应链 物联网 区块链
探索未来技术潮流:区块链、物联网、虚拟现实的融合与创新
【10月更文挑战第41天】随着科技的不断进步,新技术如区块链、物联网、虚拟现实等正在逐步渗透到我们的日常生活中。本文将深入探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,共同推动社会的进步。我们将通过具体的代码示例,展示这些技术在实际应用中的潜力和价值。无论你是科技爱好者,还是对未来充满好奇的探索者,这篇文章都将为你打开一扇通往未来的窗口。
100 56
|
17天前
|
存储 安全 物联网
未来已来:区块链技术在物联网与虚拟现实中的应用
随着科技的不断进步,新兴技术如区块链、物联网(IoT)和虚拟现实(VR)正在逐渐改变我们的生活和工作方式。本文将探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,为我们带来更便捷、安全和沉浸式的体验。
|
13天前
|
供应链 监控 数据可视化
物联网技术在物流与供应链管理中的应用与挑战
本文探讨了物联网技术在物流与供应链管理中的应用,通过实时追踪、信息共享、智能化决策等手段,大幅提升了管理效率和智能化水平。特别介绍了板栗看板作为专业可视化工具,在数据监控、分析及协同作业中的重要作用。未来,随着技术的进一步发展,物流与供应链管理将更加智能高效,但也面临数据安全、标准化等挑战。