[dbt] 1. dbt?
·
데이터/dbt
dbt데이터 분석 워크플로우에서 데이터 변환 작업을 관리하고 자동화하는 도구 (data build tool)주로 ELT 파이프라인의 Transform 단계에서 사용주요 특징SQL 기반 데이터 변환SQL을 사용하여 데이터 변환손쉽게 모델링과 변환 작업 수행 가능모델 정의 및 계층 구조 관리데이터 변환 작업을 "모델"이라는 단위로 정의모델은 의존성 그래프로 구성되어, 단계별 데이터 처리 가능자동화 및 재현성모델 실행, 데이터 품질 검사, 문서 생성 등의 작업 자동화 가능동일한 데이터를 재현 가능하게 만들어 분석 일관성 보장다양한 데이터 웨어하우스 지원Redshift, BigQuery, Snowflake, Spark, Postgres 등클라우드 버전 존재dbt cloud주요 구성 요소dbt_project.ym..
[데이터 엔지니어링 데브코스 4기] 10주차 11/19 TIL
·
데이터 엔지니어링 데브코스
안녕하세요!! 김줘입니다!! 오늘은 어제에 이어서 Airflow 고급 기능에 대해서 학습했습니다! 2024.11.19 - [데이터/Airflow] - [Airflow] 7. DAG Trigger?2024.11.19 - [데이터/Airflow] - [Airflow] 8. Sensor?2024.11.19 - [데이터/Airflow] - [Airflow] 9. BranchPythonOperator?2024.11.19 - [데이터/Airflow] - [Airflow] 10. Task Group? 보다 Airflow를 스케줄과 코드를 통한 자동화를 통해 편하게 쓸 수 있는 방법이니, 한 번 확인해보시는 걸 추천드립니다! 추가로 템플릿과 YAML을 기반으로 한 Dynamic DAG에 대한 포스팅도 진행하려 했지만,..
[Airflow] 10. Task Group?
·
데이터/Airflow
Task GroupAirflow에서 DAG의 Task를 논리적으로 그룹화하여 관리와 시각화를 개선하는 방법DAG의 복잡성을 줄이고 관련 Task를 하나의 TaskGroup으로 묶어 재사용성 및 가독성 향상주요 특징 및 장점시각적 그룹화 : Airflow UI에서 TaskGroup이 상자 형태로 표시되어 DAG 구조 가독성 향상코드 재사용성 향상 : 반복적인 작업이나 관련 Task를 그룹화하여 코드 중복 감소네임스페이스 관리 : TaskGroup 내부의 Task는 고유한 네임스페이스를 가져 이름 충돌 방지주요 매개변수group_id : TaskGroup의 고유 ID로, Task 이름의 접두사tooltip : UI에서 TaskGroup에 마우스를 올릴 때 표시될 설명prefix_group_id : Task ..
[Airflow] 9. BranchPythonOperator?
·
데이터/Airflow
BranchPythonOperator?Airflow에서 특정 조건에 따라 DAG의 실행 경로를 분기할 수 있도록 돕는 Operator실행 후 다음에 실행할 Task ID 반환특징조건부 흐름 제어 : 분기 로직을 Python 함수로 구현하여 특정 조건에 따라 실행 경로 결정한 번에 하나의 경로만 선택 : 반환된 Task ID만 실행되며, 선택되지 않은 경로의 Task는 Skipped 상태동적 Task 실행 : 데이터 또는 외부 입력에 따라 DAG의 실행 흐름 변경작동 방식분기 로직 실행 : 분기 로직을 작성한 함수 실행을 통해 Task ID 반환Task 선택 : 반환된 Task만 실행되며, 나머지 Task는 Skipped 상태DAG 흐름 진행 : 선택된 Task 실행 후 다음 Task 실행예시from ai..
[Airflow] 8. Sensor?
·
데이터/Airflow
Sensor?특정 조건이 충족될 때까지 작업의 실행을 대기시키는 Operator주로 외부 이벤트를 모니터링하거나 상태 확인에 사용주요 특징상태 확인외부 시스템 또는 상태를 주기적으로 확인조건 충족 시 다음 Task 실행Poke & Reschedule 모드Poke : Sensor가 계속 실행되며 주기적으로 상태 확인Reschedule : Sensor가 계속 실행되지 않고, 일정 시간 후 다시 상태 확인TimeoutSensor가 조건 충족 여부를 확인하다가 지정된 시간 내에 조건이 충족되지 않으면 실패 철리종류ExternalTaskSensor다른 DAG의 특정 Task 완료 여부 확인FileSensor특정 경로에 파일이 생성될 때까지 대기HttpSensor특정 HTTP 요청이 성공적으로 완료될 때까지 대기S..