#️⃣ Data Engineering/Airflow

Ch4. Airflow 태스크 템플릿 1. 모든 태스크 콘텍스트 변수 목록 및 출력 def _print_context(**kwargs): # 혹은 (**context)
☀️Ch2. Airflow DAG 구조 Airflow 워크플로는 DAG 로 표시함 태스크를 나누는 방법에는 정답이나 오답은 없다. 다만 몇 사지 고려사항에 맞게 적용하기 태스크 실행 순서 정의 (= 태스크 의존성 설정) : >> 로 표시함 “오퍼레이터와 태스크 차이점” 오퍼레이터(Operator) : 단일 작업 수행 역할 태스크(Task)는 오퍼레이터 상태를 관리하고 사용자에게 상태 변경을 표시하는 Airflow 내장 컴포넌트 TASK 코드 작성 시, 변수 이름을 실행할 함수 명과 task_id를 동일하게 하면 가독성 좋음 Airflow 웹서버 웹 브라우저에서 실패한 태스크 옵션 Clear: 태스크를 초기화하고 이를 재실행함 (reset) OK: 실패한 태스크와 연속된 태스크가 초기화됨 ☀️Ch3. Ai..
💁‍♀️내용 정리에 앞서, 책 읽게 된 이유 데브코스 하며 Airflow 학습하고 실제 프로젝트에 적용해보는 경험을 했다. 하지만 최종 프로젝트를 하며 Airflow를 조금 더 깊게 학습하고 제대로 공부하고 싶다는 생각에 책을 구입하게 되었다. 또한, 9월에 프로젝트를 종료하고 두 달 정도 지나니 머리속에서 가물가물해져 복습할겸 책을 읽어본다. 한 챕터씩 읽고 글로 정리하는 목표로 읽어보자 Ch1. Airflow 살펴보기 Airflow 주요 기능 유연한 파이썬 프레임워크를 사용해 쉽게 데이터 파이프라인 구축 가능하며, 서로 다른 기술들을 연결할 수 있는 다양한 빌딩 블록 제공 Airflow 는 직접 데이터 처리 X → 데이터 처리를 위한 다양한 구성 요소들을 조정 방향성 비순환 그래프 (Directed ..
Airflow 운영 1. dag 폴더 및 스캔 주기 수정 airflow.cfg 폴더의 dags_folder 수정 필요 dag_dir_list_interval : dags_folder를 스캔하는 주기 설정 (초단위) 2. Airflow Database 업그레이드 Core 섹션의 sql_alchemy_conn : Sqlite가 아닌 Postgres나 MySQL로 변경 해당 DB는 주기적으로 백업되어야 함 → (8번에서 자세히) 3. Executor 변경 기본은 SequentialExecutor Single Server 일 경우 : LocalExecutor나 CeleryExecutor Cluster 일 경우 : CeleryExecutor나 KubernetesExecutor 4. Authentication 활성..
오늘은 10주차 Airflow 기본의 마지막 학습 날이었다. 수업에서는 Mysql의 nps 테이블의 내용을 Airflow를 이용하여 S3에 적재 후, Redshift로 최종 데이터를 적재하는 실습을 진행하였다. 이번주에 배운 Airflow와 지난 주에 배운 Redshfit와 S3를 총 연결하는 실습이라 즐기며 실습을 진행했고, 실제 실무에서 할 만한 작업을 데모로 진행해본 것 같아 의미가 컸다. 👍 목차는 다음과 같다. 실습에 앞서, Mysql에서 Redshfit로 데이터를 적재할 수 있는 방법을 정리한 후, 이를 Full Refresh와 Incremental Update 형식 두 가지로 작성한 Dag를 직접 실행한 내용을 정리해보겠다. 실습 개요 OLTP(MySQL) → Airflow → S3 → OL..
이번주 Airflow 학습 4일차에는 마지막 섹션으로 Backfill에 대해 학습하였다. Backfill의 개념을 알아보며 Airflow의 Execution Date과 StartDate에 대해 설명을 해주셨는데, 이 두 Date 개념이 이해가 안 되어 5번 넘게 뒤로 감기를 반복했다. 😂 예시를 보며 이해하고, 이해한 것을 정리하니까, 현재는 헷갈리진 않다. 다만, 예시를 daily DAG 위주로 봤던터라 다른 사례를 보면 머리가 복잡해지며 답이 떠오르지 않는다. 이는 추후 추가학습으로 진행해야겠다 Backfill Backfill은 Incremental Update시 이슈임 일반적으로 Full Refresh형태가 좋으며, 데이터가 커져서 Full Refresh를 사용하기 힘들 경우엔 Incremental..
HyeM207
'#️⃣ Data Engineering/Airflow' 카테고리의 글 목록 (2 Page)