Blog

Những lưu ý khi kết nối nhiều bảng trong Data Model với PowerBI

Tổng quan về Data Model trong PowerBI

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 Fact 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.

Thực hành Data Model trên PowerBI

Thao tác trên màn hình Data Model

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

Những lỗi cần lưu ý khi làm việc với Data Model

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

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à Power BI đã 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ừ đó, Inda.vn 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 đó Power BI mới trả lại cho chúng ta kết quả đúng

Qua bài viết này, INDA đã truyền tải đến bạn đọc một số quy tắc quan trọng khi làm việc với Power BI, đặ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

    LIÊN HỆ VỚI CHÚNG TÔI ĐỂ NHẬN ĐƯỢC TƯ VẤN MIỄN PHÍ
    Xin vui lòng điền vào form dưới đây. Chúng tôi sẽ liên hệ lại ngay cho bạn khi nhận được thông tin:






    Leave a Reply

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