网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
+ step1:目标需求
+ step2:数据来源
-
实施
- 目标需求:基于维修信息数据统计维修设备个数、维修、更换、升级配件数量、工时费用、配件费用等指标
-
数据来源
- ciss_service_repair:维修信息表
select id,--维修单id code,--维修单号 service_id,--服务单id is_pay,--是否收费 1-收费,0-免费 hour_charge,--工时费用 parts_charge,--配件费用 fares_charge --车船费用 from ciss_service_repair;
- ciss_service_order:服务单信息表
select id, --服务单id workorder_id, --工单id type --工单类型,1-安装,2-维修,3-巡检 from ciss_service_order;
- ciss_service_workorder:工单详情事实表
select id,--工单id service_userid,--工程师id service_station_id,--服务站点id oil_station_id,--油站id create_time --创建时间 from ciss_service_workorder;
- ciss_service_order_device:服务单设备信息表
select id, --设备id service_order_id --服务单id from ciss_service_order_device;
- ciss_service_fault_dtl:设备故障信息表
select serviceorder_device_id,--服务单设备id solution_id,--解决方案id,1-维修,2-更换,3-升级 fault_type_id --故障分类id from ciss_service_fault_dtl;
-
小结
- 掌握DWB层维修事实指标表的需求分析
2:维修事实指标构建
-
目标:实现DWB层维修事实指标表的构建
-
实施
- 建表
drop table if exists one_make_dwb.fact_srv_repair; create table if not exists one_make_dwb.fact_srv_repair( rpr_id string comment '维修单id' , rpr_code string comment '维修单编码' , srv_user_id string comment '服务人员用户id' , ss_id string comment '服务网点id' , os_id string comment '油站id' , date_id string comment '日期id' , exp_rpr_num string comment '收费维修数量' , hour_money int comment '工时费用' , parts_money int comment '配件费用' , fars_money int comment '车船费用' , rpr_device_num int comment '维修设备数量' , rpr_mtrl_num int comment '维修配件数量' , exchg_parts_num int comment '更换配件数量' , upgrade_parts_num int comment '升级配件数量' , fault_type_ids string comment '故障类型id集合' ) comment '维修单事实表' partitioned by (dt string) stored as orc location '/data/dw/dwb/one\_make/fact\_srv\_repair';
- 抽取
insert overwrite table one_make_dwb.fact_srv_repair partition(dt = '20210101') select repair.id rpr_id --维修单id , repair.code rpr_code --维修单号 , swo.service_userid srv_user_id --工程师id , swo.service_station_id ss_id --服务网点id , swo.oil_station_id os_id --油站id , swo.create_time date_id --创建时间 , case when repair.is_pay = 1 then 1 else 0 end exp_rpr_num --收费维修数量
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
https://bbs.csdn.net/topics/618545628)**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!