一般去這里尋找UDF,下面為列舉的相關轉換,(河北電信依照新的協議上傳數據所需)
ip:iptostring(userip)
節目:dimcache('movie',dim_movie_mid)
節目類型:dimcache('moviegenre',dim_movie_category)
開始時間:from_unixtime(metric_playbgntime)
結束時間:from_unixtime(metric_playbgntime+metric_durationtime)
播放時長:metric_durationtime
下面是兩個hive后臺執行命令(hive存儲過程中的任務)
2016.9.2河北電信原來的全部點播數據傳送
INSERT OVERWRITE LOCAL DIRECTORY "/opt/dataftp/@yesterday"row format delimited fields terminated by '|' select * from fact_vod_historywhere dim_oem_id in (824,300138,300194,30025) and day=@yesterday;
2016.9.2河北電信更改后按照協議傳送的點播數據
INSERT OVERWRITE LOCAL DIRECTORY "/opt/dataftp/@yesterday"row format delimited fields terminated by '|' select iptostring
(userip),dim_user_uid,dim_oem_id,dim_user_hid,dimcache('movie',dim_movie_mid),dim_media_series,dimcache('movietype',dim_movie_category),from_unixtime(metric_playbgntime),
from_unixtime(metric_playbgntime+metric_durationtime),metric_durationtime,if
(metric_ispaymovie=0,'收費','免費') from fact_vod_history where dim_oem_id in(824,300138,300194,30025) and day=@yesterday;