ods_to_dwd_sql

时间:2021-02-23 14:36:54   收藏:0   阅读:0

主要是这两个sql

 

start_log(利用get_json_object函数):

insert overwrite table "$app".dwd_start_log 
PARTITION (dt=$do_date) 
select 
    get_json_object(line,$.mid) mid_id, 
    get_json_object(line,$.uid) user_id, 
    get_json_object(line,$.vc) version_code, 
    get_json_object(line,$.vn) version_name, 
    get_json_object(line,$.l) lang, 
    get_json_object(line,$.sr) source, 
    get_json_object(line,$.os) os, 
    get_json_object(line,$.ar) area, 
    get_json_object(line,$.md) model, 
    get_json_object(line,$.ba) brand, 
    get_json_object(line,$.sv) sdk_version,
    get_json_object(line,$.g) gmail, 
    get_json_object(line,$.hw) height_width, 
    get_json_object(line,$.t) app_time, 
    get_json_object(line,$.nw) network, 
    get_json_object(line,$.ln) lng, 
    get_json_object(line,$.la) lat, 
    get_json_object(line,$.entry) entry, 
    get_json_object(line,$.open_ad_type) open_ad_type, 
    get_json_object(line,$.action) action, 
    get_json_object(line,$.loading_time) loading_time, 
    get_json_object(line,$.detail) detail, 
    get_json_object(line,$.extend1) extend1
from "$app".ods_start_log 
where dt=$do_date;
"

 

 

base_event(利用UDF,UDTF函数):

use "$APP"; 
insert overwrite table "$APP".dwd_base_event_log partition(dt=$do_date) 
select base_analizer(line,mid) as mid_id, 
base_analizer(line,uid) as user_id, 
base_analizer(line,vc) as version_code, 
base_analizer(line,vn) as version_name, 
base_analizer(line,l) as lang, 
base_analizer(line,sr) as source, 
base_analizer(line,os) as os, 
base_analizer(line,ar) as area,
base_analizer(line,md) as model, 
base_analizer(line,ba) as brand, 
base_analizer(line,sv) as sdk_version, 
base_analizer(line,g) as gmail, 
base_analizer(line,hw) as height_width, 
base_analizer(line,t) as app_time, 
base_analizer(line,nw) as network, 
base_analizer(line,ln) as lng, 
base_analizer(line,la) as lat, 
event_name, 
event_json, 
base_analizer(line,st) as server_time 
from "$APP".ods_event_log 
lateral view flat_analizer(base_analizer(line,et)) tem_flat as event_name,event_json 
where dt=$do_date and base_analizer(line,et)<>‘‘;
"

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!