ETL 및 ELT 파이프라인 입문

Python으로 하는 ETL과 ELT

Jake Roach

Data Engineer

$$

비즈니스 인텔리전스, Machine Learning, AI를 보여주는 그래픽

Python으로 하는 ETL과 ELT

데이터 파이프라인

...데이터를 소스에서 대상으로 이동시키고, 그 과정에서 데이터를 변환하는 역할을 합니다.

$$

데이터 파이프라인의 소스와 대상

Python으로 하는 ETL과 ELT

ETL

  • 추출, 변환, 적재
  • 전통적인 데이터 파이프라인 설계 패턴
  • 소스는 테이블 형식이거나 비테이블 형식일 수 있음
  • pandas와 함께 Python 활용

$$

$$

$$

$$

ELT

  • 추출, 적재, 변환
  • 더 최근에 등장한 패턴
  • 데이터 웨어하우스
  • 주로 테이블 형식 데이터
Python으로 하는 ETL과 ELT

추출, 변환, 적재(ETL)

def load(data_frame, target_table):
    # Some custom-built Python logic to load data to SQL
    data_frame.to_sql(name=target_table, con=POSTGRES_CONNECTION)
    print(f"Loading data to the {target_table} table")

# Now, run the data pipeline
extracted_data = extract(file_name="raw_data.csv")
transformed_data = transform(data_frame=extracted_data)
load(data_frame=transformed_data, target_table="cleaned_data")
Extracting data from raw_data.csv
Transforming data to remove 'null' records
Loading data to the cleaned_data table
Python으로 하는 ETL과 ELT

추출, 적재, 변환(ELT)

...
def transform(source_table, target_table):
    data_warehouse.run_sql("""
        CREATE TABLE {target_table} AS
          SELECT
              <field-name>, <field-name>, ...
          FROM {source_table};
    """)

# Similar to ETL pipelines, call the extract, load, and transform functions
extracted_data = extract(file_name="raw_data.csv")
load(data_frame=extracted_data, table_name="raw_data")
transform(source_table="raw_data", target_table="cleaned_data")
Python으로 하는 ETL과 ELT

다음 내용도 함께 살펴보겠습니다...

$$

이 강의에서 다룰 주제를 보여주는 그래픽

Python으로 하는 ETL과 ELT

연습해 봅시다!

Python으로 하는 ETL과 ELT

Preparing Video For Download...