Monitoring Azure SQL Data Warehouse from SSMS

For those of us who lived through the Microsoft lifecycle of bringing to market a scale-out MPP data warehouse offering from DatAllegro to Parallel Data Warehouse (PDW) to Analytics Platform System, the technology behind that offering has evolved tremendously and were all happy to see it elevated to new heights in the cloud as Azure Data Warehouse.

But it’s important to understand the lineage from the perspective of same of the namings of the DMVs that you’ll use in SSMS. And, yes, those of us who had to evolve from the early PDW v1 days using Nexus because SSMS didn’t work with PDW are very excited with new T-SQL compatibility and SSMS compatibility.

Just make sure that when you are using SSMS to monitor your Azure Data Warehouse that you recognize that many of the DMVs from SQL Server land do not work in PDW or ADW and that many of the names of similar DMVS will have PDW in their names. But these will work with ADW.

For example, here is the documentation on monitoring your ADW workloads and grabbing SQL command syntax, similar to using DM EXEC REQUEST in SQL Server, but with PDW DMVs: https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-manage-monitor.

-- Find queries 
-- Replace request_id with value from Step 1.

SELECT waits.session_id,
      waits.request_id,  
      requests.command,
      requests.status,
      requests.start_time,  
      waits.type,
      waits.state,
      waits.object_type,
      waits.object_name
FROM   sys.dm_pdw_waits waits
   JOIN  sys.dm_pdw_exec_requests requests
   ON waits.request_id=requests.request_id
WHERE waits.request_id = 'QID####'
ORDER BY waits.object_name, waits.object_type, waits.state;

So now you know why you have to look for PDW for ADW DMVs!

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s