[Airflow] 병렬 처리 및 분산 처리와 대용량 재처리
·
Airflow
1. 병렬 처리병렬 처리: 여러 개의 작업을 나눠서 처리# 처리할 지역 목록regions = ['서울', '대구', '인천', '광주', '대전', '욼산', '세종']# 각 지역마다 자동으로 작업 생성parallel_task = []for region in regions: task = PythonOperator( task_id=f'process_{region}', python_callable=process_region_data, op_args=[region] ) parallel_task.append(task)# 최종 작업summary_task = PythonOperator( task_id='create_summary', python_cal..
[Airflow] Dag & Task 설계 패턴 (2)
·
Airflow
1. TaskGroup을 활용한 복잡한 워크플로우 설계TaskGroup: 관련된 작업을 그룹화하는 것Dynamic DAG를 활용해서 TaskGroup을 여러 개 만들 수 있음# 처리해야 할 데이터 목록data_list = ['고객', '주문', '상품', '리뷰']# 각 데이터마다 자동으로 TaskGroup 만들기for data_name in data_list: with TaskGroup(f'{data_name}_처리') as group: # 1단계: 데이터 가져오기 get_data = PythonOperator(task_id=f'{data_name}_가져오기') # 2단계: 데이터 정리하기 clean_data = Pyt..