빅데이터/빅데이터기술
[빅데이터기술] DBT 설치 및 MySQL 에 연결 해보기
pbj0812
2024. 2. 27. 03:01
0. 실습
1) 설치
- MySQL 기반으로...
pip3 install dbt
pip3 install dbt-mysql
2) 프로젝트 시작
- 아래 작업을 해야 profiles.yml 파일이 생성됨.
dbt init my_project
- 동시에 폴더들도 생성됨
3) yml 파일 수정
vi ~/.dbt/profiles.yml
my_project:
target: dev
outputs:
dev:
type: mysql
server: 127.0.0.1
port: 3306
database: sql_study # optional, should be same as schema
schema: dbt_test
username: root
password:
driver: MySQL ODBC 8.0 ANSI Driver
prod:
type: mysql
server: 127.0.0.1
port: 3306 # optional
database: sql_study # optional, should be same as schema
schema: dbt_test
username: root
password:
driver: MySQL ODBC 8.0 ANSI Driver
4) .dbt/my_project/models 에 staging 폴더 생성하고 first.sql 파일 작성
- StoreA 는 기존 MySQL DB 에서 임의로 만든 테이블
- 맨 윗 줄은 이 테이블이 view 테이블 이라는 것을 나타냄
- 세미콜론(;) 을 붙이면 에러 발생
{{ config(materialized='view') }}
SELECT UserId FROM sql_study.StoreA
5) 실행(dbt run)
1. 결과 확인
- 위의 project.yml 에서 스키마로 정의한 dbt_test 가 데이터 베이스 이름이 되었으며, Views 아래에 first.sql 파일의 이름은 first 가 그리고 필드는 UserId 만 가져온 것을 볼 수 있음
- 데이터도 확인
2. 도움
- chatgpt4