Dataset objectives

For both Power BI projects and longer-term deployments, it's critical to distinguish Power BI datasets from Power BI reports and dashboards. Although Power BI Desktop is used to develop both datasets and reports, a Power BI dataset is an SSAS Data Model internally. Similar to an SSAS Data Model developed and maintained by IT, the intent of the Power BI dataset is to provide a simplified layer for reporting and analysis and to embed corporate-approved logic and security. Power BI reports, which are also saved as .pbix files, will only connect to the dataset and thus will exclusively leverage Power BI Desktop's visualization features, such as Bookmarks and Slicer visuals.

As per Chapter 1Planning Power BI Projects, datasets and reports are also associated with unique technical and non-technical skills. A Power BI report developer, for example, should understand visualization standards, the essential logic and structure of the dataset, and how to distribute this content via Power BI Apps.

However, the report developer doesn't necessarily need to know any programming languages and can iterate very quickly on reports and dashboards. A Power BI dataset designer, conversely, must have a fundamental knowledge of DAX and is very well served by the M (Power Query) language and standard SQL. Additionally, the dataset designer is not able to iterate as quickly as the report developer given the technical dependencies within a dataset and the longer-term objectives for the dataset. 

Given that the dataset serves as the bridge between data sources and analytical queries, it's important to proactively evaluate datasets relative to longer-term objectives. Large, consolidated datasets should be designed to support multiple teams and projects and to provide a standard version or definition of core metrics. Although organizations may enable business users to create datasets for specific use cases, corporate BI solutions should not utilize datasets like individual reports for projects or teams.

The following table summarizes the primary objectives of datasets and identifies the questions that can be used to evaluate a dataset in relation to each objective:

Objective
Success criteria

User interface

How difficult is it for business users to build a report from scratch?
Are users able to easily find the measures and columns needed?

Version control

Do our measures align with an official, documented definition?
Are we reusing the same dimensions across multiple business processes?

Data security

Have we implemented and thoroughly tested Row-level security (RLS) roles?
Are we using Azure Activity Directory (AAD) security groups to implement security?

Performance

Are users able to interact with reports at the speed of thought?
Are our core DAX Measures efficient and utilizing all CPU cores available?

Scalability

Can the dataset support additional business processes and/or history?
Can the dataset support additional users and workloads?

Analytics

Does the dataset deliver advanced insights (out of the box)?
Are any local (report-level) measures or complex filters being used?

Availability

How confident are we in the data sources and data retrieval process?
Are there dependencies we can remove or potential errors we can trap?

Manageability

How difficult is it to implement changes or to troubleshoot issues?

Can existing data transformation and analytical logic be consolidated?

Several of the objectives are self-explanatory, but others, such as availability and manageability, are sometimes overlooked. For example, the same business logic may be built into many individual DAX Measures, making the dataset more difficult to maintain as requirements change. Additionally, there may be certain hardcoded dependencies within the M Queries that could cause a dataset refresh to fail. Dataset designers and BI teams must balance the needs to deliver business value quickly while not compromising the sustainability of the solution.

To simplify individual measures and improve manageability, common logic can be built into a small subset of hidden DAX Measures. The DAX Measures visible in the fields list can reference these hidden measures and thus will automatically update if any changes are necessary. This is very similar to parameters and data source staging queries in M per Chapter 2, Connecting to Sources and Transforming Data with M. Examples of centralizing DAX logic are provided later in this chapter within the Parameters table section.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.135.200.14