operator 13

[Airflow] 파이썬 함수 파라미터 이해

함수를 실행시킬 때, 인수 없이 그냥 함수만 실행시키는 것이 아니라, 파이썬 오퍼레이터에도 함수 인수를 주는 것을 이해하려면 먼저 파이썬 함수 파라미터를 어떻게 받는지 이해가 선수되어야 합니다. 1. 파이썬 함수 인자 *args args로 들어온 값은 튜플로 저장이 됩니다. args에서 값을 꺼낼 때에는 인덱스를 이용합니다. (ex: args[0], args[1]) args라는 이름 외 다른 이름으로 받아도 됩니다.(ex: some_func(*kk):) 2. 파이썬 함수 인자 **kwargs (=keyword arguments) kwargs로 들어온 값은 딕셔너리 형태로 저장이 됩니다. kwargs에서 값을 꺼낼 때에는 get()함수를 이용합니다. (ex: name = kwargs.get('name'))..

[Airflow] Email Operator로 메일 전송하기

1. Email 오퍼레이터란? 이메일을 전송해주는 오퍼레이터로서 아래와 같은 형태를 가집니다. email_t1 = EmailOperator( task_id = "email_t1", to = "hockey9322@naver.com", subject = " Airflow 처리결과", html_content = "이메일 내용입니다! " ) 여기서 to 는 누구에게 메일을 보낼것인지 정하는 란이고, subject는 메일제목을 뜻하며, 메일 내용은 html_content에 적으면 됩니다. 이메일 전송을 위해선 사전 작업 세팅이 필요한데요, 해당 작업은 구글 메일 서버를 사용하도록 하겠습니다. 2. 사전 작업 설정(Google) Gmail --> 설정 --> 모든 설정 보기 --> 전달 및 POP/IMAP --> ..

[Airflow] Dag 생성(bash operator), Task의 수행주체

Airflow에서는 workflow가 곧 DAG 인데, DAG에는 오퍼레이터와 task 라는 것이 있습니다. Operator는 특정 행위를 할 수 있는 기능을 모아 놓은 클래스, 즉 설계도라고 할 수 있고, Task는 오퍼레이터에서 객체화(인스턴스화)되어 DAG에서 실행 가능한 오브젝트라고 할 수 있습니다. 즉, DAG에서는 오퍼레이터가 직접 도는 것이 아니라, 오퍼레이터를 통해서 만들어진 task들이 실행되는 것입니다. 여기서 오퍼레이터의 종류로는 리눅스의 쉘 명령을 수행할 수 있게끔 해주는 bash 오퍼레이터가 있고, python 함수들을 실행시켜주는 python 오퍼레이터, 아마존 aws S3 솔루션을 컨트롤 할 수 있게끔 해주는 S3오퍼레이터, 구글 클라우드 GCS 를 다룰 수 있는 오퍼레이터인 ..

반응형