diff --git a/task/ecommerce_income_report.py b/task/ecommerce_income_report.py index e27b3f61dee0d91ecb6d0cb9b27880e884f8d745..f2a4b849c0432331cb81625d03ed3a37f78c7df6 100644 --- a/task/ecommerce_income_report.py +++ b/task/ecommerce_income_report.py @@ -195,6 +195,36 @@ group BY partition_date pv = res.pv # 商详页PV + pv_sql = """ + SELECT + partition_date,count(1) welfare_pv +FROM +( + SELECT cl_id,partition_date + FROM bl_hdfs_maidian_updates + WHERE partition_date >='{start_date}'and partition_date < '{end_date}' + AND action='page_view' + AND params['page_name'] = 'welfare_detail' +)a1 +JOIN +( + SELECT device_id,partition_date + from online.ml_device_day_active_status + WHERE partition_date >='{start_date}'and partition_date < '{end_date}' + AND active_type in ('1','2','4') +)a2 +on a2.device_id = a1.cl_id +AND a2.partition_date=a1.partition_date +group by partition_date + """.format(start_date=yesterday_str,end_date=today_str) + all_pv_df = spark.sql(pv_sql) + all_pv_df.show(1) + sql_res = all_pv_df.collect() + for res in sql_res: + welfare_pv = res.welfare_pv + + + # æœç´¢å•†è¯¦é¡µPV bus_detail_sql = r""" --页颿µè§ˆpvuv SELECT @@ -386,7 +416,8 @@ group by partition_day pv_div_dau = referrer_search_welfare_pv/dau pv_div_quanzhong_dau = referrer_search_welfare_pv/quanzhong_dau - ad_flow_rat = (pv + cpc_click_num)/referrer_search_welfare_pv + search_pv_div_all_pv = referrer_search_welfare_pv / welfare_pv + ad_flow_rat = (pv + cpc_click_num)/ welfare_pv budget_consumption_rate = cpc_proportion_expend_amount/budget cpc_item_pricing = cpc_proportion_expend_recharge_amount/cpc_click_num # tol_proportion_expend_amount @@ -396,10 +427,10 @@ group by partition_day partition_date = yesterday_str pid = hashlib.md5(partition_date.encode("utf8")).hexdigest() cpc_daily_click_sql = """replace into ecommerce_income_report( - pv_div_dau,pv_div_quanzhong_dau,ad_flow_rat,budget_consumption_rate,cpc_item_pricing,tol_proportion_expend_amount,partition_day,day_id,pid) VALUES( - {pv_div_dau},{pv_div_quanzhong_dau},{ad_flow_rat},{budget_consumption_rate},{cpc_item_pricing},{tol_proportion_expend_amount},'{partition_day}','{day_id}','{pid}');""".format( + pv_div_dau,pv_div_quanzhong_dau,ad_flow_rat,budget_consumption_rate,cpc_item_pricing,tol_proportion_expend_amount,partition_day,day_id,pid,search_pv_div_all_pv) VALUES( + {pv_div_dau},{pv_div_quanzhong_dau},{ad_flow_rat},{budget_consumption_rate},{cpc_item_pricing},{tol_proportion_expend_amount},'{partition_day}','{day_id}','{pid}',search_pv_div_all_pv);""".format( pv_div_dau=pv_div_dau,pv_div_quanzhong_dau=pv_div_quanzhong_dau,ad_flow_rat=ad_flow_rat,budget_consumption_rate=budget_consumption_rate, - cpc_item_pricing=cpc_item_pricing,tol_proportion_expend_amount=tol_proportion_expend_amount,partition_day=today_str, + cpc_item_pricing=cpc_item_pricing,tol_proportion_expend_amount=tol_proportion_expend_amount,partition_day=today_str,search_pv_div_all_pv=search_pv_div_all_pv, day_id=today_str,pid=pid ) print(cpc_daily_click_sql)