add workflow 荟聚API_2,dev
This commit is contained in:
parent
9f3ba35336
commit
6167ed77a3
|
@ -0,0 +1,52 @@
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS p20_pdm.t01_scrm_contact_merge;
|
||||||
|
CREATE TABLE IF NOT EXISTS p20_pdm.t01_scrm_contact_merge (
|
||||||
|
merged_leads_id VARCHAR(30)
|
||||||
|
, scrm_leads_id VARCHAR(30)
|
||||||
|
, proc_date timestamp(0)
|
||||||
|
, event VARCHAR(30)
|
||||||
|
, target_name VARCHAR(30)
|
||||||
|
, last_updated timestamp(0)
|
||||||
|
, name VARCHAR(30)
|
||||||
|
, type VARCHAR(30)
|
||||||
|
, content_name VARCHAR(30)
|
||||||
|
, source VARCHAR(30)
|
||||||
|
, tag VARCHAR(30)
|
||||||
|
, keyword VARCHAR(30)
|
||||||
|
, attr VARCHAR(30)
|
||||||
|
, group_label VARCHAR(30)
|
||||||
|
, label VARCHAR(30)
|
||||||
|
, etl_batch_no VARCHAR(50)
|
||||||
|
, etl_first_dt timestamp(0)
|
||||||
|
, etl_job VARCHAR(50)
|
||||||
|
, etl_proc_dt timestamp(0)
|
||||||
|
, etl_tx_dt timestamp(0)
|
||||||
|
, src_sysname VARCHAR(50)
|
||||||
|
, src_table VARCHAR(50)
|
||||||
|
,primary key( merged_leads_id,scrm_leads_id )
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.merged_leads_id IS '被合并线索ID';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.scrm_leads_id IS '线索ID';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.proc_date IS '处理日期';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.event IS '处理事项';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.target_name IS '目标名称';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.last_updated IS '最后更新日期';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.name IS '名称';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.type IS '类型';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.content_name IS '目录名称';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.source IS '来源';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.tag IS '客户标签';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.keyword IS '关键词';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.attr IS '属性';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.group_label IS '标签组';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.label IS '标签';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.etl_batch_no IS '作业批次号';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.etl_first_dt IS '最初入库时间';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.etl_job IS '作业名称';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.etl_proc_dt IS '本次入库时间';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.etl_tx_dt IS '作业运行时间';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.src_sysname IS '来源系统';
|
||||||
|
COMMENT ON COLUMN p20_pdm.t01_scrm_contact_merge.src_table IS '来源表';
|
||||||
|
|
||||||
|
COMMENT ON TABLE p20_pdm.t01_scrm_contact_merge IS 'SCRM联系方式合并';
|
|
@ -0,0 +1,267 @@
|
||||||
|
/***************************************************************************************************/
|
||||||
|
/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */
|
||||||
|
/*VERSION 01.10 revised on 2020-08-25 */
|
||||||
|
/*Brilliance stems from wisdoms. */
|
||||||
|
/*************Head Section**************************************************************************/
|
||||||
|
/*Script Use: Periodically load data to :t01_scrm_contact_merge(SCRM联系方式合并-api) */
|
||||||
|
/*Create Date:2024-04-18 18:31:23 */
|
||||||
|
/*SDM Developed By: dev */
|
||||||
|
/*SDM Developed Date: 2024-04-18 */
|
||||||
|
/*SDM Checked By: dev */
|
||||||
|
/*SDM Checked Date: 2024-04-18 */
|
||||||
|
/*Script Developed By: dev */
|
||||||
|
/*Script Checked By: dev */
|
||||||
|
/*Source table 1: p10_sa.s98_s_scrm_contact_merge */
|
||||||
|
/*Source table 2: :SADB.select group_name ,group_label ,json_array_elements(events::json)->> 'name'::text as events_name,json_array_elements(events::json)->> 'label'::text as events_label
|
||||||
|
from :SADB.s98_s_customer_event_meta*/
|
||||||
|
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
|
||||||
|
/*Target Table:t01_scrm_contact_merge */
|
||||||
|
/*ETL Job Name:t01_scrm_contact_merge */
|
||||||
|
/*ETL Frequency:Daily */
|
||||||
|
/*ETL Policy:F2 */
|
||||||
|
/********************************************************************************************/
|
||||||
|
/*******Main Section**************************************************************************/
|
||||||
|
\set ON_ERROR_STOP on
|
||||||
|
\set AUTOCOMMIT on
|
||||||
|
\timing on
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*创建临时表加载当前数据 */
|
||||||
|
CREATE TEMPORARY TABLE t01_scrm_contact_merge_agi_CUR_I
|
||||||
|
( LIKE :PDMDB.t01_scrm_contact_merge)
|
||||||
|
ON COMMIT PRESERVE ROWS;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*创建临时表加载不同数据 */
|
||||||
|
CREATE TEMPORARY TABLE t01_scrm_contact_merge_agi_INS
|
||||||
|
( LIKE :PDMDB.t01_scrm_contact_merge)
|
||||||
|
ON COMMIT PRESERVE ROWS;
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************************************/
|
||||||
|
/* GROUP 1:Source Table:s98_s_scrm_contact_merge******************************************************/
|
||||||
|
/*****************************************************************************************************/
|
||||||
|
INSERT INTO t01_scrm_contact_merge_agi_CUR_I (
|
||||||
|
merged_leads_id /*被合并线索ID*/
|
||||||
|
,scrm_leads_id /*线索ID*/
|
||||||
|
,proc_date /*处理日期*/
|
||||||
|
,event /*处理事项*/
|
||||||
|
,target_name /*目标名称*/
|
||||||
|
,last_updated /*最后更新日期*/
|
||||||
|
,name /*名称*/
|
||||||
|
,type /*类型*/
|
||||||
|
,content_name /*目录名称*/
|
||||||
|
,source /*来源*/
|
||||||
|
,tag /*客户标签*/
|
||||||
|
,keyword /*关键词*/
|
||||||
|
,attr /*属性*/
|
||||||
|
,group_label /*标签组*/
|
||||||
|
,label /*标签*/
|
||||||
|
,etl_batch_no /*作业批次号*/
|
||||||
|
,etl_first_dt /*最初入库时间*/
|
||||||
|
,etl_job /*作业名称*/
|
||||||
|
,etl_proc_dt /*本次入库时间*/
|
||||||
|
,etl_tx_dt /*作业运行时间*/
|
||||||
|
,src_sysname /*来源系统*/
|
||||||
|
,src_table /*来源表*/
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
|
COALESCE(TRIM(CAST(p0.merged_customer_id AS VARCHAR(30))),'') /*merged_leads_id*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.customer_id AS VARCHAR(30))),'') /*scrm_leads_id*/
|
||||||
|
,COALESCE(TO_TIMESTAMP(CAST(p0.date AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*proc_date*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.event AS VARCHAR(30))),'') /*event*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.target_name AS VARCHAR(30))),'') /*target_name*/
|
||||||
|
,COALESCE(TO_TIMESTAMP(CAST(p0.last_updated AS VARCHAR(19)),'YYYY-MM-DD HH24:mi:ss'),TO_TIMESTAMP(:NULLDATE,'YYYYMMDD')) /*last_updated*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.c_name AS VARCHAR(30))),'') /*name*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.c_type AS VARCHAR(30))),'') /*type*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.content_name AS VARCHAR(30))),'') /*content_name*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.source AS VARCHAR(30))),'') /*source*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.tag AS VARCHAR(30))),'') /*tag*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.c_keyword AS VARCHAR(30))),'') /*keyword*/
|
||||||
|
,COALESCE(TRIM(CAST(p0.attr2 AS VARCHAR(30))),'') /*attr*/
|
||||||
|
,coalesce(p1.group_label,'') /*group_label*/
|
||||||
|
,coalesce(p1.events_label,'') /*label*/
|
||||||
|
,0 /*etl_batch_no*/
|
||||||
|
,TO_DATE(:TXDATE,'YYYYMMDD') /*etl_first_dt*/
|
||||||
|
,:ETLJOB /*etl_job*/
|
||||||
|
,current_timestamp(0) /*etl_proc_dt*/
|
||||||
|
,TO_DATE(:TXDATE,'YYYYMMDD') /*etl_tx_dt*/
|
||||||
|
,Substr('s98_s_scrm_contact_merge',1,3) /*src_sysname*/
|
||||||
|
,'s98_s_scrm_contact_merge' /*src_table*/
|
||||||
|
|
||||||
|
FROM p10_sa.s98_s_scrm_contact_merge p0
|
||||||
|
None (select group_name ,group_label ,json_array_elements(events::json)->> 'name'::text as events_name,json_array_elements(events::json)->> 'label'::text as events_label
|
||||||
|
from :SADB.s98_s_customer_event_meta) p1
|
||||||
|
ON p0.event=p1.events_name
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*将不同数据插入到临时表 */
|
||||||
|
;INSERT INTO t01_scrm_contact_merge_agi_INS (
|
||||||
|
proc_date /*处理日期*/
|
||||||
|
,event /*处理事项*/
|
||||||
|
,target_name /*目标名称*/
|
||||||
|
,last_updated /*最后更新日期*/
|
||||||
|
,name /*名称*/
|
||||||
|
,type /*类型*/
|
||||||
|
,content_name /*目录名称*/
|
||||||
|
,source /*来源*/
|
||||||
|
,tag /*客户标签*/
|
||||||
|
,keyword /*关键词*/
|
||||||
|
,attr /*属性*/
|
||||||
|
,group_label /*标签组*/
|
||||||
|
,label /*标签*/
|
||||||
|
,merged_leads_id /*被合并线索ID*/
|
||||||
|
,scrm_leads_id /*线索ID*/
|
||||||
|
,etl_batch_no /*作业批次号*/
|
||||||
|
,etl_first_dt /*最初入库时间*/
|
||||||
|
,etl_job /*作业名称*/
|
||||||
|
,etl_proc_dt /*本次入库时间*/
|
||||||
|
,etl_tx_dt /*作业运行时间*/
|
||||||
|
,src_sysname /*来源系统*/
|
||||||
|
,src_table /*来源表*/
|
||||||
|
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
|
P1.proc_date /*处理日期*/
|
||||||
|
,P1.event /*处理事项*/
|
||||||
|
,P1.target_name /*目标名称*/
|
||||||
|
,P1.last_updated /*最后更新日期*/
|
||||||
|
,P1.name /*名称*/
|
||||||
|
,P1.type /*类型*/
|
||||||
|
,P1.content_name /*目录名称*/
|
||||||
|
,P1.source /*来源*/
|
||||||
|
,P1.tag /*客户标签*/
|
||||||
|
,P1.keyword /*关键词*/
|
||||||
|
,P1.attr /*属性*/
|
||||||
|
,P1.group_label /*标签组*/
|
||||||
|
,P1.label /*标签*/
|
||||||
|
,P1.merged_leads_id /*被合并线索ID*/
|
||||||
|
,P1.scrm_leads_id /*线索ID*/
|
||||||
|
,P1.etl_batch_no /*作业批次号*/
|
||||||
|
,P1.etl_first_dt /*最初入库时间*/
|
||||||
|
,P1.etl_job /*作业名称*/
|
||||||
|
,P1.etl_proc_dt /*本次入库时间*/
|
||||||
|
,P1.etl_tx_dt /*作业运行时间*/
|
||||||
|
,P1.src_sysname /*来源系统*/
|
||||||
|
,P1.src_table /*来源表*/
|
||||||
|
|
||||||
|
FROM t01_scrm_contact_merge_agi_CUR_I P1
|
||||||
|
LEFT JOIN :PDMDB.t01_scrm_contact_merge P2
|
||||||
|
ON P1.proc_date = P2.proc_date
|
||||||
|
AND P1.event = P2.event
|
||||||
|
AND P1.target_name = P2.target_name
|
||||||
|
AND P1.last_updated = P2.last_updated
|
||||||
|
AND P1.name = P2.name
|
||||||
|
AND P1.type = P2.type
|
||||||
|
AND P1.content_name = P2.content_name
|
||||||
|
AND P1.source = P2.source
|
||||||
|
AND P1.tag = P2.tag
|
||||||
|
AND P1.keyword = P2.keyword
|
||||||
|
AND P1.attr = P2.attr
|
||||||
|
AND P1.group_label = P2.group_label
|
||||||
|
AND P1.label = P2.label
|
||||||
|
AND P1.merged_leads_id = P2.merged_leads_id
|
||||||
|
AND P1.scrm_leads_id = P2.scrm_leads_id
|
||||||
|
|
||||||
|
WHERE P2.proc_date IS NULL
|
||||||
|
OR P2.event IS NULL
|
||||||
|
OR P2.target_name IS NULL
|
||||||
|
OR P2.last_updated IS NULL
|
||||||
|
OR P2.name IS NULL
|
||||||
|
OR P2.type IS NULL
|
||||||
|
OR P2.content_name IS NULL
|
||||||
|
OR P2.source IS NULL
|
||||||
|
OR P2.tag IS NULL
|
||||||
|
OR P2.keyword IS NULL
|
||||||
|
OR P2.attr IS NULL
|
||||||
|
OR P2.group_label IS NULL
|
||||||
|
OR P2.label IS NULL
|
||||||
|
OR P2.merged_leads_id IS NULL
|
||||||
|
OR P2.scrm_leads_id IS NULL
|
||||||
|
|
||||||
|
;
|
||||||
|
/*将新增数据插入到目标表 */
|
||||||
|
;INSERT INTO :PDMDB.t01_scrm_contact_merge (
|
||||||
|
proc_date /*处理日期*/
|
||||||
|
,event /*处理事项*/
|
||||||
|
,target_name /*目标名称*/
|
||||||
|
,last_updated /*最后更新日期*/
|
||||||
|
,name /*名称*/
|
||||||
|
,type /*类型*/
|
||||||
|
,content_name /*目录名称*/
|
||||||
|
,source /*来源*/
|
||||||
|
,tag /*客户标签*/
|
||||||
|
,keyword /*关键词*/
|
||||||
|
,attr /*属性*/
|
||||||
|
,group_label /*标签组*/
|
||||||
|
,label /*标签*/
|
||||||
|
,merged_leads_id /*被合并线索ID*/
|
||||||
|
,scrm_leads_id /*线索ID*/
|
||||||
|
,etl_batch_no /*作业批次号*/
|
||||||
|
,etl_first_dt /*最初入库时间*/
|
||||||
|
,etl_job /*作业名称*/
|
||||||
|
,etl_proc_dt /*本次入库时间*/
|
||||||
|
,etl_tx_dt /*作业运行时间*/
|
||||||
|
,src_sysname /*来源系统*/
|
||||||
|
,src_table /*来源表*/
|
||||||
|
|
||||||
|
)
|
||||||
|
SELECT
|
||||||
|
P1.proc_date /*处理日期*/
|
||||||
|
,P1.event /*处理事项*/
|
||||||
|
,P1.target_name /*目标名称*/
|
||||||
|
,P1.last_updated /*最后更新日期*/
|
||||||
|
,P1.name /*名称*/
|
||||||
|
,P1.type /*类型*/
|
||||||
|
,P1.content_name /*目录名称*/
|
||||||
|
,P1.source /*来源*/
|
||||||
|
,P1.tag /*客户标签*/
|
||||||
|
,P1.keyword /*关键词*/
|
||||||
|
,P1.attr /*属性*/
|
||||||
|
,P1.group_label /*标签组*/
|
||||||
|
,P1.label /*标签*/
|
||||||
|
,P1.merged_leads_id /*被合并线索ID*/
|
||||||
|
,P1.scrm_leads_id /*线索ID*/
|
||||||
|
,P1.etl_batch_no /*作业批次号*/
|
||||||
|
,P1.etl_first_dt /*最初入库时间*/
|
||||||
|
,P1.etl_job /*作业名称*/
|
||||||
|
,P1.etl_proc_dt /*本次入库时间*/
|
||||||
|
,P1.etl_tx_dt /*作业运行时间*/
|
||||||
|
,P1.src_sysname /*来源系统*/
|
||||||
|
,P1.src_table /*来源表*/
|
||||||
|
|
||||||
|
FROM t01_scrm_contact_merge_agi_INS P1
|
||||||
|
ON CONFLICT ( merged_leads_id,scrm_leads_id)
|
||||||
|
DO UPDATE SET
|
||||||
|
merged_leads_id=excluded.merged_leads_id
|
||||||
|
,scrm_leads_id=excluded.scrm_leads_id
|
||||||
|
,proc_date=excluded.proc_date
|
||||||
|
,event=excluded.event
|
||||||
|
,target_name=excluded.target_name
|
||||||
|
,last_updated=excluded.last_updated
|
||||||
|
,name=excluded.name
|
||||||
|
,type=excluded.type
|
||||||
|
,content_name=excluded.content_name
|
||||||
|
,source=excluded.source
|
||||||
|
,tag=excluded.tag
|
||||||
|
,keyword=excluded.keyword
|
||||||
|
,attr=excluded.attr
|
||||||
|
,group_label=excluded.group_label
|
||||||
|
,label=excluded.label
|
||||||
|
,etl_batch_no=excluded.etl_batch_no
|
||||||
|
,etl_first_dt=excluded.etl_first_dt
|
||||||
|
,etl_job=excluded.etl_job
|
||||||
|
,etl_proc_dt=excluded.etl_proc_dt
|
||||||
|
,etl_tx_dt=excluded.etl_tx_dt
|
||||||
|
,src_sysname=excluded.src_sysname
|
||||||
|
,src_table=excluded.src_table
|
||||||
|
|
||||||
|
|
||||||
|
;
|
||||||
|
/*****程序结束退出 */
|
||||||
|
\q
|
||||||
|
|
|
@ -173,6 +173,14 @@ params={'my_param':"t01_scrm_contact_update_agi"},
|
||||||
depends_on_past=False,
|
depends_on_past=False,
|
||||||
retries=3,
|
retries=3,
|
||||||
dag=dag)
|
dag=dag)
|
||||||
|
t01_scrm_contact_merge = SSHOperator(
|
||||||
|
ssh_hook=sshHook,
|
||||||
|
task_id='t01_scrm_contact_merge',
|
||||||
|
command='/data/airflow/etl/PDM/run_sa.sh {{ ds_nodash }} {{params.my_param}} >>/data/airflow/logs/run_tpt_{{ds_nodash}}.log 2>&1 ',
|
||||||
|
params={'my_param':"t01_scrm_contact_merge_agi"},
|
||||||
|
depends_on_past=False,
|
||||||
|
retries=3,
|
||||||
|
dag=dag)
|
||||||
customer_events_3292 >> customer_events_feign
|
customer_events_3292 >> customer_events_feign
|
||||||
customer_events_open_content_page_9684 >> custom_events_open_content_page_feign
|
customer_events_open_content_page_9684 >> custom_events_open_content_page_feign
|
||||||
customer_event_meta_2268 >> customer_event_meta_feign
|
customer_event_meta_2268 >> customer_event_meta_feign
|
||||||
|
@ -182,4 +190,5 @@ customer_event_meta_load >> t01_scrm_leads
|
||||||
custom_events_open_page_load >> t01_scrm_leads
|
custom_events_open_page_load >> t01_scrm_leads
|
||||||
t01_scrm_leads >> t01_scrm_contact_update
|
t01_scrm_leads >> t01_scrm_contact_update
|
||||||
t01_scrm_leads >> t01_scrm_contact
|
t01_scrm_leads >> t01_scrm_contact
|
||||||
t01_scrm_contact >> task_failed
|
t01_scrm_contact >> t01_scrm_contact_merge
|
||||||
|
t01_scrm_contact_merge >> task_failed
|
||||||
|
|
Loading…
Reference in New Issue