• Predict This!

    November 2, 2019 / No Comments »

    My wife bought a pack of replacement water filters from Amazon. It was tagged as "Amazon's choice". The product listing showed the manufacturer name and it had a nice product photo advertising genuine filters. Except that there were all fake, which we discovered quickly by the output water pressure. The water coming out of a filter should have lower pressure while there was no difference with the "genuine" filter as though there was no filtering going on at all. And the water had a bad aftertaste. So, we call the manufacturer. They compared the batch number from the package (manufactured in China) and found it fake. That filter could have had some Chinese poison in it and Amazon would have sold it under "Amazon's choice". BTW, when we reported this to Amazon, the product was listed under a different seller. There is a lot of noise (mostly vendor-induced propaganda as...

  • Atlanta MS BI and Power BI Group Meeting on November 4th

    October 31, 2019 / No Comments »

    MS BI fans, join us for the next Atlanta MS BI and Power BI Group meeting on November 4, Monday, at 6:30 PM at the Microsoft office in Alpharetta. Andy Lawrence will share best practices for impactful Power BI Dashboards. CCG Analytics will sponsor the meeting. For more details, visit our group page and don't forget to RSVP (fill in the RSVP survey if you're planning to attend). Presentation: Best Practices for Impactful Power BI Dashboards Date: November 4, 2019 Time 6:30 – 8:30 PM ET Place: Microsoft Office (Alpharetta) 8000 Avalon Boulevard Suite 900 Alpharetta, GA 30009 Overview: Power BI is gaining momentum as a preferred tool for dashboards and interactive reports. Let's revisit some best practices for dashboard development, such as: ·       The importance of form and function ·       Facilitating user adoption ·       Mistakes that everyone makes ·       Fast shortcuts for clean reports ·       Hidden settings that are lifesavers ·       Best Power BI updates...

  • Securing Power BI Report Pages

    October 27, 2019 / No Comments »

    Every now and then I get a question about how to secure Power BI report pages. A business analyst has created a multi-page report that requires limited access to some sensitive information in one or more report pages. I always cringe at this idea and recommend securing the data instead. That's because report-level or dashboard-level security can be easily compromised. For example, if the user has permissions to use Analyze in Excel, they will surely bypass report security and get access to all the data. The same will happen if they use Report Builder or connect a third-party tool to the published Power BI dataset. Instead, you should apply row-level security (RLS) to protect the data. Currently, Power BI doesn't let you secure report pages but if you must apply report or visual security, you have options: Break the report into two set of reports: one with open access and...

  • Filtering Power BI Visuals by Measure

    October 21, 2019 / No Comments »

    Power BI lets you filter the visual data by a measure, such as by a measure that dynamically calculates the customer's rank. This is convenient but there are performance implications related to the way Power BI autogenerates the DAX query. If a visual has a visual-level filter on a measure, Power BI Desktop defines a variable table filter that includes all measures in the visual. In the following example, the visual filters on the IncludedInRank measure, but the filter table includes all measures in the visual: VAR __ValueFilterDM1 = FILTER ( KEEPFILTERS ( SUMMARIZECOLUMNS ( 'Customer'[PARENT_NAME], 'Customer'[Label_DM], 'Customer'[VP_NAME], __DS0FilterTable, __DS0FilterTable2, __DS0FilterTable3, __DS0FilterTable4, "Vol_Gr_WKND", 'NRT_PRR_Parent'[Vol_Gr_WKND], "Vol_Gr_WE_Mon", 'NRT_PRR_Parent'[Vol_Gr_WE-Mon], "Vol_Gr_WE_Tue", 'NRT_PRR_Parent'[Vol_Gr_WE-Tue], "Vol_Gr_WE_Wed", 'NRT_PRR_Parent'[Vol_Gr_WE-Wed], "Vol_Gr_WE_Thu", 'NRT_PRR_Parent'[Vol_Gr_WE-Thu], "Vol_Gr_WE_Fri", 'NRT_PRR_Parent'[Vol_Gr_WE-Fri], "WTD_Gr_ptc", 'NRT_PRR_Parent'[WTD_Gr_ptc], "IncludedInRank", IGNORE ( 'NRT_PRR_Parent'[IncludedInRank] ) ) ), [IncludedInRank] = 1 ) As a result, these measures are evaluated twice: once in the filter table and twice in the main query (EVALUATE clause). This could...

  • Staying Cool

    October 20, 2019 / No Comments »

    A discussion overheard between two attendees at SQLSaturday yesterday: What is this Tabular thing? Like a cube but better. How's it better? It's in memory. I wonder if it can improve the performance of my report… It should, it's also in the Cloud. Note to myself. Use "in memory" and "cloud" more often.

  • Presenting at SQL Saturday Atlanta (BI Edition)

    October 13, 2019 / No Comments »

    SQL Saturday Atlanta (BI Edition) will be held on October 19th. I'll present a "Power BI Pro, or Premium: that is the question" strategy-oriented session at 12:30. One question that always pops us during my Power BI assessments for companies planning to adopt Power BI is which SKU to buy. The choice might seem obvious to your organization, but there is much more below the surface. Join this session and learn important considerations that might influence your decision, including: •    Licensing cost •    Hosting organizational semantic layers •    External reporting •    Features •    On-premises reporting  

  • Atlanta MS BI and Power BI Group Meeting on October 7th

    October 1, 2019 / No Comments »

    MS BI fans, join us for the next Atlanta MS BI and Power BI Group meeting on October 7, Monday, at 6:30 PM at the Microsoft office in Alpharetta. Qubole will show us how Presto, Azure Data Lake, and Power BI can be used to analyze Big Data. Qubole will sponsor the meeting. For more details, visit our group page and don't forget to RSVP (fill in the RSVP survey if you're planning to attend). Presentation: Leveraging Power BI on Presto for the Azure Data Lake Date: October 7, 2019 Time 6:30 – 8:30 PM ET Place: Microsoft Office (Alpharetta) 8000 Avalon Boulevard Suite 900 Alpharetta, GA 30009 Overview: Presto is a distributed ANSI SQL engine designed for running interactive analytics queries. Presto outshines other data processing engines when used for business intelligence (BI) or data discovery because of its ability to join terabytes of unstructured and structured data in seconds, or cache queries intermittently for...

  • Atlanta MS BI and Power BI Group Meeting on September 10th

    September 3, 2019 / No Comments »

    MS BI fans, join us for the next Atlanta MS BI and Power BI Group meeting on September 10, Tuesday, at 6:30 PM at the Microsoft office in Alpharetta. This is a meeting not to miss. A DAX founder, Jeffrey Wang (Principal Software Engineer Manager at the Power BI product group) is coming all the way from Seattle to share DAX best practices with our group! Captech Consulting will sponsor the event. For more details, visit our group page and don't forget to RSVP (fill in the RSVP survey if you're planning to attend). Presentation: Common DAX Patterns Date: September 10, 2019 Time 6:30 – 8:30 PM ET Place: Microsoft Office (Alpharetta) 8000 Avalon Boulevard Suite 900 Alpharetta, GA 30009 Overview: We will learn common DAX patterns by examining several issues frequently reported by DAX users through PowerBI customer support tickets. Users will be able to: 1.      Learn from mistakes made by other DAX users...

  • Implementing Asymmetric Crosstab in Power BI

    August 24, 2019 / No Comments »

    A recent requirement called for an asymmetric crosstab report in Power BI. Transitioned to Adventure Works, the final report looks like this. The Internet column shows the sales amount from FactInternetSales. Then, the matrix pivots on the BusinessType column in the FactResellerSales. Because, Internet sales don't relate to BusinessType, it doesn't make sense to pivot it. Instead, we want to show Internet sales in a single static column before the crosstab portion starts. Implementing such a report in SSRS is easy thanks to its support of adjacent groups and static columns but not so much in Power BI. The issue is that Matrix would happily pivot both measures and the InternetSalesAmount would be repeated for each business type. Fortunately, with some blackbelt modeling and DAX, we can achieve the desired effect. I attached the pbix file and here are the high-level implementation steps: Add a ReportCategory table (you can use...

  • High Memory Usage and Calculated Columns

    August 18, 2019 / No Comments »

    Scenario: A client reports a memory spike during processing. They have a Tabular semantic model deployed to Azure Analysis Services. They fully process the model daily. The model normally takes less than 50 GB RAM but during processing, it spikes five times and Azure Analysis Services terminates the processing task complaining that it "reached the maximum allowable memory in our pricing tier". Normally, fully processing the model should take about twice the memory but five times? Solution: Upon expecting the model design, I discovered that the client has decided to add (many) calculated columns to the two fact tables in the model. Most of these columns are used to calculated variances to prior year. The formulas contain DATESYTD and other DAX date-related functions. After data is read, Tabular processes calculated columns, relationships and hierarchies. In this case, the spike was due to calculations involving large time ranges and ineffective DAX...

Training

We offer onsite and online Business Intelligence classes! Contact us about in-person training for groups of five or more students.
For more information or to register click here!

Books

Learn Power BI at your own pace with our latest book Applied Microsoft Power BI. Targeting information workers, data analysts, pros, and developers, It is designed as an easy-to-follow guide for learning how to implement BI solutions spanning the entire personal-team-organizational BI spectrum.

Syndication