fbpx
  • Hoang’s Blog
  • Career Stories
No Result
View All Result
  • Hoang’s Blog
  • Career Stories
No Result
View All Result
No Result
View All Result

MÔ HÌNH HÓA DỮ LIỆU: STAR SCHEMA, BẢNG DIM VÀ BẢNG FACT

May 11, 2023
in Tutorials, Power BI, Skills & Knowledge, Technique
Share on FacebookShare on LinkedinShare on Email

Mô hình hóa dữ liệu (Data Modelling) là một bước vô cùng quan trọng trong quá trình xây dựng báo cáo, bởi khi mô hình đủ tốt, bạn sẽ giúp cho mọi người hiểu được rõ cấu trúc của dữ liệu và thuận lợi hơn cho những bước tiếp theo trong quá trình xây dựng báo cáo hoàn chỉnh. Tuy nhiên, đây không phải là một công việc dễ dàng. Ở bài viết lần này, mình mong muốn cung cấp cho các bạn một công cụ tối ưu hóa và đơn giản hóa dữ liệu trong tay, đó là Star Schema.

Mô hình hóa dữ liệu dạng Star Schema

Có rất nhiều cách để đơn giản hóa data, song cách phổ biến nhất và được mọi Power BI DA tin tưởng là thiết kế cơ sở dữ liệu hình sao (star schema). Trong star schema, mỗi bảng trong dataset được coi là một bảng dim hoặc bảng fact, như minh họa ở hình dưới đây:

Mô hình hóa dữ liệu: CSDL hình sao Star Schema

Bảng FACT và bảng DIM

Bảng fact (Fact tables) chứa dữ liệu của các quan sát hoặc các sự kiện: số lượng đơn hàng, số lượng sản phẩm, giá bán, thời gian giao dịch và số lượng giao dịch. Bảng fact có thể chứa các giá trị lặp lại.

Ví dụ, một sản phẩm có thể xuất hiện ở nhiều dòng, thể hiện sản phẩm được các khách hàng khác nhau mua ở thời điểm khác nhau. Các giá trị này có thể được tổng hợp lại để tạo các biểu đồ (visual). Ví dụ, biểu đồ mô tả tổng đơn hàng sẽ là biểu đồ tồng hợp từ dữ liệu trong bảng fact. Ở bảng fact, bạn sẽ thường thấy các cột gồm các số và các ngày. Các con số đó có thể là một đơn vị, kết quả đo lường, như số lượng bán hàng, hoặc có thể là khóa (key), như ID khách hàng. Ngày tháng được ghi nhận trong bảng có thể là ngày bán, hoặc ngày giao hàng. 

Bảng dim (Dimension tables) chứa các chi tiết về dữ liệu trong bảng fact: thông tin sản phẩm, địa điểm, người bán, và loại đơn hàng, Các bảng này sẽ được nối đến các bảng fact thông qua cột khóa (key column). Bảng dim được sử dụng để lọc và nhóm bảng fact.

Bảng Dim chứa các giá trị là duy nhất, chẳng hạn, mỗi dòng trong bảng Product thể hiện một sản phẩm duy nhất và mỗi dòng riêng biệt trong bảng Customer thể hiện một khách hàng duy nhất. Đối với biểu đồ tổng sales, bạn có thể nhóm dữ liệu để quan sát tổng sales chia theo sản phẩm, trong đó cột sản phẩm (product) nằm trong bảng dim. 

Bảng Fact thường lớn hơn bảng Dim vì bảng fact chứa rất nhiều sự kiện, ví dụ như chứa rất nhiều đơn hàng riêng biệt. Bảng Dim thì thường nhỏ hơn bởi vì thông thường bạn cần giới hạn số lượng các mục mà bạn có thể filter (lọc) và group (nhóm lại). Ví dụ, một năm chỉ bao gồm 12 tháng, hay nước Mỹ cũng chỉ có một số lượng bang nhất định.  

Sau khi phân tích như trên, bạn hẳn sẽ thắc mắc làm thế nào để tạo các biểu đồ trong Power BI. 

Giả sử bạn có hai bảng, Employee và Sales, như trong hình, với các dữ liệu phù hợp. Bởi vì bảng Sales có chứa giá trị các đơn hàng (sales amount) có thể tổng hợp (aggregate) được, nên sẽ được coi là bảng Fact. Bảng Employee có chứa tên của từng nhân viên cụ thể, dùng để lọc bảng Sales, nên được coi là bảng Dim. Hai bảng có một cột chung là EmployeeID, trong đó cột EmployeeID ở bảng Employee là khóa chính, nên bạn có thể tạo ra mối quan hệ giữa hai bảng dựa trên cột này. 

Mô hình hóa cơ sở dữ liệu

Khi tạo các quan hệ, bạn có thể tạo các biểu đồ tương ứng theo mong muốn như ở hình dưới đây. Nếu bạn không tạo mối quan hệ này mà chỉ nhìn thấy có sự tương đồng giữa hai bảng, việc xây dựng biểu đồ sẽ trở nên khó khăn hơn nhiều. 

Star schema và data model là nền tảng trong việc tổ chức các báo cáo: bạn càng tổ chức tốt các mối quan hệ trong model, bạn càng dễ tạo và duy trì các báo cáo trong tương lai.

Tìm hiểu về: Các loại quan hệ dữ liệu trong Power BI

Các bạn có thể tìm hiểu thêm về khóa học của Datapot về Data Modelling tại đây.

Tags: #bangdim#bangfact#beginner#powerbi#starchema#tutorials
ShareShareSend
Previous Post

SỬ DỤNG ADVANCED EDITOR ĐỂ TÙY CHỈNH DỮ LIỆU

Next Post

CÁCH TẠO BẢNG DATE TRONG POWER BI

Tô Mạnh Hoàng

Tô Mạnh Hoàng

Related Posts

Data

Microsoft Fabric là gì? Dành cho ai và tại sao nên sử dụng?

July 27, 2023

Microsoft Fabric (hay Fabric) là một giải pháp phân tích tổng hợp dành cho doanh nghiệp.

SQL

Temporal table: Lưu trữ và truy vấn dữ liệu quá khứ dễ dàng

May 30, 2023

Temporal table là một loại bảng trong SQL Server có tính năng hỗ trợ lưu trữ dữ liệu tại nhiều khoảng thời gian trong cơ sở dữ liệu.

Data

Dynamic Row-level Security: Tổ chức dữ liệu và phân quyền trong Power BI

May 30, 2023

Phân quyền trong Power BI cho người dùng là một phần quan trọng trong cả quy trình ứng dụng dữ liệu trong doanh nghiệp. Bởi nó ảnh hưởng đến bảo mật dữ liệu và giải quyết các vấn đề...

SQL

Câu lệnh JOIN trong SQL và các lưu ý khi Phân tích dữ liệu

August 1, 2023

Câu lệnh JOIN trong SQL Server (Phép nối) là một trong những kỹ thuật biến đổi dữ liệu quan trọng trong phân tích dữ liệu

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Categories

  • Azure (1)
  • Chuyện nghề (2)
  • Data (7)
  • Learn (1)
  • Other tools (1)
  • Power BI (21)
  • Skills & Knowledge (29)
  • SQL (9)
  • Technique (31)
  • Tutorials (38)

Most Popular

  • MÔ HÌNH HÓA DỮ LIỆU: STAR SCHEMA, BẢNG DIM VÀ BẢNG FACT

    0 shares
    Share 0 Tweet 0
  • Câu lệnh JOIN trong SQL và các lưu ý khi Phân tích dữ liệu

    0 shares
    Share 0 Tweet 0
  • TÌM HIỂU VỀ IDENTITY VÀ SEQUENCE TRONG SQL 

    0 shares
    Share 0 Tweet 0
  • CÁCH TẠO BẢNG DATE TRONG POWER BI

    0 shares
    Share 0 Tweet 0
  • CÁCH TỰ ĐỘNG CẬP NHẬT DỮ LIỆU (SCHEDULED REFRESH) TRONG POWER BI SERVICE 

    0 shares
    Share 0 Tweet 0
  • About me
  • Privacy Policy
hoangtomanh@gmail.com

© 2022 Hoang 's blog

No Result
View All Result
  • Hoang’s Blog
  • Career Stories