大数据全系列 教程
1869个小节阅读:467.6k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
经过以上需求分析,在数仓中设计分层如下:
在Hive中构建ODS层对应的表:
TO_YCAK_USR_LOC_D用户位置记录日增量表
物理模型名称 | TO_YCAK_USR_LOC_D | DATA_TYPE | COMMENT |
---|---|---|---|
逻辑模型名称 | 用户位置记录日增量表 | 数据类型 | 注释 |
ID | ID | int | |
用户ID | UID | int | |
纬度 | LAT | string | |
经度 | LNG | string | |
位置上传时间 | DATETIME | string | |
机器ID | MID | int | |
数据日期 | data_dt | varchar(32) | 分区字段 |
xxxxxxxxxx
CREATE EXTERNAL TABLE `TO_YCAK_USR_LOC_D`(
`ID` int,
`UID` int,
`LAT` string,
`LNG` string,
`DATETIME` string,
`MID` string
)
PARTITIONED BY (data_dt string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION 'hdfs://mycluster/user/hive_remote/warehouse/data/user/TO_YCAK_USR_LOC_D';
TO_YCAK_CNSM_D机器消费订单明细增量表
物理模型名称 | TO_YCAK_CNSM_D | DATA_TYPE | COMMENT |
---|---|---|---|
逻辑模型名称 | 机器消费订单明细增量表 | 数据类型 | 注释 |
自增唯一ID | ID | int | NOTNULLAUTO_INCREMENT |
机器ID | MID | int(11) | |
产品类型 | PRDCD_TYPE | int(11) | 1Kshow,2Minik,3Kshow之王街机版 4乐方,8MiniShow |
支付类型 | PAY_TYPE | int(11) | 0投币,1金币,2银币,3音乐积分, 4微信,5支付宝,6免费券,7QQ |
套餐ID | PKG_ID | int(11) | |
套餐名称 | PKG_NM | varchar(32) | |
总金额 | AMT | int(11) | 以分为单位 |
消费ID | CNSM_ID | varchar(128) | |
订单ID | ORDR_ID | varchar(64) | |
第三方交易编号 | TRD_ID | varchar(64) | |
消费时间 | ACT_TM | varchar(64) | |
用户ID | UID | int(11) | |
用户名称 | NICK_NM | varchar(400) | Base64ecnode |
优惠活动ID | ACTV_ID | int(11) | |
优惠活动名称 | ACTV_NM | varchar(64) | |
优惠券类型 | CPN_TYPE | int(11) | 0代表没有使用优惠券 |
优惠券类型名称 | CPN_TYPE_NM | varchar(64) | |
套餐原价 | PKG_PRC | int(11) | 0套餐原价不详 |
优惠金额 | PKG_DSCNT | int(11) | |
订单类型 | ORDR_TYPE | int(11) | 1.预划扣2.异常金额3.商家退款 4.机器退款 --3/4都是商家退款 |
账单日期 | BILL_DT | varchar(64) | |
数据日期 | data_dt | varchar(32) | 分区字段 |
xxxxxxxxxx
CREATE EXTERNAL TABLE `TO_YCAK_CNSM_D`(
`ID` int,
`MID` int,
`PRDCD_TYPE` int,
`PAY_TYPE` int,
`PKG_ID` int,
`PKG_NM` string,
`AMT` int,
`CNSM_ID` string,
`ORDR_ID` string,
`TRD_ID` string,
`ACT_TM` string,
`UID` int,
`NICK_NM` string,
`ACTV_ID` int,
`ACTV_NM` string,
`CPN_TYPE` int,
`CPN_TYPE_NM` string,
`PKG_PRC` int,
`PKG_DSCNT` int,
`ORDR_TYPE` int,
`BILL_DT` int
)
PARTITIONED BY (data_dt string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'
LOCATION 'hdfs://mycluster/user/hive_remote/warehouse/data/user/TO_YCAK_CNSM_D';