clear workflow

This commit is contained in:
root 2024-01-09 09:58:15 +08:00
parent e47611b098
commit 4bebfdd5d5
3 changed files with 0 additions and 443 deletions

View File

@ -1,44 +0,0 @@
DROP TABLE IF EXISTS p20_pdm.T01_SCRM_CONTACT;
CREATE TABLE IF NOT EXISTS p20_pdm.T01_SCRM_CONTACT (
cue_id text
, city_name text
, company_name text
, email text
, mobile_number text
, mobile_number_fix text
, full_name text
, prov_name text
, create_time text
, wechat_id text
, update_time text
, 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( cue_id )
);
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.cue_id IS '线索ID';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.city_name IS '城市';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.company_name IS '公司';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.email IS '邮箱';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.mobile_number IS '手机号码';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.mobile_number_fix IS '调整后手机号码';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.full_name IS '姓名';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.prov_name IS '省份';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.create_time IS '创建时间';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.wechat_id IS '身份-企业微信外部联系人';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.update_time IS '更新时间';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Etl_Batch_No IS '作业批次号';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Etl_First_Dt IS '最初入库时间';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Etl_Job IS '作业名称';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Etl_Proc_Dt IS '本次入库时间';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Etl_Tx_Dt IS '作业运行时间';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Src_Sysname IS '来源系统';
COMMENT ON COLUMN p20_pdm.T01_SCRM_CONTACT.Src_Table IS '来源表';
COMMENT ON TABLE p20_pdm.T01_SCRM_CONTACT IS 'SCRM联系方式';

View File

@ -1,229 +0,0 @@
/***************************************************************************************************/
/*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(SCRM联系方式) */
/*Create Date:2024-01-05 13:21:25 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2024-01-05 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2024-01-05 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_scrm_contact_af0912 */
/*Job Type: Inbound transform (Tier 1 to Tier 2) */
/*Target Table:T01_SCRM_CONTACT */
/*ETL Job Name:T01_SCRM_CONTACT */
/*ETL Frequency:Daily */
/*ETL Policy:F2 */
/********************************************************************************************/
/*******Main Section**************************************************************************/
\set ON_ERROR_STOP on
\set AUTOCOMMIT on
\timing on
/*创建临时表加载当前数据 */
CREATE TEMPORARY TABLE T01_SCRM_CONTACT_agi_CUR_I
( LIKE :PDMDB.T01_SCRM_CONTACT)
ON COMMIT PRESERVE ROWS;
/*创建临时表加载不同数据 */
CREATE TEMPORARY TABLE T01_SCRM_CONTACT_agi_INS
( LIKE :PDMDB.T01_SCRM_CONTACT)
ON COMMIT PRESERVE ROWS;
/*****************************************************************************************************/
/* GROUP 1:Source Table:s98_s_scrm_contact_af0912*****************************************************/
/*****************************************************************************************************/
INSERT INTO T01_SCRM_CONTACT_agi_CUR_I (
cue_id /*线索ID*/
,city_name /*城市*/
,company_name /*公司*/
,email /*邮箱*/
,mobile_number /*手机号码*/
,mobile_number_fix /*调整后手机号码*/
,full_name /*姓名*/
,prov_name /*省份*/
,create_time /*创建时间*/
,wechat_id /*身份-企业微信外部联系人*/
,update_time /*更新时间*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
COALESCE(TRIM(p0.cue_id),'') /*cue_id*/
,COALESCE(TRIM(p0.city_name),'') /*city_name*/
,COALESCE(TRIM(p0.company_name),'') /*company_name*/
,COALESCE(TRIM(p0.email),'') /*email*/
,COALESCE(TRIM(p0.mobile_number),'') /*mobile_number*/
,COALESCE(TRIM(p0.mobile_number),'') /*mobile_number_fix*/
,COALESCE(TRIM(p0.full_name),'') /*full_name*/
,COALESCE(TRIM(p0.prov_name),'') /*prov_name*/
,COALESCE(TRIM(p0.create_time),'') /*create_time*/
,COALESCE(TRIM(p0.wechat_id),'') /*wechat_id*/
,COALESCE(TRIM(p0.update_time),'') /*update_time*/
,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_af0912',1,3) /*Src_Sysname*/
,'s98_s_scrm_contact_af0912' /*Src_Table*/
FROM (select * from p10_sa.s98_s_scrm_contact_af0912) p0
;
/*将不同数据插入到临时表 */
;INSERT INTO T01_SCRM_CONTACT_agi_INS (
city_name /*城市*/
,company_name /*公司*/
,email /*邮箱*/
,mobile_number /*手机号码*/
,mobile_number_fix /*调整后手机号码*/
,full_name /*姓名*/
,prov_name /*省份*/
,create_time /*创建时间*/
,wechat_id /*身份-企业微信外部联系人*/
,update_time /*更新时间*/
,cue_id /*线索ID*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.city_name /*城市*/
,P1.company_name /*公司*/
,P1.email /*邮箱*/
,P1.mobile_number /*手机号码*/
,P1.mobile_number_fix /*调整后手机号码*/
,P1.full_name /*姓名*/
,P1.prov_name /*省份*/
,P1.create_time /*创建时间*/
,P1.wechat_id /*身份-企业微信外部联系人*/
,P1.update_time /*更新时间*/
,P1.cue_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_agi_CUR_I P1
LEFT JOIN :PDMDB.T01_SCRM_CONTACT P2
ON P1.city_name = P2.city_name
AND P1.company_name = P2.company_name
AND P1.email = P2.email
AND P1.mobile_number = P2.mobile_number
AND P1.mobile_number_fix = P2.mobile_number_fix
AND P1.full_name = P2.full_name
AND P1.prov_name = P2.prov_name
AND P1.create_time = P2.create_time
AND P1.wechat_id = P2.wechat_id
AND P1.update_time = P2.update_time
AND P1.cue_id = P2.cue_id
WHERE P2.city_name IS NULL
OR P2.company_name IS NULL
OR P2.email IS NULL
OR P2.mobile_number IS NULL
OR P2.mobile_number_fix IS NULL
OR P2.full_name IS NULL
OR P2.prov_name IS NULL
OR P2.create_time IS NULL
OR P2.wechat_id IS NULL
OR P2.update_time IS NULL
OR P2.cue_id IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.T01_SCRM_CONTACT (
city_name /*城市*/
,company_name /*公司*/
,email /*邮箱*/
,mobile_number /*手机号码*/
,mobile_number_fix /*调整后手机号码*/
,full_name /*姓名*/
,prov_name /*省份*/
,create_time /*创建时间*/
,wechat_id /*身份-企业微信外部联系人*/
,update_time /*更新时间*/
,cue_id /*线索ID*/
,Etl_Batch_No /*作业批次号*/
,Etl_First_Dt /*最初入库时间*/
,Etl_Job /*作业名称*/
,Etl_Proc_Dt /*本次入库时间*/
,Etl_Tx_Dt /*作业运行时间*/
,Src_Sysname /*来源系统*/
,Src_Table /*来源表*/
)
SELECT
P1.city_name /*城市*/
,P1.company_name /*公司*/
,P1.email /*邮箱*/
,P1.mobile_number /*手机号码*/
,P1.mobile_number_fix /*调整后手机号码*/
,P1.full_name /*姓名*/
,P1.prov_name /*省份*/
,P1.create_time /*创建时间*/
,P1.wechat_id /*身份-企业微信外部联系人*/
,P1.update_time /*更新时间*/
,P1.cue_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_agi_INS P1
ON CONFLICT ( cue_id)
DO UPDATE SET
cue_id=excluded.cue_id
,city_name=excluded.city_name
,company_name=excluded.company_name
,email=excluded.email
,mobile_number=excluded.mobile_number
,mobile_number_fix=excluded.mobile_number_fix
,full_name=excluded.full_name
,prov_name=excluded.prov_name
,create_time=excluded.create_time
,wechat_id=excluded.wechat_id
,update_time=excluded.update_time
,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

View File

@ -1,170 +0,0 @@
#!/usr/bin/python
# -*- encoding=utf-8 -*-
from airflow import DAG
from datetime import datetime, timedelta
from airflow.contrib.hooks.ssh_hook import SSHHook
from airflow.contrib.operators.ssh_operator import SSHOperator
from airflow.sensors.external_task_sensor import ExternalTaskSensor
import json
from airflow.operators.email_operator import EmailOperator
from airflow.utils.trigger_rule import TriggerRule
sshHook = SSHHook(ssh_conn_id ='ssh_air')
default_args = {
'owner': 'info@idgvalue.com',
'email': [''],
'email_on_failure': True,
'email_on_retry':True,
'start_date': datetime(2022, 9, 12),
'depends_on_past': False,
'retries': 6,
'retry_delay': timedelta(minutes=10),
}
dag = DAG('wf_dag_tk_cust', default_args=default_args,
schedule_interval="0 0 * * *",
catchup=False,
dagrun_timeout=timedelta(minutes=160),
max_active_runs=3)
task_failed = EmailOperator (
dag=dag,
trigger_rule=TriggerRule.ONE_FAILED,
task_id="task_failed",
to=["info@idgvalue.com"],
cc=[""],
subject="tk_cust_failed",
html_content='<h3>您好tk_cust作业失败请及时处理" </h3>')
file_Tk01 = SSHOperator(
ssh_hook=sshHook,
task_id='file_Tk01',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"Tk01"},
depends_on_past=False,
retries=3,
dag=dag)
file_Update_af0912 = SSHOperator(
ssh_hook=sshHook,
task_id='file_Update_af0912',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"Update_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
file_Merge_af0912 = SSHOperator(
ssh_hook=sshHook,
task_id='file_Merge_af0912',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"Merge_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
file_SCRM_Contact_af0912 = SSHOperator(
ssh_hook=sshHook,
task_id='file_SCRM_Contact_af0912',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"SCRM_Contact_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
file_SCRM_Contact_bf0912 = SSHOperator(
ssh_hook=sshHook,
task_id='file_SCRM_Contact_bf0912',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"SCRM_Contact_bf0912"},
depends_on_past=False,
retries=3,
dag=dag)
livechat_6381 = SSHOperator(
ssh_hook=sshHook,
task_id='livechat_6381',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_livechat"},
depends_on_past=False,
retries=3,
dag=dag)
scrm_contact_af0912_6333 = SSHOperator(
ssh_hook=sshHook,
task_id='scrm_contact_af0912_6333',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_scrm_contact_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
scrm_contact_update_af0912_6448 = SSHOperator(
ssh_hook=sshHook,
task_id='scrm_contact_update_af0912_6448',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_scrm_contact_update_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
scrm_contact_merge_af0912_7975 = SSHOperator(
ssh_hook=sshHook,
task_id='scrm_contact_merge_af0912_7975',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_scrm_contact_merge_af0912"},
depends_on_past=False,
retries=3,
dag=dag)
scrm_contact_bf0912_6949 = SSHOperator(
ssh_hook=sshHook,
task_id='scrm_contact_bf0912_6949',
command='/data/airflow/etl/SA/run_sa.sh {{ ds_nodash }} {{ params.my_param }} >>/data/airflow/logs/run_psql_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"S98_S_scrm_contact_bf0912"},
depends_on_past=False,
retries=3,
dag=dag)
T01_SCRM_CONTACT = SSHOperator(
ssh_hook=sshHook,
task_id='T01_SCRM_CONTACT',
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_agi"},
depends_on_past=False,
retries=3,
dag=dag)
file_Udesk_record = SSHOperator(
ssh_hook=sshHook,
task_id='file_Udesk_record',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"Udesk_record"},
depends_on_past=False,
retries=3,
dag=dag)
file_CRM_Raw_Leads = SSHOperator(
ssh_hook=sshHook,
task_id='file_CRM_Raw_Leads',
command='python /data/airflow/bin/FILELOD.py {{ params.my_param }} {{ ds_nodash }} >>/data/airflow/logs/file_load/file_load_{{ds_nodash}}.log 2>&1 ',
params={'my_param':"CRM_Raw_Leads"},
depends_on_past=False,
retries=3,
dag=dag)
file_Tk01 >> livechat_6381
file_Merge_af0912 >> scrm_contact_merge_af0912_7975
file_SCRM_Contact_bf0912 >> scrm_contact_bf0912_6949
file_SCRM_Contact_af0912 >> scrm_contact_af0912_6333
file_Update_af0912 >> scrm_contact_update_af0912_6448
scrm_contact_af0912_6333 >> T01_SCRM_CONTACT
T01_SCRM_CONTACT >> task_failed