Airflow Connections에 DB정보를 입력해서 사용하는 방법입니다.
Connections에 DB 접속 정보를 저장하면 아래와 같이 DB Operator를 Import 후 conn_id로 호출해서 사용할 수 있습니다(포스팅은 Oracle 기준으로 진행).
Airflow DB Connection 사용 예시 (Airflow 1.10.13 버전)
# Airflow 1.10.13 버전 기준
# Airflow 2.X 버전 : airflow.providers.oracle.operators.oracle에 OracleOperator가 있음
from airflow.operators.oracle_operator import OracleOperator
# from airflow.providers.oracle.operators.oracle import OracleOperator ← 2.X버전 Connector 위치
db_conn = OracleOperator(
task_id='create_table',
oracle_conn_id='oracle_conn_main',
sql=['DROP TABLE month_sales', 'CREATE TABLE month_sales AS SELECT * FROM product.month_sales']
)
위처럼 conn_id로 호출에서 DB를 사용하면 코드나 Configuration 파일에 접속 정보가 노출되지 않아 보안측면에서 안전합니다.
상세 내용은
1. DB 접속 정보 저장 후 확인하기
2. Connection 활용하기
2가지로 나눠 포스팅하겠습니다.
이상으로 Airflow DB Connection 설정 내용은 마치고, 다음번에는 DB Connection 사용방법을 소개하겠습니다.
참고자료
1. 프로도의 머릿속, [airflow의 connections에서 oracle 연결 정보 설정하기, https://leebaro.tistory.com/entry/airflow%EC%9D%98-connection%EC%97%90%EC%84%9C-oracle-%EC%97%B0%EA%B2%B0-%EC%A0%95%EB%B3%B4-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0
2. Apache-airflow, Documentation, https://airflow.apache.org/docs/apache-airflow-providers-oracle/stable/_api/airflow/providers/oracle/operators/oracle/index.html#module-airflow.providers.oracle.operators.oracle
3. Astronomer, Using Airflow to Execute SQL, https://www.astronomer.io/guides/airflow-sql-tutorial
적은 리소스로 Airflow 설치하기 (LocalExecutor, Docker) (0) | 2022.08.08 |
---|---|
[Airflow] Docker로 Airflow 설치 시 기본 패스워드 변경 (0) | 2022.02.15 |
[Airflow] Airflow log 정기적으로 삭제하기 (mtime 활용 Logrotate 설정) (0) | 2021.09.18 |