Kiến thức
20 phút đọc

Sử Dụng Chức Năng DirectQuery For Power BI Datasets And Analysis Services – Phần 2

Ở phần 1, Mastering Data Analytics đã cùng bạn tìm hiểu về bảy cách sử dụng chức năng DirectQuery for Power BI Datasets And Analysis Services. Trong bài viết này, chúng ta sẽ cùng tìm hiểu 3 tính năng còn lại của của DirectQuery for Power BI Datasets And Analysis Services. Hãy đọc hết bài viết để biết thêm thông tin nhé!

1. Chức Năng DirectQuery For Power BI Datasets And Analysis Services có thể tạo mối quan hệ giữa các nguồn dữ liệu khác nhau

Chức Năng DirectQuery For Power BI Datasets And Analysis Services có thể tạo mối quan hệ giữa các nguồn dữ liệu khác nhau

Tạo mối quan hệ trong mô hình tổng hợp bằng cách sử dụng DirectQuery cho bộ dữ liệu Power BI

2. Xuất bản lên Power BI Service

Mô hình dữ liệu mới khi được xuất bản cho dịch vụ, yêu cầu một số bước so với các loại bộ dữ liệu Power BI khác. ở đây bạn có thể thấy các bước để trải qua:

2.1. Lỗi: Không có cổng

Đối với các hình ảnh có bất cứ thứ gì từ bộ dữ liệu DirectQuery Power BI, bạn có thể thấy lỗi cho biết “There is no gateway”.

Lỗi cho biết “There is no gateway” đối với các hình ảnh có bất cứ thứ gì từ bộ dữ liệu DirectQuery Power BI.

Để giải quyết lỗi này, hãy chuyển đến phần cài đặt của tập dữ liệu.

Không chọn bất kỳ tùy chọn cổng nào cho bộ dữ liệu DirectQuery Power BI

Hãy nhớ rằng bạn cần cổng cho bất kỳ nguồn dữ liệu nào được đặt tại chỗ và được Nhập. Chọn cái đó trong cổng. Không chọn bất kỳ tùy chọn cổng nào cho bộ dữ liệu Power BI của bạn.

Xem thêm: Power BI Desktop và Cách Sử Dụng

2.2. Thông tin xác thực nguồn dữ liệu

Sau khi thiết lập cổng, bạn cần đặt thông tin đăng nhập cho bộ dữ liệu Power BI.

Đặt thông tin đăng nhập cho bộ dữ liệu  DirectQuery Power BI

Thiết lập thông tin xác thực nguồn dữ liệu cho bộ dữ liệu Power BI

Chọn OAuth2 và nhập thông tin đăng nhập tài khoản Power BI có quyền truy cập vào bộ dữ liệu.

Nhập thông tin đăng nhập tài khoản DirectQuery Power BI có quyền truy cập vào bộ dữ liệu.

Nhập thông tin đăng nhập cho DirectQuery vào bộ dữ liệu Power BI

Thông tin đăng nhập được nhập ở đây chỉ để tạo kết nối. Quyền truy cập vào dữ liệu sẽ dựa trên quyền truy cập của người dùng đã đăng nhập vào dữ liệu (Tôi sẽ giải thích điều đó trong một blog/video khác về Bảo mật cấp độ hàng trong loại kết nối này).

2.3. Chế độ xem Lineage View

Bạn cũng có thể xem chế độ xem Lineage từ một liên kết tại đây. Liên kết này hiển thị cho bạn tất cả các nguồn dữ liệu mà bạn có cho mô hình Power BI tổng hợp của mình.

Liên kết này hiển thị tất cả các nguồn dữ liệu có cho mô hình DirectQuery Power BI tổng hợp

Chế độ xem Lineage cho bộ dữ liệu Power BI

Sau tất cả các bước trên, báo cáo sẽ hiển thị thành công;

Chế độ xem Lineage cho bộ dữ liệu DirectQuery Power BI thành công

Báo cáo mô hình tổng hợp hiển thị mà không có bất kỳ lỗi nào.

3. Chia sẻ báo cáo

Ngoài ra còn có một mẹo khi bạn chia sẻ báo cáo. Loại báo cáo này có thể được chia sẻ giống như bất kỳ báo cáo nào khác. Tuy nhiên, đôi khi, tùy thuộc vào cấu hình chia sẻ, người dùng nhận được kết quả như sau:

Lỗi khi chia sẻ mô hình tổng hợp với kết nối tập dữ liệu DirectQuery với Power BI

Lỗi khi chia sẻ mô hình tổng hợp với kết nối tập dữ liệu DirectQuery với Power BI

Xem thêm: Chia Sẻ Dashboard Trên Các Ứng Dụng Power BI Mobile

3.1. Xây dựng quyền truy cập vào bộ dữ liệu Power BI nguồn

Điều này thường xảy ra khi người dùng được chia sẻ báo cáo không có quyền truy cập vào một trong các bộ dữ liệu Power BI. Bạn có thể vào từng tập dữ liệu một và vào phần Quản lý quyền của tập dữ liệu đó.

Xây dựng quyền truy cập vào bộ dữ liệu DirectQuery cho Power BI nguồn

Quản lý Quyền của bộ dữ liệu Power BI nguồn

Nếu người dùng không có quyền truy cập Bản dựng, hãy bật quyền truy cập đó cho người dùng và sau đó quyền truy cập sẽ ổn.

Quản lý Quyền của bộ dữ liệu DirectQuery cho Power BI nguồn

Thêm quyền truy cập bản dựng vào tập dữ liệu Power BI

Với quyền truy cập Bản dựng, người dùng có thể xem báo cáo chính xác.

Thêm quyền truy cập bản dựng vào tập dữ liệu DirectQuery Power BI

Xây dựng quyền truy cập vào tập dữ liệu Power BI

3.2. Chuỗi

Bộ dữ liệu, bộ dữ liệu và mô hình mà chúng dựa vào, tạo thành một chuỗi. Quá trình này, được gọi là xâu chuỗi, cho phép bạn xuất bản báo cáo và tập dữ liệu dựa trên các Power BI dataset khác, một tính năng mà trước đây không thể thực hiện được.

Ví dụ: hãy tưởng tượng đồng nghiệp của bạn xuất bản 1 Power BI dataset có tên là Sales and Budget dựa trên mô hình Analysis Services có tên là Sales và kết hợp nó với một trang tính Excel có tên là Budget.

Khi bạn xuất bản một báo cáo mới (và tập dữ liệu) có tên là Sales and Budget Europe dựa trên tập dữ liệu Power BI Sales and Budget do đồng nghiệp của bạn xuất bản, thực hiện thêm một số sửa đổi hoặc tiện ích mở rộng, khi bạn làm như vậy, nghĩa là bạn đang thêm báo cáo và tập dữ liệu một cách hiệu quả thành một chuỗi dài ba yếu tố, bắt đầu với mô hình Sales Analysis Services và kết thúc với bộ dữ liệu Power BI Sales and Budget Europe của bạn. Hình ảnh sau đây trực quan hóa quá trình xâu chuỗi này.

Quá trình xâu chuỗi các tập dữ liệu DirectQuery cho Power BI

Chuỗi trong hình ảnh có độ dài ba, là độ dài tối đa trong khoảng thời gian cho bản preview này. Mở rộng vượt quá chiều dài chuỗi ba không được hỗ trợ và dẫn đến lỗi.

3.3. Cảnh báo an ninh

Sử dụng tính năng DirectQuery for Power BI dataset and Analysis Services sẽ hiển thị cho bạn hộp thoại cảnh báo bảo mật, được hiển thị trong hình ảnh sau đây.

Cảnh báo an ninh khi sử dụng tính năng DirectQuery for Power BI dataset and Analysis Services

Dữ liệu có thể được đẩy từ nguồn dữ liệu này sang nguồn dữ liệu khác, đây là cảnh báo bảo mật tương tự đối với việc kết hợp DirectQuery và nguồn nhập trong một mô hình dữ liệu. Để tìm hiểu thêm về hành vi này, vui lòng xem cách sử dụng các mô hình tổng hợp trong Power BI Desktop.

3.4. Cân nhắc và hạn chế

Có một số cân nhắc cần lưu ý khi sử dụng DirectQuery for Power BI datasets và Analysis Services:

  • Nếu bạn làm mới nguồn dữ liệu của mình và xảy ra lỗi xung đột với tên trường hoặc bảng, Power BI sẽ khắc phục lỗi cho bạn.
  • Bạn không thể chỉnh sửa, xóa hoặc tạo mối quan hệ mới trong cùng Power BI dataset hoặc Analysis Services. Nếu bạn có quyền chỉnh sửa đối với các nguồn này, thì thay vào đó bạn có thể thực hiện các thay đổi trực tiếp trong nguồn dữ liệu.
  • Để tạo báo cáo trong Power BI service trên mô hình tổng hợp dựa trên một tập dữ liệu khác, tất cả thông tin đăng nhập phải được thiết lập. Trên trang cài đặt thông tin xác thực làm mới, đối với các nguồn Analysis Services, lỗi sau sẽ xuất hiện, ngay cả khi thông tin xác thực đã được đặt:
Những cân nhắc và hạn chế khi sử dụng DirectQuery for Power BI datasets and Analysis Service

Vì điều này gây nhầm lẫn và không chính xác nên chúng tôi sẽ sớm xử lý vấn đề này.

  • Cần có Build permissions để xem các báo cáo được tạo bằng tính năng này khi một hoặc nhiều bộ dữ liệu trong chuỗi nằm trong Pro workspace. Nếu người tạo báo cáo đã rời khỏi công ty hoặc quyền Build permissions của họ đã bị thu hồi kể từ khi họ tạo báo cáo, thì quyền Build permissions cũng sẽ được yêu cầu trên tất cả các bộ dữ liệu trong chuỗi.
  • Để có thể tạo kết nối DirectQuery với tập dữ liệu Power BI, người thuê của bạn cần bật “Allow XMLA Endpoints and Anâlyze in Excel with on-premises datasets (Cho phép điểm cuối XMLA và phân tích trong Excel với tập dữ liệu tại chỗ”.
  • Các kết nối với SQL Server 2022 và các dịch vụ Analysis Services tại chỗ sau này hoặc IAAS yêu cầu cổng dữ liệu tại chỗ (Chế độ tiêu chuẩn).
  • Tất cả các kết nối đến các mô hình Power BI Datasets từ xa đều được thực hiện bằng đăng nhập một lần. Xác thực bằng service principal hiện không được hỗ trợ.
  • Đối với các dung lượng premium, “XMLA endpoint” phải được đặt thành “Read Only” hoặc “Read/Write” .
  • Các quy tắc RLS sẽ được áp dụng trên nguồn mà chúng được xác định, nhưng sẽ không được áp dụng cho bất kỳ bộ dữ liệu nào khác trong mô hình. RLS được xác định trong báo cáo sẽ không được áp dụng cho các nguồn từ xa và RLS được đặt trên các nguồn từ xa sẽ không được áp dụng cho các nguồn dữ liệu khác. Ngoài ra, bạn không thể xác định RLS trên một bảng từ một nhóm nguồn khác cũng như không thể xác định RLS trên một bảng cục bộ có mối quan hệ với một nhóm nguồn khác.
  • KPI, bảo mật cấp hàng (RLS) và bản dịch sẽ không được nhập từ nguồn trong bản phát hành preview này.
  • Bạn có thể thấy một số hành vi không mong muốn khi sử dụng phân cấp ngày. Để giải quyết vấn đề này, thay vào đó hãy sử dụng cột ngày. Sau khi thêm phân cấp ngày vào hình ảnh, bạn có thể chuyển sang cột ngày bằng cách nhấp vào mũi tên xuống trong tên trường, sau đó nhấp vào tên của trường đó thay vì sử dụng Date Hierarchy:
Cân nhắc và hạn chế của DirectQuery for Power BI datasets and Analysis Service


Để biết thêm thông tin về cách sử dụng cột ngày so với phân cấp ngày, hãy truy cập bài viết này.

  • Bạn có thể thấy các thông báo lỗi không hữu ích khi sử dụng các tính năng AI với mô hình có kết nối DirectQuery với Analysis Services.
  • Sử dụng ALLSELECTED với nguồn DirectQuery dẫn đến các kết quả không đầy đủ.
  • Bộ lọc và mối quan hệ:

Bộ lọc được áp dụng từ một nguồn dữ liệu cho một bảng từ một nguồn DirectQuery khác chỉ có thể được thiết lập trên một cột

Lọc chéo hai bảng trong nguồn DirectQuery bằng cách lọc chúng bằng một bảng bên ngoài nguồn không phải là thiết kế được đề xuất và không được hỗ trợ.

Bộ lọc chỉ có thể chạm vào một bảng một lần. Không hỗ trợ áp dụng cùng một bộ lọc cho một bảng hai lần, thông qua một trong nhiều bảng bên ngoài nguồn DirectQuery.

  • Trong khi preview, độ dài tối đa của chuỗi mô hình là ba. Mở rộng ra ngoài độ dài chuỗi ba không được hỗ trợ và dẫn đến lỗi.
  • Có thể đặt cờ discourage chaining (ngăn cản tạo chuỗi) trên một mô hình để ngăn chuỗi được tạo hoặc mở rộng. Xem Quản lý kết nối DirectQuery tới tập dữ liệu đã xuất bản để biết thêm thông tin.
  • Kết nối với tập dữ liệu Power BI sẽ không được hiển thị trong Power Query.

Ngoài ra còn có một số hạn chế bạn cần lưu ý:

  • Các tham số cho cơ sở dữ liệu và tên máy chủ hiện đang bị vô hiệu hóa.
  • Không hỗ trợ xác định RLS trên các bảng từ một nguồn từ xa.
  • Việc sử dụng bất kỳ nguồn nào sau đây làm nguồn DirectQuery không được hỗ trợ:
    • SQL Server Analysis Services (SSAS)
    • SAP HANA
    • SAP Business Warehouse
    • Bộ dữ liệu thời gian thực (Real-time datasets)
    • Bộ dữ liệu mẫu (Sample Datasets)
    • Làm mới Excel Online
    • Nhập các tệp Excel / CSV
    • Chỉ số sử dụng (Usage metrics) (My workspace)
  • Sử dụng DirectQuery trên tập dữ liệu từ “My workspace” hiện không được hỗ trợ.
  • Việc sử dụng Power BI Embedded với bộ dữ liệu bao gồm kết nối DirectQuery với mô hình Azure Analysis Services hiện không được hỗ trợ.
  • Xuất bản báo cáo lên web bằng cách sử dụng tính năng xuất bản lên web không được hỗ trợ.
  • Các nhóm tính toán trên các nguồn từ xa không được hỗ trợ với kết quả truy vấn không xác định.
  • Các bảng tính toán không được hỗ trợ trong Service sử dụng tính năng này. Cố gắng thực hiện làm mới tập dữ liệu calculated table hoặc calculated column tham chiếu nguồn dữ liệu DirectQuery sẽ dẫn đến thông báo lỗi “Không cung cấp thông tin đăng nhập một lần (SSO)” (Single sign-on (SSO) credential isn’t provided).
  • Nếu đổi tên workspace sau khi kết nối DirectQuery đã được thiết lập, bạn sẽ cần cập nhật nguồn dữ liệu trong Power BI Desktop để báo cáo tiếp tục hoạt động.
  • Làm mới trang tự động (APR: automatic page refresh) chỉ được hỗ trợ cho một số trường hợp, tùy thuộc vào loại nguồn dữ liệu. Xem bài viết Tự động làm mới trang trong Power BI để biết thêm thông tin.
  • Tiếp quản tập dữ liệu đang sử dụng tính năng DirectQuery to other datasets hiện không được hỗ trợ.
  • Như với bất kỳ nguồn dữ liệu DirectQuery nào, hệ thống phân cấp được xác định trong mô hình Analysis Services hoặc Power BI dataset sẽ không được hiển thị khi kết nối với mô hình hoặc tập dữ liệu ở chế độ DirectQuery sử dụng Excel.
  • Sử dụng các cột có low-cardinality trong mối quan hệ nhóm nguồn chéo: Khi bạn tạo mối quan hệ giữa hai nhóm nguồn khác nhau, các cột tham gia vào mối quan hệ (còn được gọi là cột tham gia) phải có low cardinality, lý tưởng là 50.000 trở xuống. Việc xem xét này áp dụng cho các cột khóa không phải chuỗi; đối với các cột khóa chuỗi, xem phần xem xét sau đây.
  • Tránh sử dụng các cột khóa chuỗi lớn trong mối quan hệ nhóm nguồn chéo: Khi tạo mối quan hệ nhóm nguồn chéo, tránh sử dụng các cột chuỗi lớn làm cột mối quan hệ, đặc biệt đối với các cột có cardinality lớn hơn. Khi bạn phải sử dụng các cột chuỗi làm cột mối quan hệ, hãy tính toán độ dài chuỗi dự kiến ​​cho bộ lọc bằng cách nhân cardinality (C) với độ dài trung bình của cột chuỗi (A). Đảm bảo độ dài chuỗi dự kiến ​​dưới 250.000, sao cho A ∗ C < 250.000.

3.5. Cân nhắc của Tenant

Bất kỳ mô hình nào có kết nối DirectQuery với Power BI dataset hoặc Analysis Services đều phải được xuất bản trong cùng một tenant, điều này đặc biệt quan trọng khi truy cập Power BI dataset hoặc mô hình Analysis Services bằng cách sử dụng danh tính khách B2B, như được mô tả trong sơ đồ sau. Xem Người dùng khách có thể chỉnh sửa và quản lý nội dung để tìm URL của tenant để xuất bản.

Hãy xem xét sơ đồ sau đây. Các bước được đánh số trong sơ đồ được mô tả trong các đoạn tiếp theo.

Sơ đồ không kết nối giữa các bên thuê khi sử dụng DirectQuery cho Power BI

Trong sơ đồ, Ash làm việc với Contoso và đang truy cập dữ liệu do Fabrikam cung cấp. Sử dụng Power BI Desktop, Ash tạo kết nối DirectQuery tới mô hình Analysis Services được lưu trữ trong tenant của Fabrikam.

Để xác thực, Ash sử dụng danh tính người dùng Khách B2B (bước 1 trong sơ đồ).

Nếu báo cáo được xuất bản lên Power BI service của Contoso (bước 2), tập dữ liệu được xuất bản trong tenant của Contoso không thể xác thực thành công theo mô hình Analysis Services của Fabrikam (bước 3). Do đó, báo cáo sẽ không hoạt động.Trong trường hợp này, do mô hình Analysis Services được sử dụng được lưu trữ trong tenant của Fabrikam, nên báo cáo cũng phải được xuất bản trong tenant của Fabrikam. Sau khi xuất bản thành công trong tenant của Fabrikam (bước 4), bộ dữ liệu có thể truy cập thành công mô hình Analysis Services (bước 5) và báo cáo sẽ hoạt động bình thường.

Xem thông tin khai giảng Khóa học Business Intelligence sớm nhất tại Mastering Data Analytics. Với mọi thắc mắc xin liên hệ hotline 0961 48 66 48 hoặc inbox Fanpage Mastering Data Analytics để đăng ký nhanh nhất nhé!