預設在airflow中每個task都是獨立的程序,無法進行資料交換,但airflow還提供了乙個xcom功能,以滿足使用者的類似需求
下面我們建立兩個dag,其中乙個push資料,乙個pull資料,如下的dag中的task(push)執行完後會推送一條資料到xcom表,key=push ,value=true
dag =dag(另起乙個dag,建立乙個task(pull)可以將上面的dag中的資料獲取到dag_id='
migrate_mongo',
default_args=args,
schedule_interval='
0 17 * * *',
catchup=false
)def push(**kwargs):
kwargs['ti
'].xcom_push(key='
status
', value=true)
task1 = pythonoperator(task_id='
push',
python_callable=push,
provide_context=true,
dag=dag)
dag =dag(兩個dag之間其實通過airflow底層的一張xcom表進行資料交換的dag_id='
migrate_mongo2',
default_args=args,
schedule_interval='
0 17 * * *',
catchup=false
)def pull(**kwargs):
execution_date = kwargs['
execution_date']
v1 = xcom.get_one(dag_id='
migrate_mongo
', task_id='
push
', execution_date=execution_date)
(v1)
task2 = pythonoperator(task_id='
pull',
python_callable=pull,
provide_context=true,
dag=dag)
Oracle SQLServer中實現跨庫查詢
oracle sqlserver中實現跨庫查詢 一 在sqlserver中連線另乙個sqlserver庫資料 在sql中,要想在本地庫中查詢另乙個資料庫中的資料表時,可以建立乙個鏈結伺服器 exec master.dbo.sp addlinkedserver server n 別名 srvprodu...
Oracle SQLServer中實現跨庫查詢
一 在sqlserver中連線另乙個sqlserver庫資料 exec master.dbo.sp addlinkedserver server n 別名 srvproduct n 庫名 provider n sqloledb datasrc n 伺服器位址 exec master.dbo.sp a...
ajax中的跨域
當兩個域具有相同的協議 http 相同的埠號,相同的host,就可以認為它們是相同的域 協議,網域名稱,埠都必須相同 跨域就指協議 網域名稱 埠不一致,處於安全考慮,跨域的資源之間是無法互動的 可以設定頭名 通過伺服器端返回帶有access control allow origin標識的respon...