Airflow

Data Engineering/실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트

[5주차] Airflow Deepdive 2 -Backfill과 Airflow

관리하는 데이터 파이프라인의 수가 늘어나면 이 중의 몇은 항상 실패하게 되며 이를 어떻게 관리하느냐가 데이터 엔지니어의 삶에 큰 영향을 준다. start_date과 execution_date Incremental Update가 실패하면? 하루에 한번 동작하고 Incremental하게 업데이트하는 파이프라인이라면? 실패한 부분을 재실행하는 것이 중요하다. Incremental Update ● Incremental Update란 ? ○ 새로운 데이터를 전체 데이터 세트에 다시 처리하는 대신 변경된 데이터만 처리하여 데이터 저장 및 관리를 최적화하는 방법 ● 다시 한번 가능하면 Full Refresh를 사용하는 것이 좋음 ○ 문제가 생겨도 다시 실행하면 됨 ● Incremental Update는 효율성이 더 ..

Data Engineering/실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트

[4주차] Airflow Deepdive - Airflow로 데이터 파이프라인 만들기 (1)

Hello World 예제 프로그램, Hello World 살펴보기 프로그램을 설명하고 Web UI와 터미널에서 실행해 보자 ● 2개의 태스크로 구성된 데이터 파이프라인 (DAG) ○ print_hello: PythonOperator로 구성되어 있으며 먼저 실행 ○ print_goodbye: PythonOperator로 구성되어 있으며 두번째로 실행 dag = DAG( dag_id = "helloWorld", start_date = datetime(2022,6,15), catchup=False, tags=['example'], schedule = '0 2 * * *', default_args=default_args ) Operators - PythonOperator ● Airflow Python Oper..

Data Engineering/실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트

[4주차] 데이터베이스 트랜잭션

트랜잭션 이해하기, DB를 사용한다면 꼭 알아야하는 트랜잭션에 대해 이해해보자 트랜잭션이란? ● Atomic하게 실행되어야 하는 SQL들을 묶어서 하나의 작업처럼 처리하는 방법 ○ https://postgresql.kr/docs/9.2/tutorial-transactions.html ○ BEGIN과 END 혹은 BEGIN과 COMMIT 사이에 해당 SQL들을 사용 ○ ROLLBACK ● Transaction Isolation Level: “Read Committed”가 디폴트 세팅 트랜잭션 구현방법 (1) ● 두 가지 종류의 트랜잭션이 존재 ○ 레코드 변경을 바로 반영하는지 여부. autocommit이라는 파라미터로 조절가능 ● autocommit=True ○ 기본적으로 모든 SQL statement가 ..

Data Engineering/실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트

[3주차] Airflow

Airflow 소개, 가장 많이 사용되는 데이터 파이프라인 관리 / 구현 프레임워크인 Airflow에 대해 알아보자 Airflow 소개 (1) ● Airflow는 파이썬으로 작성된 데이터 파이프라인 (ETL) 프레임워크 ○ Airbnb에서 시작한 아파치 오픈소스 프로젝트 ○ 가장 많이 사용되는 데이터 파이프라인 관리/작성 프레임워 ● 데이터 파이프라인 스케줄링 지원 ○ 정해진 시간에 ETL 실행 혹은 한 ETL의 실행이 끝나면 다음 ETL 실행 ○ 웹 UI를 제공하기도 함 Airflow 소개 (2) ● 데이터 파이프라인(ETL)을 쉽게 만들 수 있도록 해줌 ○ 다양한 데이터 소스와 데이터 웨어하우스를 쉽게 통합해주는 모듈 제공 ○ 데이터 파이프라인 관리 관련 다양한 기능을 제공해줌: 특히 Backfill..

달려라 국나뇽
'Airflow' 태그의 글 목록