Thumbnail
BEST
데이터 사이언스 데이터 엔지니어링

Airflow 마스터 클래스 대시보드

(5)
13개의 수강평 ∙  336명의 수강생
145,200원

월 29,040원

5개월 할부 시
지식공유자: 김현진
총 85개 수업 (20시간 4분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

초급자를 위해 준비한
[데이터 엔지니어링] 강의입니다.

데이터 파이프라인을 효율적으로 만들고 관리하기 위한 Orchestration 도구인 Airflow에 대해 배우는 강의입니다. 초보자도 차근차근 배울 수 있는 Airflow 마스터 클래스, 환영합니다!

✍️
이런 걸
배워요!
Airflow 개념과 기초
Airflow 기반 파이프라인 개발
Airflow로 자동 Email 전송하기
Airflow를 활용한 공공데이터 API 호출 및 시각화
Airflow & 카카오, Slack을 활용한 메시지 알람
Airflow로 ChatGPT를 활용하기

데이터 파이프라인, Airflow로 고민 끝 📊

처음 시작하는 Airflow의 모든 것

  • Airflow를 많이 쓴다던데 Airflow가 뭐지?
  • Airflow로 무엇을 할 수 있지? 
  • Airflow로 파이프라인을 어떻게 만들 수 있지? 
  • 다른 솔루션과 어떻게 연계하고 데이터를 추출, 저장하지?
  • Airflow로 카카오톡, Slack 같은 메신저를 어떻게 연동하지?
  • Airflow로 ChatGPT와 연계하여 블로그 자동 글쓰기가 가능할까?

👉 Apache Airflow(아파치 에어플로)의 기본 개념부터 대용량 환경에서 운영할 수 있는 아키텍처 구성까지 모든 것을 담았습니다. 

👉 약 60개 가량의 실습파일은 Github에서 다운받을 수 있습니다. 

그런데, 왜 Airflow일까요?

Airflow는 추출, 가공, 저장, 분석 등이 이루어지는 데이터 파이프라인을 만들고 관리하는 핵심적인 오케스트레이션 솔루션입니다.

Airflow는 유사 솔루션 중에서도 가장 인기가 많은 파이프라인 관리 도구이며, 도입 사례 또한 계속해서 증가하고 있습니다.

이런 분들께 강의를 추천합니다

데이터 엔지니어를 희망하시는 분
데이터 파이프라인 또는 업무 자동화가 필요하신 분
Airflow를 쓰고 있지만 더 깊이 알고 싶은 분

무엇을 배울 수 있을까요?

Airflow 기본기

Airflow의 개념과 워크플로를 만드는 방법 등 기본적인 사용법을 실습을 통해 배웁니다. 60개 정도의 실습 파일로 차근차근 배울 수 있도록 구성하였습니다.

파이프라인 구성

스케줄링 관리를 통한 이메일 전송 등 Airflow를 이용해 DAG 파이프라인을 개발하고 실행하는 과정을 학습합니다.

데이터 수집

서울시 공공데이터 포털에서 API로 데이터를 받아 저장하는 파이프라인을 구성해봅니다.

모니터링 및 연동

카카오톡, 슬랙(Slack) 메신저 앱과 연동해 에러메시지, DAG 현황 등 알람(Alarm) 받기를 실습해 봅니다.

데이터 시각화

R 언어를 이용하여 시각화할 수 있는 R Shiny에 대한 개념을 소개합니다. 서울시공공데이터포털에서 받은 데이터를 이용하여 시각화를 진행해봅니다.

아키텍처

 Airflow의 여러 배포 방식 및 아키텍처에 대해 배우고, 대용량 환경에서 안정적으로 운영할 수 있는 방법을 익힙니다.

업무 자동화

ChatGPT에 대한 개념을 소개하고 파이썬(Python) API와 ChatGPT를 연계하는 방법을 알아봅니다. 파이썬으로 주식정보를 불러올 수 있는 방법을 통해 주식 급등 종목에 대해 ChatGPT가 소개하는 내용을 블로그에 자동 포스팅해보는 자동화를 실습해봅니다. 

 

수강 전 다음 내용을 알고 있으면 좋습니다 ✨

1. Python 기본 지식

  • Airflow는 파이프라인을 Python 언어로 만듭니다. 그래서 Python을 어느 정도 할 줄 아셔야 합니다.
  • 하지만 너무 깊은 지식을 요하지는 않습니다. for, if, while 등 기본적인 제어 문법과 리스트, 딕셔너리를 잘 다루실 수 있는 정도면 충분히 따라올 수 있습니다.
  • 후반부에는 클래스 상속 등의 내용이 나오지만 너무 걱정하지 마세요. 모두 설명해 드리고 넘어갑니다. 

2. Docker 및 Docker Compose

  • 기본적인 실습 환경은 Windows의 WSL 입니다.
  • 그리고 Airflow는 Docker(도커)를 이용하여 설치되고 Docker Compose(도커 컴포즈)로 여러 실습을 진행하므로 Docker를 다룰 줄 안다면 수월합니다.
  • 그러나 이것도 걱정하지 않으셔도 됩니다. Docker 개념과 사용방법까지 모두 알려드립니다. 

3. SQL

  • 기본적인 SQL 문법 (SELECT ... FROM ... WHERE) 를 알고 있으면 좋습니다.
  • 실습 과정 중 종종 나오는 SQL 문법은 모두 설명해 드립니다. 

실습 환경을 확인해주세요 ✨

  • 실습하실 PC or 노트북은 8GB 이상의 메모리를 갖추시는 걸 권장합니다.
  • Airflow는 Windows에 직접 설치가 되지 않기 때문에 기본적으로 Windows의 WSL 을 이용하여 Airflow를 설치하고 실습합니다. (WSL 설치 과정은 모두 설명드립니다 😊)
  • macOS 사용하시는 분들은 별도 준비 사항 없이 수강 가능합니다. 

이 강의를 만든 사람 ✒️

김현진

  • 정보관리기술사
  • 현 LG CNS 데이터 엔지니어
  • 패스트캠퍼스 이어드림 3기(2023) 강사
  • 카톨릭 관동대학교 인공지능 과정 강사 (2023)
  • 멀티캠퍼스 데이터 사이언스 멘토 (2022)

Q&A 💬

Q. 강의는 어떤 식으로 진행하나요?

Airflow에서 워크플로우를 DAG이라고 하는데, DAG을 함께 작성해보는 방식으로 실습합니다. 기본 개념을 설명하는 시간 외에는 기본적으로 각 장마다 실습을 진행합니다. 
실습 파일이 긴 경우에는 제가 미리 DAG 파일을 만들어 놓고, 로직을 설명하는 방식으로 진행합니다.

Q. 실습 파일과 학습 자료를 다운로드받을 수 있나요?

물론입니다! Github에서 실습 파일을 모두 받을 수 있습니다. Git 사용법을 잘 모르신다구요? Git 사용법도 알려드립니다. 
그리고 PDF 기반 학습 자료도 모두 제공해드립니다. 섹션 0 - 강의자료 다운로드에서 받으시면 됩니다.

Q. 실습 난이도는 어느 정도인가요?

초반에는 파이썬의 기본적인 문법만 알아도 이해할 수 있으나 후반부로 갈수록 난이도는 조금 어려울 수 있기에 파이썬의 클래스, 상속과 같은 개념을 알면 도움이 됩니다. 그렇지만 걱정 마세요. 실습 내용은 충분히 설명드리고 진행합니다. 

Q. Airflow 배우면 무엇을 할 수 있나요?

Bash Shell, 파이썬으로 할 수 있는 것은 모두 할 수 있습니다. 무언가를 Airflow로 할 수 있는지가 궁금하다면, 그것을 Bash Shell 또는 파이썬 언어로 처리할 수 있는지를 먼저 알아보세요. Bash Shell 또는 파이썬 언어로 할 수 있다면 Airflow로 할 수 있습니다.

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
데이터 엔지니어에 대해 배우고 싶은 분
Airflow가 궁금하신 분
Airflow를 쓰고 있긴 하지만 잘 활용하지 못하는 분
데이터 파이프라인 구축과 관리가 필요한 분
📚
선수 지식,
필요할까요?
Python 기초문법
Docker & Docker Compose 사용법
SQL 기초 문법(SELECT, FROM)

안녕하세요
김현진 입니다.
김현진의 썸네일

안녕하세요

LG CNS 데이터 엔지니어 김현진 입니다.

정보관리기술사를 취득한 이후 지금까지 얻은 지식을 많은 사람들에게 공유하고,

특히 데이터 엔지니어를 희망하고 공부하고 싶은 분 들에게 도움이 되고자 컨텐츠를 제작하고 있습니다.

첫 컨텐츠는 Airflow 마스터 클래스로써

데이터 파이프라인을 만들고 관리할 수 있는 핵심 도구를 초보자도 이해하기 쉽게 만들었습니다.

만나서 반갑습니다 ^^

공동 지식공유자: 슬기로운 통계생활의 썸네일
커리큘럼 총 85 개 ˙ 20시간 4분의 수업
이 강의는 영상, 첨부 파일이 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. Airflow소개
섹션 1. Airflow설치
WSL설치 미리보기 16:44
도커&에어플로우설치 17:18
개발환경구성(전체설명, 사양 설명) 04:52
개발환경구성(파이썬 인터프리터설치) 05:58
개발환경구성(Vscode 설치) 11:39
개발환경구성(github 만들고 push, pull) 22:54
Airflow library 설치 05:50
섹션 2. 오퍼레이터 기본
Bash operator DAG 만들기 & DAG 디렉토리 셋팅 미리보기 24:12
cron 스케줄 설명 08:54
task 연결하기 13:32
Bash Operator & 외부 쉘파일 수행하기 24:49
Email Operator로 메일 전송하기 11:30
섹션 3. Python 오퍼레이터
Python 오퍼레이터 기본 미리보기 11:59
외부 파이썬 함수 수행하기 12:31
@task 데코레이터 사용하기 13:56
파이썬 함수 파라미터 이해 08:46
Python 오퍼레이터에 op_args로 변수 할당하기 06:49
Python 오퍼레이터에 op_kwargs로 변수 할당하기 08:26
섹션 4. Template Variable
Jinja 템플릿 설명 미리보기 11:27
Bash Operator에서 Jinja 템플릿 사용하기 08:50
Airflow의 날짜개념 11:05
Python Operator에서 Jinja 템플릿 사용하기 08:25
Bash Operator with macros 20:40
Python Operator에서 macro 변수 사용하기 14:43
섹션 5. 데이터 공유
Python Operator에서 Xcom 사용 미리보기 24:21
Bash Operator에서 xcom 사용 09:01
Python &Bash 오퍼레이터간 Xcom 사용 07:26
Python & email 오퍼레이터간 Xcom 사용 06:30
전역 공유변수 Variable 08:57
섹션 6. Task 다루기 고급
BranchPython 오퍼레이터로 분기처리하기 미리보기 10:13
@task.branch 로 분기처리하기 05:51
BaseBranchOperator 로 분기처리하기 10:21
Trigger Rule 설정하기 12:42
Task groups 12:41
Edge Labels 03:24
섹션 7. More 오퍼레이터
지원되는 오퍼레이터 보기 미리보기 11:33
Trigger Dag Run 오퍼레이터 15:36
서울시 공공데이터 API 키 발급받기 08:40
SimpleHttp 오퍼레이터로 서울시 공공데이터 API 받아오기 20:18
Custom operator 개발 study 12:21
Custom operator 개발 실습 24:31
섹션 8. Connection & Hook
도커컴포즈 yaml 해석 미리보기 17:58
Postgres 컨테이너 올리기 17:58
Connection 과 Hook 24:04
Postgres Hook으로 bulk_load하기 16:34
Custom Hook 만들고 bulk_load하기 20:08
더 많은 Provider 확인 & Connection Type 추가하기 20:13
섹션 9. Sensor
센서의 개념 미리보기 11:52
Bash sensor 09:08
File sensor 11:55
python sensor 13:57
External task sensor 21:00
Custom sensor 만들기 14:40
섹션 10. Airflow 기능 더 보기
dataset을 이용한 dag 트리거 19:42
dag의 default_args 파라미터 이해 10:39
Task 실패시 email 발송하기 12:56
sla 로 task 수행현황 감시하고 email 발송하기 16:04
timeout 설정하기 15:56
CLI 사용하기 - dag trigger, backfill, clear 19:57
Triggerer 알아보기 10:44
섹션 11. 실습1_데이터 시각화 with Rshiny
R Shiny 컨테이너 올리기 06:58
R Shiny로 코로나 현황 확인하기(ui.R, server.R구성) 21:29
섹션 12. 실습2_알람받기 with 메신저(카카오톡&Slack)
Slack 연동 미리보기 23:16
카카오 연동 준비 13:54
카카오 API 사용 준비 13:30
task 실패시 카카오 메시지 보내기 07:22
SLA miss시 Slack 메시지 보내기 19:38
섹션 13. Airflow 관리
메타DB 주요 테이블 보기 미리보기 19:10
Pool 설정하기 24:28
Airflow User & Role 07:05
섹션 14. 실습3_모니터링 with Slack&Email
Airflow DAG 수행현황 모니터링 쿼리 만들기 09:48
모니터링 내역 Slack 전송하기 17:52
모니터링 내역 email 전송하기 10:43
섹션 15. Airflow 아키텍처
Airflow의 아키텍처와 Executor 미리보기 21:39
Celery 환경 구성방법 17:01
Flower로 Celery 브로커 감시하기 12:31
Airflow 파라미터 셋팅 22:52
스케줄러 부하 줄이기 19:59
섹션 16. 실습4_업무자동화 with chatGPT
chatGPT기본지식&DAG만들어보기 미리보기 16:45
Python으로 chatGPT API 사용하기 14:49
파이썬으로 주식정보 가져오기 19:32
chatGPT&Airflow로 블로그 자동 포스팅하기 28:48
강의 게시일 : 2023년 07월 28일 (마지막 업데이트일 : 2024년 04월 07일)
수강평 총 13개
수강생분들이 직접 작성하신 수강평입니다.
5
13개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
이동준 thumbnail
5
주위에 데이터 엔지니어 공부를 처음 시작한 사람이 있다면 무조건 추천해주고싶습니다. (비전공자 입장에서) 데이터 엔지니어 공부를 시작할때 git도 알아야하고 리눅스도 알아야하고, 파이썬도 알아야하고 airflow도 알면 좋다는데 각각 얼만큼 알아야하는지 몰라 혼란에 빠진 시간이 길었습니다. 이번 강의를 들으면서 airflow에 필요한 git과 리눅스의 기초도 어느정도 배우게 되어 좋았고, 또 이후 DAG 실습도 풍부하다고 알고있어서 꽤 기대가 됩니다. 열심히 마저 수강해서 제목대로 airflow 마스터 하도록하겠습니다! 이후에도 데이터 엔지니어 강의 출시해주시면 꼭 듣고 싶습니다!
2023-11-28
이동준
그리고 정말 사소한 부분도 친절히 설명해주셔서 너무 좋습니다. 여태 들어왔던 강의중에 가장 만족합니다 !
2023-11-28
지식공유자 김현진
안녕하세요 dj961024님 감동의 수강평 감사합니다 ^_^ 뭐든지 그렇겠지만 기본 원리 이해가 제일 중요하다고 믿는 사람으로써 어떻게 하면 개념을 쉽게 이해할 수 있을까 고민을 많이했습니다. 덕분에 도움이 많이 되셨다니 너무 기쁘네요. 수강 중 궁금하신 것 있으면 언제든지 문의해주시고 계속 열공하시길 바래요 !
2023-11-29
최일주 thumbnail
5
도움이 많이 됩니다~
2024-04-24
지식공유자 김현진
안녕하세요 일주님! 도움이 되었다니 저도 기쁩니다. 남은 강의 잘 들으시길 바라겠습니다 ^^
2024-04-24
JinHo Kim thumbnail
5
강의 최고!!
2024-01-18
지식공유자 김현진
소중한 수강평 감사합니다. 새해복 많이 받으세요 ^-^
2024-01-28
규북이 thumbnail
5
여태 들었던 강의 중 손에 꼽을 정도로 구성도 알차고 강의도 깔끔한 것 같아요. 요새 시간이 없어서 듣지 못하고 있데 근시일내로 마저 다 들어야겠습니다. 강사님께서 다음 강의로 준비중이신게 있으실지도 궁금하네요 .
2024-03-08
지식공유자 김현진
규복이님 정성스럽고 감격스런 리뷰 감사드립니다! 다음 강의는 실시간 데이터 플랫폼 구축과 관련한 강의를 제작중입니다. 데이터 엔지니어에 관심가지시는 분들이 점차 많아지고 있어서 데이터 엔지니어 과정 중점으로 만드려고 합니다. 남은 강의 잘 들으시길 바라고 꽃길 걸으시길 바라겠습니다 ^^
2024-03-09
jyjy7 thumbnail
5
유익한 강의에요
2024-03-30
지식공유자 김현진
안녕하세요 jyjy7님 수강평 감사합니다. 유익하게 들으셨다니 저도 기분이 좋네요 ^^ 좋은 일 가득하시길 바라겠습니다.
2024-03-31