通过建模,可以实现数据共享 提升复用能力 达到以空间换实现的目的
评价一个模型的标准 从以下几个方面
好的模型:数据质量
相应速度
成本消耗
健壮水平
select * from income_week privot (sum(income) for week in ('星期一','星期二','星期三','星期四','星期五'))
冒泡排序
快速排序
大表join小表 小表在前 大表在后
orc 按行分块 每块按列存储
select
coalesce(a.user_id,0) as user_id
,a.device_id
,a.appid
,'' mc
,a.group_name
,a.abtest_ds
,a.join_ds
,a.user_type
,b.dev_act_date
,case when a.ds = b.dev_act_date then 'new_dev' else 'old_dev' end as dev_type
from temp_jobdb.incr_d_fanli_app_abtest_84899_fanbeika_group_joindate_${env.YYYY}${env.MM}${env.DD} a
left join
(select deviceid as device_id,to_date(createtime) as dev_act_date from dw.full_n_tb_device where ds>='2006-01-01') b
on (case when a.device_id='' or a.device_id is null then concat('-NULL',rand() ) else a.device_id end) = b.device_id