提交 500cc55e 编写于 作者: wuyunfeng's avatar wuyunfeng

流量与时长统计0.9.4版本

上级 b98a80ff
...@@ -9,12 +9,14 @@ package com.config ...@@ -9,12 +9,14 @@ package com.config
*/ */
object MyConfigSession { object MyConfigSession {
//Hive的DW层流量表 //Hive的DW层流量表
final val HIVE_TABLE0: String = "pica_dw.dw_fact_log_session_pref"
final val HIVE_TABLE1_TMP: String = "pica_dw.dw_fact_log_session_tmp" final val HIVE_TABLE1_TMP: String = "pica_dw.dw_fact_log_session_tmp"
final val HIVE_TABLE2_TMP: String = "pica_dw.dw_fact_log_session_path_tmp" final val HIVE_TABLE2_TMP: String = "pica_dw.dw_fact_log_session_path_tmp"
final val HIVE_TABLE1: String = "pica_dw.dw_fact_log_session" final val HIVE_TABLE1: String = "pica_dw.dw_fact_log_session"
final val HIVE_TABLE2: String = "pica_dw.dw_fact_log_session_path" final val HIVE_TABLE2: String = "pica_dw.dw_fact_log_session_path"
final val HIVE_TABLE3: String = "pica_dw.dw_fact_log_session_heart" final val HIVE_TABLE3: String = "pica_dw.dw_fact_log_session_heart"
final val HIVE_TABLE4: String = "pica_dw.dw_fact_log_session_pref" final val HIVE_TABLE4: String = "pica_dw.dw_fact_log_session_term"
final val HIVE_TABLE4_MID: String = "pica_dw.dw_fact_log_session_term_mid"
//写入的文件路径 //写入的文件路径
final val PARQUET_PATH: String = "hdfs://bi-name1:8020/tmp/output/" final val PARQUET_PATH: String = "hdfs://bi-name1:8020/tmp/output/"
...@@ -43,7 +45,7 @@ object MyConfigSession { ...@@ -43,7 +45,7 @@ object MyConfigSession {
| from pica_log.picalog_trace_app_part | from pica_log.picalog_trace_app_part
| where pseudo_session is not null and pseudo_session !='' | where pseudo_session is not null and pseudo_session !=''
| and pseudo_id !='' and extra_info !='com.picahealth.patient' and serviceName != 'trace3' | and pseudo_id !='' and extra_info !='com.picahealth.patient' and serviceName != 'trace3'
| and FROM_UNIXTIME(cast(substring(created,1,10) as bigint),'yyyy-MM-dd')=created_day and created is not null and created!='' | and created is not null and created!='' and FROM_UNIXTIME(cast(substring(created,1,10) as bigint),'yyyy-MM-dd')=created_day
""".stripMargin """.stripMargin
//从源表pica_log.picalog_trace_app_part中执行SQL获取源数据,这里获取昨天的 //从源表pica_log.picalog_trace_app_part中执行SQL获取源数据,这里获取昨天的
final val SOURCE_SQL: String = final val SOURCE_SQL: String =
...@@ -57,14 +59,13 @@ object MyConfigSession { ...@@ -57,14 +59,13 @@ object MyConfigSession {
//从源表pica_log.picalog_trace_app_part中执行SQL获取源数据,输入指定日期参数时执行的SQL //从源表pica_log.picalog_trace_app_part中执行SQL获取源数据,输入指定日期参数时执行的SQL
final val SOURCE_SQL_ARGS: String = final val SOURCE_SQL_FROM_PREF: String =
""" s"""
|select pseudo_session,doctor_id,mobile,device_token,user_token_tourist,class_name,view_path,action, |select pseudo_session,cast(user_id_int as string) user_id,mobile,device_token,user_token , view_class ,view_path,action,action_type,
|component_tag,app_version,device_type,device_brand,device_model,network_type,created from pica_log.picalog_trace_app_part |component_tag,menu_code,action_code,`position`,label_value,label_class,app_version,device_type,device_brand,device_model,"" device_system,
| where pseudo_session is not null and pseudo_session !='' |net_type,created_time,date_time from ${HIVE_TABLE0}
| and pseudo_id !='' and extra_info !='com.picahealth.patient' and serviceName != 'trace3' | where 1=1 and `action`!='ACTION_EQUIP_INFO'
| and created is not null and created!='' and `action`!='ACTION_EQUIP_INFO' """.stripMargin
""".stripMargin
//从dw_fact_log_session表中筛选数据 //从dw_fact_log_session表中筛选数据
......
package com.utils package com.utils
import com.session.{SessionMenuCalc, SessionProcess, SessionProcessHeart, SessionProcessPath, SessionProcessPref} import com.session.{SessionMenuCalc, SessionProcess, SessionProcessHeart, SessionProcessPath, SessionProcessPref, SessionProcessTerm}
import org.apache.hadoop.util.ProgramDriver import org.apache.hadoop.util.ProgramDriver
/** /**
...@@ -16,6 +16,7 @@ object Driver { ...@@ -16,6 +16,7 @@ object Driver {
driver.addClass("SessionProcessHeart",classOf[SessionProcessHeart],"用户Session数据分析导入到dw_fact_log_session_heart表") driver.addClass("SessionProcessHeart",classOf[SessionProcessHeart],"用户Session数据分析导入到dw_fact_log_session_heart表")
driver.addClass("SessionMenuCalc",classOf[SessionMenuCalc],"传递日期参数--用户Session数据分析导入到dw_fact_log_session_menu_calc表") driver.addClass("SessionMenuCalc",classOf[SessionMenuCalc],"传递日期参数--用户Session数据分析导入到dw_fact_log_session_menu_calc表")
driver.addClass("SessionProcessPref",classOf[SessionProcessPref],"传递日期参数--用户Session数据etl导入到dw_fact_log_sesson_pref表") driver.addClass("SessionProcessPref",classOf[SessionProcessPref],"传递日期参数--用户Session数据etl导入到dw_fact_log_sesson_pref表")
driver.addClass("SessionProcessTerm",classOf[SessionProcessTerm],"传递日期参数--用户Session数据etl导入到dw_fact_log_sesson_term表")
driver.run(args) driver.run(args)
} }
} }
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册