Making sense of challenging data topics one step at a time.

Author: Dominick Raimato

What do I need to know about Hybrid Tables in Power BI?

I was so excited to see the release of Hybrid Tables in Preview with last month update of Power BI. But just like you, I was wondering if Hybrid Tables were for me. I did some investigating and came back with some answers.

Understanding Import versus DirectQuery

It seems like a simple topic, but it is important to understand the difference between the two data connectivity methods because of Hybrid Tables.

Selecting Import or DirectQuery has an impact on how you build your reports in Power BI

When you select Import for you connectivity method, the data is going to be imported into your Power BI report. When properly used, it will quickly render visualizations. You also have the ability to perform transformations on the data by adding columns. (Yes – best practice is to push that as far upstream as you can, but that is not always possible for citizen developers)

When you select DirectQuery, you will be connecting to your data source, but never adding your data to the report file. You will query it every time you need to render visualizations. It keeps the report file size down and eliminates the need to refresh your data. However, this can be slow and does not allow for any transformations.

Why is this review so important? The answer is simple – Hybrid Tables are built on top of Incremental Refresh which uses the Import data connectivity method. If you have never used Incremental Refresh before, Microsoft has provided documentation on how to enable it for your report.

Are Hybrid Tables different from Incremental Refresh?

Hybrid Tables are not different from Incremental Refresh. In fact, Hybrid Tables augment Incremental Refresh. To understand how they work together, let’s look at how the two compliment each other.

To make it easier, I want you to think about your data in three segments – historical, current, and real time.

Incremental Refresh

Incremental Refresh is the base of Hybrid Tables and handles the historical and current data. Incremental Refresh is setup to simplify how much data is imported every time the data model is refreshed. First you will determine how much data you want to bring into the model. In my example, I have set my model up to return the last ten years of data. Then I will select how much of that data will be changing and need to be refreshed. This is generally a shorter window of time. My example is set to refresh the last ninety days worth of data.

Looking at this image, you can see a bar chart that is showing you the breakdown of how your data will be managed in the refresh process. The last ninety days of will be incrementally refreshed – our current data. The remainder of the selected data will be archived – our historical data.

Incremental Refresh setup to bring in the last 10 years of data, but only refresh the last 90 days

If you have been using Incremental Refresh, this is how your data refreshes have been managed. The only problem with Incremental Refresh is that data is still missing. This excludes the most current data from the refresh and results.

Hybrid Tables to the Rescue!

Enabling Hybrid Tables brings you the most current data using DirectQuery. When you check the box, you will see a new segment called Real Time appear. At the same time, the “Only refresh complete day” is now checked and greyed out. What is going on?

Getting latest data in real time adds a section to the bar chart at the bottom and greyed out “Only refresh complete days”

Simply put, incremental refresh now will bring in all data before today. With this data loaded, DirectQuery will now bring in all new data that comes in today. This means the data does not need to be refreshed multiple times in the day. Now a single refresh loads the majority of the data model and any changes that come in today are handled in real time.

What else do I need to know?

If you are excited to try out Hybrid Tables, there are a few things you should know before jumping in.

Import becomes DirectQuerty

If you have been using Incremental Refresh and made transformations like adding columns, you will run into issues. We explained above how Import connections allow you to make those transformations. However Hybrid Tables use DirectQuery. You will need to play by those rules in order to use this feature.

Power BI Premium is a Must

Hybrid Tables can only be used with Power BI Premium. This can be Power BI Premium Per User (PPU) or Premium Capacity. If you already have Power BI Premium, you will be fine. If not, consider leveraging Power BI Premium Per User trial to see if Hybrid Tables work for you.

Refresh Costs

When using DirectQuery, you might be incurring additional costs whenever you view reports. If your data warehouse charges you per query, this could start to add up. You will need to monitor costs to make sure your queries are running efficiently and not costing more than forecasted.

So Should I use Hybrid Tables?

If you have a rapidly changing data set that you need to access in real time, you should try using it. Hybrid Tables work well and are easy to setup. If your data does not change that frequently, it might not be as valuable.

Have you tried using Hybrid Tables? Is there anything I am missing? What was your experience? Tell me in the comments below!

Stop Wasting Time by Using Power BI Themes

Power BI Reports serve several purposes, but they often consumed by larger audiences. As a result, we often strive to provide a quality viewing experience for our report consumers. Most people jump right in with the creation of their reports and neglect how the report is going to look and feel. This is common as we want to get to the good stuff as quickly as we can. But as they say, an ounce of prevention is worth a pound of cure. Taking some time to setup a theme file can really speed up the development process.

Why Are Themes Important?

So before you say that his is a lot of work to just make reports look pretty, it is really more than that. The look and feel of your reports are critical – especially in a self service environment. The look and feel of a report can be a subtle signal to the consumer of who created the report and the reliability of the data.

The Reliability of Poorly Branded Reports

I often work with customers who have created reports that are consumed by large audiences that use color palettes and fonts that do not align with the company branding. This is common with the first several reports that are created. Eventually, someone gets ahold of a branding guide and starts using elements in their reports. Updating the bars, colors, or lines to match the corporate branding helps add legitimacy to the report. Little by little, more corporate branding is added until the theme is fleshed out.

But what happened to those original reports? The ones that used no theme or some of the theme? They often remain neglected. New employees receive links to these reports and often ask themselves “Is this information accurate?” Eventually they will trust the data, but they spend weeks asking if it is correct.

It seems silly, but the branding can instill confidence in your reports.

Managing Branding Manually Hurts in the Long Run

Another common challenge I have identified is inconsistency between visualizations. Actually, it is difficult to even do within a single visualization. When you look at a simple column chart, you would think it is really easy to keep your fonts consistent. Here is a breakdown of where you can make changes to the fonts for a column chart:

  • On the X Axis
    • Value labels
    • X Axis titles
  • On the Y Axis
    • Value labels
    • Y Axis title
  • Legend
  • Small Multiple Grids
  • Column data labels (can be different for each series)
  • Visual title
  • Tooltip text

Add it up and you have a total of nine places to update the font so it is consistent! That is unbelievable! And if I have to do this for multiple visualizations, this can become a lot to manage. And without a consistent theme, I have to keep making these changes. So how do I prevent this from happening to me in the future?

Make Themes Work for You

Like I mentioned before, a little planning can go a long way. Here are my steps to help simplify the process.

Step 1 – Find the brand identity documentation for Your organization

Hands down this is sometimes the hardest part of the process. If you work at a company that has a strong brand identity, this should not be difficult. There is likely a brand identity guide or a PowerPoint template that has all of the details you need such as the color HEX or RGB codes and fonts located in the margins of the slides.

If you cannot find a brand identity guide or PowerPoint that has that information, I always recommend becoming friends with someone in your marketing department. They have this information readily available for their projects. It might cost you a few drinks at Happy Hour on Friday night, but it is a lot easier than having to get this information manually.

If you are not as lucky, you can still get this information. It might be a little more difficult, but you can find it embedded inside other resources. You can usually find a PowerPoint template that has the basic colors and fonts identified. If you select a text box in a presentation, you will likely find the font used for the majority of the presentation. You can also click on the font colors to see if they are the ones your organization uses. If they are there, select a color one at a time and then click on more colors. Doing so will bring up the RGB and HEX color codes for the selected color. I like to copy the HEX colors as they are easier and paste them into an Excel spreadsheet with the color name so I can quickly reference them.

Still cannot find your colors? Not to worry. Find a digital copy of your company’s logo and add it to a blank PowerPoint presentation. From there, use the eyedropper function under the font color dropdown and use it to extract the key colors to your organization’s logo. Then follow the steps above to extract the color codes.

Step 2 – Build out your Power BI Theme

With the RGB or HEX color codes in hand, it is time to update your Power BI theme. Go to the View tab in Power BI desktop and click on the drop down to the right of the themes.

Accessing the Power BI Theme customizer

From here, you can start to build out your theme. Start by adding a name for your theme. From there, update the color palette. Simply add the RGB or HEX codes you identified into each of the positions. Keep in mind that the order of your colors will match the order they are selected for legends. If you have a particular combination of 2-3 colors you like to use a lot, make sure they sit in the first three positions so they can easily be leveraged.

Setting up the color palette for your Power BI Theme

Next, you will want to address the text in the report. By default, Power BI is set to use a blend of Segoe UI and DIN fonts. The list of fonts is limited to ensure they stay web safe and visible in the Power BI service. Your first choice might not be in the list, but most organizations have a secondary font that is for such an application. You can also set default sizes and colors for generic text, titles, cards/KPIs, and tab headers.

Customizing the text for your Power BI Theme

Step 3 – Tweak your Power BI Theme until it is set

Once you have the basics in place, you can start making other adjustments to your theme. Other items you might choose to customize include visual backgrounds, borders, report backgrounds, and other adjustments. You have a lot of flexibility to make adjustments that meet the needs of your reports, so play around with them. Whatever you do, try as hard as you can to avoid the formatting pane for your visuals.

Understand that this process can take a little time, so do not be afraid to spend more time than expected. The more customizations are set in the theme, the less customizations you will have to apply to visualizations when you build your reports!

Step 4 – Export your Power BI Theme

When you are comfortable with the theme you have developed, it is time to export your theme so it can be used with other reports.

In Power BI Desktop, go back to the View tab and click on the dropdown next to themes. Select Save Current Theme and save it to your OneDrive. This way it will be automatically backed up in the event of a computer emergency.

Step 5 – Deploy your new Power BI Theme

This is where things can get a little hairy. You have a few options for deploying your theme to others within your organization.

1). You can distribute the Power BI Theme file you created. Users can import the theme every time they want to use it when building a report.

2). You can create a Power BI Report using the theme. Leave it blank and save it as a Power BI Template (*.PBIT) file and distribute it.

Both solutions work, but they feel a little clunky. For me, I have found most of the report creators are quite savvy with theme files, so it is not a big deal. However, if you are interested in building a strong citizen developer community, this could prove to be challenging.

Best practices/considerations for building Power BI Themes.

When you build out your theme, keep these best practices and considerations in mind to help drive the best experience for your report consumers.

Check your theme against multiple visualizations

The temptation is always there – if you only use bar and column charts you only check those visuals. When building out your theme, make sure you try all of the different types of visualizations to make sure your theme works across all available visualizations.

Consider a style guide for reports

If you followed the first best practice, this should be an easy one. Take the report file you used to test the theme and create a sample report. From here, add in key information such as how to label data, types of charts, and other organizational standards that have been set forth by your team. This will help content creators have a roadmap for building quality reports.

Consider color contrast to make reports accessible to all

This might be a bigger concern if you do not have an existing style guide from marketing, but is always an important consideration. Content is difficult to consume if creators use poor color selections. Even worse, it causes strain for users with visual disabilities who have trouble viewing the content. Use a tool like WebAIM’s Contrast Checker to ensure the best experience for all report consumers.

Conclusion

It is a lot of front end work, but I promise you that you will love how easy it is to deploy reports when you have a custom theme. Take the time to build it out right and you will never have to mess with updating individual visuals ever again.

Are you using themes already? Do you have some tips/tricks on how to use them? How are you distributing themes? Leave a comment below and let me know!

Welcome and Hello!

Thank you for visiting! I am excited to share my thoughts and experience around all facets of data. I started this journey because of the frustration I often see others suffer from every time they try to effectively use data. My goal is to share some of the tips and tricks I have picked up along the way with tools like Power BI and Excel to simplify the process.

I also am looking forward to sharing my thoughts on the state of data literacy. It has an impact on the readability of content created and the consumers who view it. Frequently I find horrible examples of data visualization out in the wild. Sadly, I see these examples being produced by organizations who claim to hold themselves to high standards. I want to bring these examples to light, dissect them, and show you how to improve them. Report viewers do not always think about these things. Together, we can change how content creators put together reports that are more accessible by consumers.

So thank you for joining me here and letting me share my stories! I look forward to us both learning together!

Page 5 of 5

Powered by WordPress & Theme by Anders Norén