Skip to content

jinsukim1004/data-pipelines-with-apache-airflow

 
 

Repository files navigation

Apache Airflow 기반의 데이터 파이프라인

이 저장소에는 매닝 출판사의 Apache Airflow 기반의 데이터 파이프라인 한국어판 도서의 예제 소스코드를 포함하고 있습니다.

cover

저장소 구성

이 저장소의 구성은 다음과 같습니다.

├── chapter01                # 1장의 예제 소스코드.
├── chapter02                # 2장의 예제 소스코드.
├── ...
├── .pre-commit-config.yaml  # CI를 위한 pre-commit(git commit 수행 전에 자동으로 특정 작업을 수행) 설정 파일.
├── CHANGELOG.md             # 코드 업데이트 변경 사항.
├── LICENSE                  # 코드 라이센스.
├── README.md                # 현재 보고 있는 readme 파일.
└── requirements.txt         # CI 요구사항.

chapterXX 경로에는 각 장에 대한 예제 코드를 포함하고 있습니다.

각 장은 일반적으로 다음과 같이 구성되어 있습니다.

├── dags                  # Airflow DAG 예제 (+ 포함 코드).
├── docker-compose.yml    # 해당 장의 컨테이너 실행을 위해 사용되는 도커 컴포즈 파일.
└── readme.md             # 필요 시, 해당 장의 세부 사항을 위한 readme 파일.

사용방법

해당 장의 예제를 실행하기 위한 자세한 내용은 각 장의 readme에서 확인할 수 있습니다. 대부분의 코드 예제는 각 장에 제공된 docker-compose.yml 파일과 함께 도커 컴포즈를 사용하여 실행할 수 있습니다. 이 도커 컴포즈 파일은 필요한 리소스를 가동하고 도커로 구성된 이 파일은 Airflow 인스턴스 실행을 시작합니다. 모든 것이 실행되면 독자의 PC 브라우저를 사용하여 Airflow 예제를 실행할 수 있습니다.

이후 일부 장(예: 11장 및 13장)은 설정이 좀 더 필요합니다. 이에 대한 자세한 내용은 해당 장의 readme 문서 및 책의 본문에 설명되어 있습니다.


UPDATE - 2022. 06. 07.(Tue)

리포지터리 업데이트

저자의 원본 리포지터리에서 추가된 파일을 업데이트했습니다.

docker compose 통한 예제 실행 시 macOS 포트 충돌 문제

아래 링크를 참조해 주세요.
https://medium.com/pythonistas/port-5000-already-in-use-macos-monterey-issue-d86b02edd36c

오탈자 정보

이도엽님 제보 - 2022. 06. 08.(Wed)

  1. 129 페이지, 리스트 6.4 "dag_id 는 정렬되어야 힙니다" → "dag_id는 일치해야 합니다."
  2. 71 페이지, 리스트 4.2 태스크 콘텍스트와 Jinja 템플릿 작업, 코드 설명 중 "중괄호 안의 값은 로켓 발사 1회 내용을 나타냅니다." → "PythonOperator는 파이썬 함수를 이용해 실행하며 BashOperator는 Bash 명령을 문자열로 받아 실행합니다."

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 90.0%
  • Shell 4.8%
  • Dockerfile 3.3%
  • Other 1.9%