Sobes.tech
Middle

Чӣ гуна интиқол додани маълумоти калон байни вазифаҳо дар Airflow?

sobes.tech AI

Ҷавоб аз AI

Дар Airflow тавсия дода намеёбад, ки XCom-ро барои интиқоли маълумоти калон байни вазифаҳо истифода накунед, зеро он барои паёмҳои хурд (одатан то 48 KB) пешбинӣ шудааст. Ба ҷои ин, беҳтар аст, ки захираҳои беруна истифода шаванд:

  • Маълумотҳоро дар захираҳои абрӣ (S3, GCS, Azure Blob) ё базаҳои додаҳо нигоҳ доред.
  • Ба вазифаҳо пайвандҳо (рӯду, калидҳо) ба ин маълумотҳоро тавассути XCom гузаронед.

Ин усул имкон медиҳад, ки бо миқдори калонтар маълумотҳо самаранок кор кунед ва аз бор кардани метадонатҳои Airflow пешгирӣ кунед.

Масалан:

# Дар вазифаи аввал маълумотҳоро дар S3 нигоҳ доред ва калидро гузаронед
s3_key = upload_to_s3(data)
ti.xcom_push(key='s3_key', value=s3_key)

# Дар вазифаи дуввум калидро гиред ва маълумотҳоро бор кунед
s3_key = ti.xcom_pull(key='s3_key')
data = download_from_s3(s3_key)