Trong bài viết này, Gitiho.com sẽ cùng bạn đọc sẽ đi tìm hiểu vấn đề khi tìm ra Relationship giữa các Table trong Data Model. Bên cạnh những lý thuyết khi sử dụng Data Model trong PowerBI thì nửa sau của bài viết sẽ nói về những sai lầm cần tránh khi làm việc với Relationship trong Data Model.
Xem thêm: Thành thạo cách làm việc với bảng nhờ khóa học Power BI này
799,000đ 1,500,000đ
Nhìn chung, khi chúng ta tạo ra các Relationship thì chúng ta không nên tạo Relationship trực tiếp giữa các Data Table
Như ở đây chúng ta có hai Data Table gồm Sales_Data và Return Data, cùng với đó là 3 Lookup Table là Customer, Calendar và Product
Về nguyên tắc tạo Relationship, người dùng hoàn toàn tạo được Relationship giữa Sales_Data và Return_Data qua một trường chung là Product Key rồi sau đó mới tạo ra các Relationship khác giữa Sales_Data với với Customer qua CustomerKey, với Product là Product Key
Theo nguyên tắc Snowflakes thì sẽ phải ra được một kết nối gián tiếp là Return Data tới Customer Key. Tuy nhiên trong Return_Data chúng ta không thể xác định được mã khách hàng nào đã trả lại hàng (Return) cho chúng ta. Vì vậy chúng ta luôn luôn phải nhớ nguyên tắc tạo nhiều mối quan hệ trong Data Model
Như ví dụ trên thì đã có kha khá các Data Model thì chúng ta chỉ tạo ra các mối quan hệ giữa Data Table với Lookup Table hoặc gián tiếp một số bước với nhau, chứ không thể trực tiếp tạo Relationship bằng các Data Table với nhau.
Đọc thêm: Data Model là gì ? Chuẩn hóa Database trong PowerBI
Khi đã nắm rõ được lý thuyết và một số lưu ý về Data Model, Gitiho.com sẽ cùng bạn thực hành ngay trên PowerBI
Ví dụ chúng ta đang có Relationship từ Sale Data tới Products, Calendar và Customers Key. Từ đó người dùng sẽ xem được doanh thu từ các sản phẩm, doanh thu theo ngày tháng, doanh thu theo khách hàng
Ở đây chúng ta sẽ dựa vào một bảng độc lập tên Return để kết nối với Product Key để theo dõi hàng bị trả lại theo từng mã chứa trong Product. Người dùng cũng có thể sử dụng Return với Date để xem số lượng hàng bị trả lại theo ngày
Thế nhưng bất cập ở chỗ PowerBI không có trường chung để xem các hàng trả lại này thuộc Customer Key nào bởi ngay từ phần đầu vào PowerBI đã không ghi lại trường này, vì vậy mà người dùng sẽ không xử lý được
Tuy nhiên, nhiều người cho rằng giữa Return Data là Sale Data có trường chung là Product Key, từ đó sẽ tạo ra kết nối từ Product Key, từ đó theo nguyên tắc bắc cầu thì vẫn có thể xem được Customer Key
Xem thêm: Những lưu ý khi kết nối nhiều bảng trong Data Model với PowerBI
Sau đó ta sẽ quay về Report, tạo một Table rồi kéo Customer Key và Return vào
Ở mục Customer Key chúng ta sẽ thay đổi từ Count sang Don't Summarize
Thành quả là PowerBI đã tách được CustomerKey và Return trong Data Model cực kỳ cụ thể. Thế nhưng đây lại là dữ liệu sai vì chúng ta đã sử dụng sai nguyên tắc khi tạo ra Relationship vì tạo kết nối trực tiếp hai Data Table với nhau thì dữ liệu trả ra sẽ là giữ liệu sai. Mà một dữ liệu sai thì các chuỗi dữ liệu sau đó cũng sẽ bị kéo theo sai số. Vì vậy chúng ta hãy nhớ rằng không bao giờ được kết nối trực tiếp hai Data Table với nhau. Còn khi bạn muốn sử dụng chung thông tin thì chúng ta sẽ kết nối chung tới một Lookup Table
Từ đó, Gitiho.com sẽ kết nối Product Key tới Sale Data và kết nối Product tới Return Data trong Data Model để người dùng có thể Active được hai Product Key cùng một lúc
Khi chúng ta muốn tạo ra một Table mới, ở màn hình Report, ta sẽ kéo Product Name, Return Quantity, Order Quantity. Sau đó PowerBI mới trả lại cho chúng ta kết quả đúng
Xem thêm: Top 12 câu hỏi quan trọng nên biết để bắt đầu với Power BI
Qua bài viết này, Gitiho.com đã truyền tải đến bạn đọc một số quy tắc quan trọng khi làm việc với PowerBI, đặc biệt là trong việc xử lý nhiều mối quan hệ phức tạp trong Data Model vì tạo các Relationship giữa các Data Table. Còn khi muốn sử dụng chúng thì cần phải có bước chung gian qua Lookup Table.
Tài liệu kèm theo bài viết
Bạn có thể nhanh chóng biến dữ liệu thô thành báo cáo trực quan sinh động, từ đó dễ dàng đưa ra quyết định thông minh, nhanh chóng, kịp thời nhờ Power BI. Khám phá công cụ tuyệt vời này ngay với khóa học “PBIG01 - Tuyệt đỉnh Power BI - Thành thạo trực quan hóa và Phân tích dữ liệu” tại Gitiho. Nhấn vào Đăng ký và Học thử ngay nhé!