Dự án trọng tâm / 02
Building a Data Model trên Power BI
Chuyển đổi dữ liệu bán hàng từ Flat File sang Star Schema chuẩn BI
Tóm tắt nhanh
Tổng quan dự án
Nội dung nghiên cứu
Vấn đề: khi cả doanh nghiệp chỉ dùng một file Excel để quản lý dữ liệu
Bài toán đặt ra mô phỏng một tình huống rất phổ biến trong doanh nghiệp nhỏ: toàn bộ dữ liệu bán hàng được lưu trong một file Excel duy nhất (Flat File). Cách làm này có vẻ tiện trong ngắn hạn, nhưng kéo theo hàng loạt vấn đề — dữ liệu bị trùng lặp, khó phân tích đa chiều, khó mở rộng khi dữ liệu lớn dần, và quan trọng nhất: không thể đáp ứng được những gì một hệ thống Business Intelligence thật sự cần.
Project sử dụng bài thực hành Building a Data Model dựa trên dữ liệu bán hàng của Contoso, với mục tiêu xây dựng lại toàn bộ dữ liệu này theo chuẩn Star Schema, thiết lập quan hệ giữa các bảng, dùng DAX để tính toán động, và giải quyết bài toán khó hơn: tích hợp dữ liệu ngân sách (budget) với dữ liệu bán hàng có mức độ chi tiết khác nhau thông qua Bridge Table.
Điểm khác biệt của project này so với nhiều bài tập Power BI khác: trọng tâm không phải là “vẽ dashboard cho đẹp”, mà là phần nền tảng phía sau — ETL, Data Modeling, Relationship và Filter Context, những thứ quyết định một báo cáo có đáng tin hay không.
Vai trò: từ ETL đến người hướng dẫn lại cho cả lớp
Trong nhóm 5 thành viên, công việc được đảm nhận xoay quanh ba mảng chính:
- Kết nối và làm sạch dữ liệu (ETL cơ bản) — phần nền cho toàn bộ data model phía sau
- Calculated Columns xử lý dữ liệu thời gian, phục vụ các phân tích theo chu kỳ
- Thiết kế và chuẩn bị hai bài tập thực hành cuối chương, sau đó trực tiếp giải và quay video demo hướng dẫn toàn bộ quy trình thực hành trên Power BI cho cả nhóm
Phần tốn nhiều thời gian nhất chính là việc xây dựng các bài thực hành và video demo — vì để hướng dẫn được người khác, phải tự mình thực hiện toàn bộ quy trình trước, kiểm tra tính đúng đắn của data model, rồi mới có thể giải thích lại cho người khác một cách chính xác.
Quá trình: hiểu Data Model trước khi chạm vào Dashboard
Bài toán cốt lõi là xử lý dữ liệu ngân sách và dữ liệu bán hàng vốn có mức độ chi tiết (grain) khác nhau — ngân sách thường được lập theo tháng/khu vực, còn dữ liệu bán hàng chi tiết tới từng giao dịch. Việc kết nối trực tiếp hai bảng này dẫn đến sai lệch số liệu, nên giải pháp là dùng Bridge Table để liên kết chúng đúng cách mà không phá vỡ tính nhất quán của mô hình.
Quy trình thực hiện đi theo đúng tinh thần “Data Model trước, Dashboard sau”:
- Kết nối nguồn dữ liệu và làm sạch bằng Power Query
- Thiết kế lại cấu trúc dữ liệu theo mô hình Star Schema, tách rõ Fact Table và Dimension Table
- Thiết lập Relationship giữa các bảng, xử lý các trường hợp grain không khớp bằng Bridge Table
- Xây dựng Calculated Columns và DAX Measures phục vụ tính toán động
- Kiểm tra cách Filter Context ảnh hưởng đến kết quả của từng Measure khi áp các bộ lọc khác nhau
- Cuối cùng mới xây dashboard, dựa trên data model đã được kiểm chứng là đúng
Kết quả đạt được
- Xây dựng hoàn chỉnh Data Model theo chuẩn Star Schema
- Thiết lập đầy đủ Relationship giữa Fact Table và Dimension Table
- Làm sạch dữ liệu bằng Power Query, thực hiện ETL cơ bản
- Sử dụng DAX Measures và Calculated Columns để xử lý các bài toán tính toán động
- Hiểu rõ và vận dụng đúng cách Filter Context tác động đến kết quả Measure
- Tự thiết kế, giải và hướng dẫn lại 2 bài thực hành cho cả nhóm — không chỉ làm phần được giao mà còn chủ động tạo thêm giá trị học tập cho người khác
Bài học lớn nhất
Trước project này, Power BI thường được hiểu đơn giản là “công cụ vẽ biểu đồ”. Sau khi thực sự đi qua quy trình xây Data Model, điều rút ra được là: Data Model quan trọng hơn Dashboard. Một dashboard đẹp nhưng đứng trên một mô hình dữ liệu sai sẽ luôn cho ra kết quả sai, chỉ là sai một cách rất thuyết phục.
Việc hiểu rõ sự khác biệt giữa Measures và Calculated Columns, cùng cơ chế Filter Context — lý do vì sao cùng một Measure lại cho kết quả khác nhau tùy vào bộ lọc đang áp dụng — chính là nền tảng cần có trước khi học sâu hơn về Data Analytics, Data Engineering và Business Intelligence ở các môn sau.
Nếu làm lại
Muốn mở rộng phần thực hành bằng cách xây dựng một dashboard hoàn chỉnh trên chính data model đã thiết kế, áp dụng thêm các kỹ thuật DAX nâng cao hơn, và tối ưu mô hình dữ liệu sát hơn với các bài toán Business Intelligence thực tế trong doanh nghiệp.
Bắt đầu trò chuyện
Bạn có một câu hỏi đáng để cùng khám phá?
Tôi sẵn sàng trao đổi về các vị trí dữ liệu, cơ hội hợp tác chỉn chu và câu chuyện phía sau nghiên cứu này.
Liên hệ