Commit a5973efc authored by 王志伟's avatar 王志伟

统计复购用户日记本

parent ea0b5c83
...@@ -733,7 +733,7 @@ object smart_rank_count { ...@@ -733,7 +733,7 @@ object smart_rank_count {
//话题相关问题统计 //话题相关问题统计
object question_count { object bug_again_count {
Logger.getLogger("org.apache.spark").setLevel(Level.WARN) Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
Logger.getLogger("org.apache.eclipse.jetty.server").setLevel(Level.OFF) Logger.getLogger("org.apache.eclipse.jetty.server").setLevel(Level.OFF)
...@@ -774,7 +774,7 @@ object question_count { ...@@ -774,7 +774,7 @@ object question_count {
ti.tidbMapTable(dbName = "jerry_prod", tableName = "blacklist") ti.tidbMapTable(dbName = "jerry_prod", tableName = "blacklist")
ti.tidbMapTable(dbName = "jerry_test", tableName = "bl_device_list") ti.tidbMapTable(dbName = "jerry_test", tableName = "bl_device_list")
ti.tidbMapTable(dbName = "jerry_prod", tableName = "data_feed_exposure") ti.tidbMapTable(dbName = "jerry_prod", tableName = "data_feed_exposure")
ti.tidbMapTable(dbName = "jerry_prod", tableName = "merge_queue_table") ti.tidbMapTable(dbName = "eagle", tableName = "src_mimas_prod_api_diary")
import sc.implicits._ import sc.implicits._
...@@ -782,39 +782,39 @@ object question_count { ...@@ -782,39 +782,39 @@ object question_count {
//println(param.date) //println(param.date)
val partition_date = stat_date.replace("-","") val partition_date = stat_date.replace("-","")
val agency_id = sc.sql( val spam_order_id = sc.sql(
s""" s"""
|SELECT DISTINCT(cl_id) as device_id |select distinct(order_id)
|FROM online.ml_hospital_spam_pv_day |from mining.ml_order_spam_recognize
|WHERE partition_date >= '20180402' |where partition_date='${partition_date}'
|AND partition_date <= '20190117'
|AND pv_ratio >= 0.95
|UNION ALL
|SELECT DISTINCT(cl_id) as device_id
|FROM online.ml_hospital_spam_pv_month
|WHERE partition_date >= '20171101'
|AND partition_date <= '20190117'
|AND pv_ratio >= 0.95
""".stripMargin """.stripMargin
) )
agency_id.createOrReplaceTempView("agency_id") spam_order_id.createOrReplaceTempView("spam_order_id")
val question_count = sc.sql( val meigou_id_order = sc.sql(
s""" s"""
|SELECT partition_date,count(cl_id) |select a.user_id from (select od.user_id,count(od.order_id) as order_num
|FROM online.tl_hdfs_maidian_view ov left join agency_id |from online.ml_meigou_order_detail od left join spam_order_id
|on ov.cl_id = agency_id.device_id |on od.order_id=spam_order_id.order_id
|WHERE ov.partition_date >= '20190101' |where od.status='2'
|and ov.action='community_home_click_feed_card' |and od.partition_date='${partition_date}'
|and ov.params["card_type"]="问题" |and spam_order_id.order_id is null
|and ov.cl_id not in (select device_id from blacklist) |group by od.user_id
|and agency_id.device_id is null |order by order_num) a
|GROUP BY ov.partition_date |where a.order_num>=2
|order by ov.partition_date
""".stripMargin """.stripMargin
) )
meigou_id_order.createOrReplaceTempView("meigou_id_order")
question_count.show(30) val diary_id = sc.sql(
s"""
|select sd.id,sd.user_id
|from src_mimas_prod_api_diary sd inner join meigou_id_order
|on sd.user_id=meigou_id_order.user_id
|where sd.partition_date='${partition_date}'
""".stripMargin
)
diary_id.show()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment