오픈소스/dbt
dbt seeds
pastime
2023. 11. 12. 14:50
728x90
dbt seed란?
데이터 웨어하우스에 로드할 수 있는 csv 파일
자주 변경되지 않은 정적 데이터 처리에 유용
왜 사용을 할까?
- 각 데이터간의 매핑을 위해
- 특정 데이터를 제외하기 위해서
- 자주 변경되지 않은 소규모 참조 데이터 세트를 DB에 저장하는것보다 시드로 로드하는게 효율적
- 데트스 데이터 업로드
- 유효성 검사
사용법
seeds 라는 DIR에 csv 파일을 생성한뒤
dbt seed
만약 특정 파일만 업로드 하고 싶다면
dbt seed --select product_codes
이후 DB를 확인해보면 seeds에 파일명으로 테이블이 생성이 되어있다
그 다음 models DIR에 SQL을 작성해준다
ref 함수를 이용하여 가져온다
SELECT * FROM {{ ref('country_codes') }}
실행
dbt run
작성한 쿼리대로 결과물이 생성된것을 확인할 수 있다.
TODO
- seed 유효성 검사
- yml 파일 작성
728x90