dbt 모델이란?

dbt 입문

Mike Metzger

Data Engineer

데이터 모델이란?

  • 개념적이며 맥락에 따라 정의가 다름
  • 데이터의 논리적 의미를 표현
  • 데이터와 구성 요소 간의 관계
  • 사용자 간 협업 지원
dbt 입문

데이터 모델이란?

  • 개념적이며 맥락에 따라 정의가 다름
  • 데이터의 논리적 의미를 표현
  • 데이터와 구성 요소 간의 관계
  • 사용자 간 협업 지원
다리 수 독성 여부
치타 4 없음
오리 2 없음
오리너구리 4 있음
방울뱀 0 있음
dbt 입문

dbt에서 모델이란?

  • 다양한 변환을 표현
  • 일반적으로 SQL로 작성
    • 최신 버전에서는 Python도 사용 가능
  • 보통 SELECT 쿼리
  • 각 모델은 .sql 확장자의 텍스트 파일로 표현
dbt 입문

간단한 dbt 모델

  1. models 디렉터리 안에 디렉터리 생성
  2. 위 디렉터리에 .sql 파일 생성
  3. 새로 만든 파일에 SQL 문 추가
  4. dbt run을 실행하여 모델 구체화
bash> mkdir models/order
bash> touch models/order/customer_orders.sql
select first_name, 
       last_name,
       shipping_address,
       item_quantity
from source_table

bash> dbt run

dbt 입문

Parquet에서 읽기

  • Parquet?
    • 열 기반 이진 파일 형식
    • DuckDB는 Parquet 파일을 직접 읽을 수 있음
    • read_parquet
      • SELECT * FROM read_parquet('filename.parquet')
    • 또는 파일 이름을 작은따옴표로 사용
      • SELECT * FROM 'filename.parquet'
dbt 입문

연습해 봅시다!

dbt 입문

Preparing Video For Download...