首页 > 其他 > 详细

大数据实战(二十九):电商数仓(二十二)之用户行为数据采集(二十二)数仓搭建之DWD层(四) DWD层事件表获取(二)

时间:2020-08-21 16:15:29      阅读:73      评论:0      收藏:0      [点我收藏+]

6 用户前台活跃表

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_active_foreground_log;
CREATE EXTERNAL TABLE dwd_active_foreground_log(
`mid_id` string,
`user_id` string,
`version_code` string,
`version_name` string,
`lang` string,
`source` string,
`os` string,
`area` string,
`model` string,
`brand` string,
`sdk_version` string,
`gmail` string,
`height_width` string,
`app_time` string,
`network` string,
`lng` string,
`lat` string,
`push_id` string,
`access` string,
`server_time` string)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_foreground_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入数据

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_active_foreground_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.push_id‘) push_id,
get_json_object(event_json,‘$.kv.access‘) access,
server_time
from dwd_base_event_log
where dt=‘2019-12-14‘ and event_name=‘active_foreground‘;
View Code

3)测试

hive (gmall)> select * from dwd_active_foreground_log limit 2;

7 用户后台活跃表

 

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_active_background_log;
CREATE EXTERNAL TABLE dwd_active_background_log(
`mid_id` string,
`user_id` string,
`version_code` string,
`version_name` string,
`lang` string,
`source` string,
`os` string,
`area` string,
`model` string,
`brand` string,
`sdk_version` string,
`gmail` string,
 `height_width` string,
`app_time` string,
`network` string,
`lng` string,
`lat` string,
`active_source` string,
`server_time` string
)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_background_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入数据

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_active_background_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.active_source‘) active_source,
server_time
from dwd_base_event_log
where dt=‘2019-12-14‘ and event_name=‘active_background‘;
View Code

3)测试

hive (gmall)> select * from dwd_active_background_log limit 2;

 

8 评论

 

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_comment_log;
CREATE EXTERNAL TABLE dwd_comment_log(
`mid_id` string,
`user_id` string,
`version_code` string,
`version_name` string,
`lang` string,
`source` string,
`os` string,
`area` string,
`model` string,
`brand` string,
`sdk_version` string,
`gmail` string,
`height_width` string,
`app_time` string,
`network` string,
`lng` string,
`lat` string,
`comment_id` int,
`userid` int,
`p_comment_id` int, 
`content` string,
`addtime` string,
`other_id` int,
`praise_count` int,
`reply_count` int,
`server_time` string
)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_comment_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入数据

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_comment_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.comment_id‘) comment_id,
get_json_object(event_json,‘$.kv.userid‘) userid,
get_json_object(event_json,‘$.kv.p_comment_id‘) p_comment_id,
get_json_object(event_json,‘$.kv.content‘) content,
get_json_object(event_json,‘$.kv.addtime‘) addtime,
get_json_object(event_json,‘$.kv.other_id‘) other_id,
get_json_object(event_json,‘$.kv.praise_count‘) praise_count,
get_json_object(event_json,‘$.kv.reply_count‘) reply_count,
server_time
from dwd_base_event_log
where dt=‘2019-12-14‘ and event_name=‘comment‘;
View Code

3)测试

hive (gmall)> select * from dwd_comment_log limit 2;

 

9 收藏

 

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_favorites_log;
CREATE EXTERNAL TABLE dwd_favorites_log(
`mid_id` string,
`user_id` string, 
`version_code` string, 
`version_name` string, 
`lang` string, 
`source` string, 
`os` string, 
`area` string, 
`model` string,
`brand` string, 
`sdk_version` string, 
`gmail` string, 
`height_width` string,  
`app_time` string,
`network` string, 
`lng` string, 
`lat` string, 
`id` int, 
`course_id` int, 
`userid` int,
`add_time` string,
`server_time` string
)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_favorites_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入据数

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_favorites_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.id‘) id,
get_json_object(event_json,‘$.kv.course_id‘) course_id,
get_json_object(event_json,‘$.kv.userid‘) userid,
get_json_object(event_json,‘$.kv.add_time‘) add_time,
server_time
from dwd_base_event_log 
where dt=‘2019-12-14‘ and event_name=‘favorites‘;
View Code

3)测试

hive (gmall)> select * from dwd_favorites_log limit 2;

10 点赞

 

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_praise_log;
CREATE EXTERNAL TABLE dwd_praise_log(
`mid_id` string,
`user_id` string, 
`version_code` string, 
`version_name` string, 
`lang` string, 
`source` string, 
`os` string, 
`area` string, 
`model` string,
`brand` string, 
`sdk_version` string, 
`gmail` string, 
`height_width` string,  
`app_time` string,
`network` string, 
`lng` string, 
`lat` string, 
`id` string, 
`userid` string, 
`target_id` string,
`type` string,
`add_time` string,
`server_time` string
)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_praise_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入数据

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_praise_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.id‘) id,
get_json_object(event_json,‘$.kv.userid‘) userid,
get_json_object(event_json,‘$.kv.target_id‘) target_id,
get_json_object(event_json,‘$.kv.type‘) type,
get_json_object(event_json,‘$.kv.add_time‘) add_time,
server_time
from dwd_base_event_log
where dt=‘2019-12-14‘ and event_name=‘praise‘;
View Code

3)测试

hive (gmall)> select * from dwd_praise_log limit 2;

 

11 错误日志表

1)建表语句

技术分享图片
hive (gmall)> 
drop table if exists dwd_error_log;
CREATE EXTERNAL TABLE dwd_error_log(
`mid_id` string,
`user_id` string, 
`version_code` string, 
`version_name` string, 
`lang` string, 
`source` string, 
`os` string, 
`area` string, 
`model` string,
`brand` string, 
`sdk_version` string, 
`gmail` string, 
`height_width` string,  
`app_time` string,
`network` string, 
`lng` string, 
`lat` string, 
`errorBrief` string, 
`errorDetail` string, 
`server_time` string)
PARTITIONED BY (dt string)
stored as parquet
location ‘/warehouse/gmall/dwd/dwd_error_log/‘
TBLPROPERTIES(‘parquet.compression‘=‘lzo‘);
View Code

2)导入数据

技术分享图片
hive (gmall)> 
set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table dwd_error_log
PARTITION (dt=‘2019-12-14‘)
select 
mid_id,
user_id,
version_code,
version_name,
lang,
source,
os,
area,
model,
brand,
sdk_version,
gmail,
height_width,
app_time,
network,
lng,
lat,
get_json_object(event_json,‘$.kv.errorBrief‘) errorBrief,
get_json_object(event_json,‘$.kv.errorDetail‘) errorDetail,
server_time
from dwd_base_event_log 
where dt=‘2019-12-14‘ and event_name=‘error‘;
View Code

3)测试

hive (gmall)> select * from dwd_error_log limit 2;

 

大数据实战(二十九):电商数仓(二十二)之用户行为数据采集(二十二)数仓搭建之DWD层(四) DWD层事件表获取(二)

原文:https://www.cnblogs.com/qiu-hua/p/13541514.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!