위지원의 데이터 일기 🐈
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
Home
  • 분류 전체보기 (563)
    • ✎ 2025년 (4)
    • 2024년 (16)
    • 2023년 (6)
    • 2022년 (35)
      • Developement (22)
      • Error (9)
    • 2021년 (68)
      • ERROR (9)
      • 알고리즘 (11)
      • 개발공부 (21)
      • Data (15)
      • 21.下 (12)
    • 2020년 (164)
      • 코테 (84)
      • Development (29)
      • 정처기 (41)
    • 2019년 (27)
    • 2018년 (89)
      • English Speaking (8)
      • Error (12)
      • C, Java, FileSystem (13)
      • DataBase (15)
      • Java (2)
      • 지식 (16)
      • Go (3)
      • spark (9)
      • 영어 (5)
      • 알고리즘 (6)
    • 2017년 (143)
      • Error (17)
      • machine learning (16)
      • Spark (20)
      • Database (19)
      • Python (17)
      • Spring (9)
      • etc. (10)
      • 백준 (5)
      • Google Platform (12)
      • web Development (7)
      • Docker (3)
      • Linux (8)
블로그 내 검색
포트폴리오

위지원의 데이터 일기 🐈

데이터를 사랑하고 궁금해하는 기록쟁이입니다! 😉 Super Data Girl이 되는 그날까지🏃‍♀️ 화이팅!

  • 🖥 깃블로그
  • 🌍 위키원
  • 📑 내맘대로 스크랩
  • 💌 메일
  • 2021년/개발공부

    apache Airflow

    2021. 4. 22. 14:57

    by. 위지원

    1. 1.Airflow?
    2. *가상환경에서 파이썬 경로 잡아주고 시작할 것!!!!!!
    3. 2. Airflow설치 및 디비 초기화
    4. 3. 계정 생성 및 airflow 시작
    5. 4. Hello Wolrd 예제 실행
    6. REFERENCES

    1.Airflow?

    아래문서의 예제를 따라하려 한다. airflow는 아래 문서에 따르면 다음과 같이 설명해두었다. 

     

    Get started developing workflows with Apache Airflow - Michał Karzyński

    Apache Airflow is an open-source tool for orchestrating complex computational workflows and data processing pipelines. If you find yourself running cron task which execute ever longer scripts, or keeping a calendar of big data processing batch jobs then Ai

    michal.karzynski.pl

     

    " 복잡한 계산 작업흐름과 데이터 처리 파이프라인을  조직하기 위해 만든 오픈소스 도구 "

    is an open-source tool for orchestrating complex computational workflows and data processing pipelines

     

    • 작업흐름은 DAG(Directed Acyclic Graph)로 설계됨
    • DAG는 Task로 구성됨
    • 각 Task는 Oerator class instance로 만듬 my_task = MyOperator()
    • DAG 시작 => Task Instance 생성, Airflow는 DB에 DAG RUN 항목 생성( 특정 DAG RUN 맥락에서 Task 실행 시 Task Instance 생성 )

     

    *가상환경에서 파이썬 경로 잡아주고 시작할 것!!!!!!

     

    2. Airflow설치 및 디비 초기화

    위에 설명되어있듯이 DAG 시작 시 airflow는 db에 DAG run 항목을 생성해야하기때문에 db가 필요하다.

    - 다른 db를 연결하지 않는이상 default는 sqlite(airflow는 전부 python으로 작성되어있음)

    pip3 install airflow
    mkdir airflow_home
    export AIRFLOW_HOME=`pwd`/airflow_home
    airflow version
    airflow db init

     

    그럼 요롷게 db가 생성된다.

    ⚙ jiwonwee@jiwon  ~/airflow  ls -l
    -rw-r--r-- 1 jiwonwee staff 557056 4 22 14:28 airflow.db

     

    3. 계정 생성 및 airflow 시작

    아래 명령어를 이용하여 우선 계정을 생성해주어야한다.

    airflow users create \
    --username admin \
    --firstname jiwon \
    --lastname wee \
    --role Admin \
    --password 123123 \
    --email upsdejiwon@gmail.com

     

    이후, 웹서버를 실행시켜주면 로그인창이 뜬다. 위에서 만든 계정으로 로그인해주자

    airflow webserver -p 8080

    그럼 아래와같이 예제가 엄첨 많다.  하나를 작동시켜보았다.

    airflow.cfg에서 False로 설정하면 예제를 불러오지않게 할 수 있다.

     

    위에서 살펴보았던 것과 같이 DAG를 이용해 확인할 수 있다. 

     

    4. Hello Wolrd 예제 실행

    위 문서에서 주어진 예제를 돌려보았다. log를 보면 아래와같이 출력되는것을 확인할 수 있다.

    mkdir dags
    cd dags
    vi hell_world.py

    airflow scheduler

     

    REFERENCES

    aldente0630.github.io/data-engineering/2018/06/17/developing-workflows-with-apache-airflow.html

    haereeroo.tistory.com/6

    pbj0812.tistory.com/389

    profile
    위지원

    데이터 엔지니어로 근무 중에 있으며 데이터와 관련된 일을 모두 좋아합니다!. 특히 ETL 부분에 관심이 가장 크며 데이터를 빛이나게 가공하는 일을 좋아한답니다 ✨

    저작자표시 (새창열림)

    '2021년 > 개발공부' 카테고리의 다른 글

    ngrok[jupyter local host collaboration]  (0) 2021.06.11
    Greate Expectations  (0) 2021.06.02
    [논문 정리] A Contextual-Bandit Approach to Personalized News Article Recommendation  (0) 2021.04.17
    오늘부터 나도 인싸! 인터넷 친구만들기 😎  (0) 2021.04.15
    [논문 정리] Wide & Deep Learning for Recommender Systems  (0) 2021.04.14

    잠깐만요~! 읽으신김에 이런 글들은 어떠세요? 👀

    • ngrok[jupyter local host collaboration] 2021.06.11
    • Greate Expectations 2021.06.02
    • [논문 정리] A Contextual-Bandit Approach to Personalized News Article Recommendation 2021.04.17
    • 오늘부터 나도 인싸! 인터넷 친구만들기 😎 2021.04.15
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

열정! 열정! 열정! 🔥

Designed by Nana
블로그 이미지
위지원
데이터 엔지니어로 근무 중에 있으며 데이터와 관련된 일을 모두 좋아합니다!. 특히 ETL 부분에 관심이 가장 크며 데이터를 빛이나게 가공하는 일을 좋아한답니다 ✨

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.