• What is Microsoft IQ?

    Featured image for Purple Frog blog post 'What is Microsoft IQ?' showing a man in purple and black branded clothing with arms crossed, smiling at the camera against a purple background with hexagonal pattern designs and a faded mobile device illustration.

    Enterprise AI is only as good as the context behind it. Microsoft IQ is the intelligence layer designed to give AI agents, and the people who rely on them, the business context they need to deliver genuinely useful, trustworthy answers and actions. Built across the Microsoft cloud stack, Microsoft IQ draws from three complementary sources: productivity signals, institutional knowledge, and live business data. Together, they form a shared,…

    » Read more
  • Stepping Down from the SQLBits Committee

    Stepping Down from the SQLBits Committee

    I first attended SQLBits back in 2008 (the third event, SQLBits Cubed in Hatfield) and I was instantly hooked. It wasn’t just the incredible knowledge being shared or the amazing list of speakers. At the time I was an employee with zero training budget, so the free Saturday was a lifeline that played a huge role in boosting my knowledge and career. In 2011, with a lot of encouragement (and a little bullying!) from my wonderfully supportive…

    » Read more
  • What is Microsoft Fabric? (Power BI + Synapse + DW + DataLake + ML)

    What Is Microsoft Fabric

    At today’s Build conference, Microsoft announced Fabric. What is this? In simple terms, think of taking Synapse Analytics, Data Warehousing, Data Lakes, Data Factory, Spark Notebooks and Machine Learning, and bring them all together into Power BI. This is underpinned by Microsoft OneLake, a high performance scalable data lake storage layer, supporting all of the above. OneLake is, as the name implies, one data lake that can be used across…

    » Read more
  • Change the Compatibility Level of a Power BI report

    A number of new features in Power BI are limited to newer Power BI datasets, which Microsoft track through the use of Compatibility Levels. 1500+ for SQL Server 2019 compatibility 1400+ for SQL Server 2017 compatibility 1200+ for SQL Server 2016 compatibility If you want to, for example, connect to the xmla endpoint of the dataset from SQL Server Management Studio, then you need level 1500 or greater. If it’s lower you’ll get the…

    » Read more
  • Speaking at Data Platform Summit

    I’m delighted to have been selected to speak at the Data Platform Summit (DPS), a virtual conference from 2nd to 4th December 2020, with Data, Analytics and Machine Learning content around the clock for a global audience. I’ll be presenting a session on “Machine Learning in Power BI”, exploring various methods of accessing Machine Learning functionality within the Power BI world, including text analytics, prediction…

    » Read more
  • Regular Expression to get tables from SQL query

    If you’ve not come across regular expressions (RegEx) before then you’re missing out, they’re an incredibly powerful tool for matching, extracting or validating patterns of text. I had a use case this week where I needed to take a SQL query, and quickly identify every table or view that was used in the query. RegEx to the rescue! (?<=((FROM[ \n\r]+)|(JOIN[ \n\r]+)|(APPLY[…

    » Read more
  • Power BI Databricks Spark connection error

    When querying data from Azure Databricks (spark) into Power BI you may encounter an error: “ODBC:ERROR [HY000] [Microsoft][Hardy] (100) The host and port specified for the connection do not seem to belong to a Spark server. Please check your configuration.“ This is usually caused by trying to connect to a ‘Standard’ Databricks instance, but Power BI (and ODBC in general) can only connect to Databricks using a…

    » Read more
  • Capturing Insert and Update Counts from Merge

    This post shows hows how you can capture and store the number of records inserted, updated or deleted from a T-SQL Merge statement. This is in response to a question on an earlier post about using Merge to load SCDs in a Data Warehouse. You can achieve this by using the OUTPUT clause of a merge statement, including the $Action column that OUTPUT returns. The basic syntax is: INSERT INTO XXXX SELECT [Action] FROM ( MERGE XXXX AS Target USING XXXX…

    » Read more
  • Power BI Sentinel

    We all know and love Power BI, because of it’s power and ease of use, there’s a good reason why it’s number 1 in the Gartner Quadrant. But how to we avoid ‘Power BI Hell’, the new version of our old nemesis ‘Excel Hell’? How do we keep track of which data sources are being used by which datasets and reports? How to we perform an impact assessment of updating/changing a dataset? What happens if someone…

    » Read more
  • SSAS Tabular Deployment Wizard fails Newtonsoft.Json error

    The Scenario Deploying an Analysis Services Tabular model to SSAS Azure using the Analysis Services Deployment Wizard. Both Visual Studio 2017 & SQL Server 2017 installed on the client. Try and click on the ellipses to change the data source connection string or impersonation information results in a Newtonsoft.json error: “Could not load file or assembly ‘Newtonsoft.Json, Version 6.0.0.0, Culture=neutral, ……”…

    » Read more