Quản phiên bản (Git)
Mỗi thay đổi được commit, review, có lịch sử — như code.
dbt (data build tool) là công cụ giúp đội dữ liệu biến đổi dữ liệu thô trong kho dữ liệu thành các bảng/khung nhìn sạch, sẵn sàng phân tích — chỉ bằng câu lệnh SQL SELECT. dbt lo phần còn lại: tạo bảng, quản phụ thuộc, chạy đúng thứ tự, kiểm thử và sinh tài liệu.
Trước đây dữ liệu đi theo ETL: Extract → Transform → Load — biến đổi ở một máy chủ riêng trước khi nạp vào kho. Cách này tốn hạ tầng và khó mở rộng.
Kho dữ liệu đám mây hiện đại mạnh tới mức ta đảo thứ tự thành ELT: Extract → Load → Transform — nạp dữ liệu thô vào kho trước, rồi biến đổi ngay trong kho. dbt đảm nhận đúng chữ T cuối cùng đó.
flowchart LR S["Nguồn<br/>(app, CRM, file…)"] -->|"E + L"| W["🗄️ Kho dữ liệu<br/>(dữ liệu thô)"] W -->|"T — dbt"| M["✨ Mô hình sạch<br/>(sẵn sàng báo cáo)"] M --> BI["📊 BI<br/>(Tableau, Power BI)"]
dbt phổ biến một vai trò: analytics engineer — người đứng giữa kỹ sư dữ liệu (lo đường ống nạp dữ liệu) và nhà phân tích (lo báo cáo). Họ dùng dbt để biến dữ liệu thô thành mô hình dữ liệu đáng tin, áp các thực hành phần mềm:
Quản phiên bản (Git)
Mỗi thay đổi được commit, review, có lịch sử — như code.
Mô-đun hóa
Tách logic thành nhiều model nhỏ, tái dùng qua ref().
Kiểm thử
Khai báo kỳ vọng dữ liệu, chạy tự động mỗi lần build.
Tài liệu
Tài liệu & lineage sinh từ chính code, luôn cập nhật.
| dbt Core | dbt Cloud | |
|---|---|---|
| Là gì | Công cụ dòng lệnh (CLI) mã nguồn mở, miễn phí | Dịch vụ SaaS (trả phí) trên nền dbt Core |
| Thêm gì | — | IDE trên web, bộ lập lịch chạy, CI tích hợp, host tài liệu, quản lý quyền |
| Hợp với | Đội có kỹ thuật, tự dựng CI/CD | Đội muốn nhanh, ít vận hành hạ tầng |
Cả hai dùng cùng một cú pháp model/test/docs. Bạn có thể bắt đầu với dbt Core (miễn phí) rồi chuyển lên Cloud khi cần.
dbt kết nối kho dữ liệu qua adapter: Snowflake, BigQuery, Redshift, Databricks, PostgreSQL và nhiều nền khác. Logic SQL của bạn được dbt biên dịch sang phương ngữ SQL của kho đang dùng.