Tạo dự án dbt

Giới thiệu về dbt

Mike Metzger

Data Engineer

dbt project là gì

  • Gồm các thành phần làm việc với dữ liệu trong dbt

    • Cấu hình dự án
    • Nguồn và đích dữ liệu
    • Truy vấn SQL
    • Mẫu
    • Tài liệu
  • Triển khai dưới dạng cấu trúc thư mục

cấu trúc thư mục dbt

Giới thiệu về dbt

Cách tạo dự án mới

  • Dùng lệnh dbt init
    • Hỏi tên dự án
    • Hỏi loại cơ sở dữ liệu / kho dữ liệu
  • Có thể gọn với dbt init <projectname>
  • Tạo thư mục cấp cao nhất và toàn bộ cấu trúc cần thiết
repl:~/workspace$ dbt init
16:38:37  Running with dbt=1.8.4
Enter a name for your project (letters, digits, underscore): test_project
Which database would you like to use? [1] duckdb
Enter a number: 1
...
Giới thiệu về dbt

Cấu hình bằng project profile

  • Profile đại diện cho kịch bản triển khai
    • Development
    • Staging / Test
    • Production
  • Một dự án dbt có thể có nhiều profile
  • Định nghĩa trong tệp profiles.yml
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Giới thiệu về dbt

YAML

  • Yet Another Markup Language
  • Tệp văn bản, nhưng khoảng trắng quan trọng (như Python)
  • Dùng nhiều cho cấu hình trong phát triển
  • Quy tắc hơi khó; chủ yếu căn hàng như trong ví dụ
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Giới thiệu về dbt

DuckDB

  • CSDL serverless mã nguồn mở
    • Tương tự sqlite
  • Thiết kế cho phân tích
  • Vectorized (rất NHANH)
  • Dễ dùng

logo duckdb

Giới thiệu về dbt

Vamos praticar!

Giới thiệu về dbt

Preparing Video For Download...