Return True if and only if the return code is 0. (bash_command에 작성한 쉘 스크립트 내용이 0이면, return True를 가진다.)쉘 스크립트에서 return True를 주는 방법파이썬에서의 return True와 같
오퍼레이터의 일종<span style='background-color: - 모든 센서는 BaseSensorOperator를 상속하여 구현되며 이때, BaseSensorOperator는 BaseOperator를 상속한다.상속시에는 \_\_init()\_\_(생성자)
airflow의 Admin의 Providers는 현재 설치되어 있는 Providers 패키지를 말한다.따라서, 설치가능한 Providers 더 보기는 아래를 참조한다.Providers\_목록보기!아파치 airflow2는 모듈 방식으로 제공되어지는데, task들을 작성하
spark.read.csv 로 데이터 프레임을 가져온다.titanic_sdf.show() : pandas의 head()와 유사, head()는 5개의 행을 가져오지만 spark 데이터프레임은 20개를 가져온다.만약, 정해진 행만 가져오고 싶다면 titanic_sdf.l
데이터 전송 라인이 많아짐프로토콜 파편화가 심해져 유지보수가 어려워짐source application(kafka producer) -> 데이터 -> 카프카 -> 데이터 -> target application(kafka consumer)고가용성낮은 지연높은 처리량 대용량
Base_hook 명세보기(https://airflow.apache.org/docs/apache-airflow/stable/\_modules/airflow/hooks/base.html여기서 잠깐!@classmethod란?원래 클래스를 import해오면, 해당
airflow.providers.postgres 명세보기tab으로 delimeter가 설정된 파일을 데이터베이스 테이블로 로드하는 기능을 제공한다.psycopg2 가 가지고 있는 copy_expert method를 postgresql cursor가 실행하고 있음을 알
예전에 프로젝트를 할 때,이런식으로 입력해줬는데, with 문과 함께 from contextlib import closing을 사용하면 conn객체 생성하고, 쿼리를 날리는 cursor 객체 생성한 뒤, cursor.execute() cursor.commit() 한 후
그리고 각각의 컨테이너에는 해당 부분을 추가해준다.이때, default 네트워크가 쓰고 있지 않은 서브넷으로 구성해야 한다.기본적으로 컨테이너들은 유동IP를 지닌다.(즉, 재기동시 IP가 변경 된다.)따라서, 고정 IP를 할당하려면 networks를 만들어 할당해야 한
목적1개 이상 도커 컨테이너 생성시 <span style='background-color: 작성방법:docker-compose.yaml 파일에 컨테이너들의 설정 내용을 입력한다.도커 컴포즈 서비스 시작yaml 파일이 있는 위치에서 sudo docker co
airflowoperators \+ seoul_api_to_csv_operator.py 서울시 전기차 충전소 정보(서울시 설치)서울시 전기차 급속충전기 정보 현황(서울시 설치)서울시 자동차 전용도로 위치 정보(좌표계: GS80)(2023-08-15기준)매일 오전 7
오류가 발생해서 잠시 보류(airflow 패키지 설치 관련 문제) 주제선정: 서울시 인구 밀집 지역 공공 급속 충전기 최적 입지 예측 분석 데이터 수집: 서울시 실시간 도시 데이터 1. SimpleHttpOperator란? HTTP 요청을 하고 결과로 text를
AIrflow는 오퍼레이터를 직접 만들어 사용할 수 있도록 클래스를 제공해준다. \- BaseOperator (부모 클래스)BaseOperator는 상속시 두가지 메서드를 정의해야한다.(Overriding) 자식클래스 재정의 1\. <span style='b
(1) TriggerDagRun 오퍼레이터파라미터에 어떤 DAG을 Trigger를 할지 dag_id를 넣어주면 된다.(2) ExternalTask 센서| 비교 | TriggerDagRun 오퍼레이터 | <span style='background-color: |
task1의 결과에 따라 task2-x 중 하나만 수행하도록 구성해야 할 때예) 상위에 있는 task1의 결과로 'GOOD', 'BAD', 'Pending'이라는 결과 3개 중 하나가 나오고 그에 따라 task2-1 ~ task 2-3 중 하나가 실행되도록 해야할 경우
Xcom: 특정 DAG, 특정 schedule에 수행되는 Task 간에만 공유가 된다. \- 따라서, 어제 수행되었던 Task와 오늘 수행된 Task끼리는 데이터 공유가 안된다.모든 DAG가 공유할 수 있는 전역 변수는 없을까?Variable 등록하기 \- Admin
Email 오퍼레이터는 어떤 파라미터에 JinJa Template를 쓸 수 있을까?airflow\_공식문서\_email.operatorto, subject, html_content, files 가 Template을 쓸 수 있는 파라미터임을 확인할 수 있다.
python Operator에서 return값은 자동으로 Xcom에 저장됨Bash Operator에서 ti.xcom_pull/push는 env와 bash_command에서만 가능함Bash Operator에서는 마지막에 출력된 문장이 return 값으로 간주되어 Xcom
Bash 오퍼레이터는 env, bash_command 파라미터에서 JinJa Template 문법을 이용하여 push/pull 이 가능하다.템플릿 문법에서도 ti객체 사용이 가능하다.bash_command에서는 ""로 감싸진 출력하려는 문장이 return으로 간주된다.