본문 바로가기
728x90
반응형

Bigdata/Airflow7

[Airflow]Operator 정의 및 예제 Airflow에서 Operator는 작업(Task)을 정의하고 실행하는 객체입니다. Operator는 DAG (Directed Acyclic Graph)의 노드로서, 작업의 실행 논리를 정의하며, 데이터 처리, 시스템 운영, 모니터링 등 다양한 작업을 정의하고 실행하는 데 사용됩니다. Operator의 주요 특징Operator는 단일 작업을 정의하고 실행함.예를 들어 BashOperator는 Bash 명령을 실행하고, PythonOperator는 Python 함수를 실행함. Operator는 BaseOperator 클래스를 상속받아 구현되며, Airflow에는 다양한 기본 제공 Operator가 있으며, 사용자 정의 Operator도 작성할 수 있음.예를 들어 BashOperator, PythonOper.. 2024. 5. 23.
Airflow Hook 정의 및 예제 Airflow에서 Hook은 외부 시스템(데이터베이스, 클라우드 서비스, API 등)과 통신하기 위한 인터페이스를 제공하는 추상화된 API입니다. Airflow Hook은 주로 Operator와 함께 사용되며, DAG 코드에서 직접 사용할 수도 있습니다.주요 특징외부 시스템(데이터베이스, API 등)과 상호작용하기 위한 인터페이스를 제공하는 모듈로, 연결을 표준화예를 들어 MySqlHook, S3Hook, SlackHook 등Hook은 Operator 내부에서 사용되거나 DAG 코드에서 직접 사용될 수 있음외부 시스템에 연결하기 위해 일반적으로 Connection ID만 필요BaseHook 클래스를 상속받아 외부 시스템 연결 로직을 구현주요 기능연결 설정: 외부 시스템과의 연결을 설정하고 유지함데이터 전.. 2024. 5. 22.
Airflow 설치 및 Tutorial 실행 SequentialExecutor는 airflow를 처음 설치할 때 기본 Executor로 sqlite와 함께 사용할 수 있는 유일한 실행자입니다(sqlite는 다중 연결을 지원하지 않음).이 Executor로는 한 번에 하나의 작업 인스턴스만 실행하여, 운영환경에는 적합하지 않습니다.​PrerequisitesPython: 3.8, 3.9, 3.10, 3.11, 3.12Databases:PostgreSQL: 12, 13, 14, 15, 16MySQL: 8.0, InnovationSQLite: 3.15.0+Kubernetes: 1.26, 1.27, 1.28, 1.29​Airflow Databaseairflow 계정을 만드는 예제 입니다.mysql> create database airflow;mysql> c.. 2024. 5. 20.
728x90
반응형