[데이터 엔지니어링 데브코스 4기] 9주차 11/11 TIL
·
데이터 엔지니어링 데브코스
안녕하세요! 김줘입니다!! 오늘은 커리큘럼 상으로는 11주차이지만,왜인지는 모르겠지만(?) 저에게는 9주차인 날이면서 빼빼로데이입니다! 물론 저는 빼빼로를 하나도 받지 못했습니다...익숙해요.. 이제는... 오늘은 Airflow의 설정과 빅데이터 기반 데이터 웨어하우스에서 기본 키를 보장하는 방법, backfill에 기초적인 이론에 대해 학습했습니다!2024.11.11 - [데이터/Airflow] - [Airflow] 4. Airflow.cfg?2024.11.11 - [데이터] - [데이터] Primary Key Uniqueness? 오늘 Backfill까지 정리를 하려고 했지만,내일 강의에서 추가로 설명이 될 것 같아, 아직 작성하지 않았습니다! Backfill에 대한 내용의 설명이 끝나면, 추가로 포..
[데이터] Primary Key Uniqueness?
·
데이터
Primary Key Uniqueness테이블에서 하나의 레코드의 유일, 최소성을 갖게하는 필드여러 개의 필드로 구성 가능RDBMS에서 Primary Key의 중복 방지IN 빅데이터 기반 데이터 웨어하우스Primary key를 기준으로 유일성, 최소성 미보장보장하는데 메모리와 시간이 더 들기에 대용량 데이터 적재에 걸림돌미보장 예시더보기CREATE TABLE schema.test ( date date primary key, value bigint);INSERT INTO schema.test VALUES ('2024-11-11', 1);INSERT INTO schema.test VALUES ('2024-11-11', 5); -- 해당 작업 성공Primary Key Uniqueness 보장 방..
[Airflow] 4. Airflow.cfg?
·
데이터/Airflow
Airflow.cfg?Airflow.cfg는 Apache Airflow의 주요 설정 파일Airflow의 다양한 기능과 컴포넌트의 동작 방식을 정의하는 데 사용주요 섹션과 설정 항목[core]Airflow의 전반적인 설정을 하는 섹션설정 항목dags_folder : DAG 파일이 위치한 폴더 경로를 정의executor : Task 실행에 사용할 executor 정의sql_alchemy_conn : Airflow 메타데이터 데이터베이스의 연결 문자열load_examples : True로 설정 시 Airflow 기본 예제 DAG 로드default_timezone : Airflow 전체에서 기본적으로 사용할 Timezone 설정[webserver]Airflow 웹 서버 관련 설정설정 항목base_url : Ai..
[Airflow] 3. Python Operator / Task Decorator
·
데이터/Airflow
Python OperatorAirflow 1.x에서 주로 사용Python 함수를 Task로 실행할 때 PythonOperator 객체 사용명시적으로 함수를 Task로 래핑하여 실행예시 코드더보기from airflow import DAGfrom airflow.operators.python import PythonOperatorfrom datetime import datetime# 추출 함수def extract(url): print(f"Extracting data from {url}") return ['data1', 'data2', 'data3'] # 예시 데이터# 변환 함수def transform(data): print(f"Transforming data: {data}") retur..
[Airflow] 2. XCom?
·
데이터/Airflow
XComApache Airflow에서 사용되는 개념으로, Task 간에 데이터를 전달하는 방법 제공Airflow에서 Task는 서로 독립적으로 실행되므로, 각 Task 간에 데이터를 공유하거나 전달하기 위해 XCom 활용주요 기능데이터 공유 : Task 간에 데이터를 전달, 공유 가능하게 하는 기능 제공Push & PopPush : Task에서 데이터를 Xcom으로 저장-> 명시적으로 xcom_push하는 것이 아닌 return으로 자동 push 지원!Pop : 다른 Task에서 Push된 데이터를 꺼내서 사용장점간편한 데이터 공유 : 데이터를 전역 변수나 파일 시스템에 저장할 필요 없이, Airflow의 메타 데이터베이스에 저장하여 빠르고 안전한 데이터 공유 가능비동기 작업 처리 : Task가 병렬로 ..