DBT
- 데이터 웨어하우스 관리를 단순화 하고, 그 안의 데이터를 변환합니다.
- 주로 ELT(또는 때로는 ETL) 프로세스 내의 T 작업을 다룹니다.
- 데이터 웨어하우스를 쉽게 전환할 수 있습니다(Snowflake, BigQuery, Postgres)
- 분석가 및 엔지니어가 있는 팀을 포함하여 다른 필요가 있는 팀에 이상적입니다.
- DBT는 SQL 및 변환을 정의하는 기능, 소스 제어 환경을 제공합니다.
What does DBT do?
- Promarily defines data models and transformations using SQL
DBT는 주로 SQL을 사용하여 데이터 모델과 해당 모델의 변환을 정의합니다.
이 경우 데이터 모델은 데이터의 구조와 해당 요소의 관계를 나타냅니다.
DBT를 최대한 활용하기 위해서는 SQL에 대한 지식이 필요합니다.
- Newer versions can use Python
- Translates between SQL dialects
DBT는 다양한 데이터 소스 및 웨어하우스에 연결하기 위해 SQL 언어를 적절히 변환합니다.
- Can define relationships between data models
데이터 모델 간의 관계를 정의하고 이를 사용할 때 발생하는 종속성을 관리할 수 있습니다.
- Runs the data transformation process(es) as requested
DBT는 요청 시 실제로 변환 프로세스를 실행합니다.
- Can test for data quality requirements
DBT는 데이터가 사용자 정의 품질 요구 사항과 일치하는지 테스트하고 확인할 수도 있습니다.
What does DBT look like?
- Command-line tool
dbt
- Also know as
dbt-core
, open-source
- Adapters provicde connections to different data warehouses
- dbt-snowflake
- dbt-bigquery
- dbt-sqlserver
- dbt Cloud
DBT 관리형 서비스
DBT Subcommands
dbt
has several subcommands
프로젝트 내에서 다양한 작업을 처리하는 하위 명령을 제공합니다.
dbt
or dbt-h
: Shows help content
dbt <subcommand> -h
: help for subcommand
dbt init
: Creates new dbt projects
dbt run
: Runs the data generation / transformations
dbt run은 대부분의 프로젝트에서 사용되며 실제로 데이터 생성 및 변환 프로세스를 실행합니다.
dbt test
: Used to test data quality
dbt 프로젝트에서 사용 가능한 데이터 품질 테스트를 실행할 수 있습니다.
dbt debug
: Can check connections to data warehouses
dbt 디버그는 프로젝트 내에서 정의된 데이터 웨어하우스에 대한 연결을 테스트하는데 사용됩니다.
- Many others
Who is DBT for
dbt is designed for any users that need to transform data
- Data Engineers
- Analytics Engineers
- Data Analysts
Rarely:
- Data scientists
- ML Engineers
- Sales / Finance / C-Level