How can we help you today? How can we help you today?

max cpu over all Azure databases in Monitor

We want to find out which of our Azure databases are underutilised.
I'd like to run a query that would tell me the max cpu that Monitor has recorded over the last x days for every database we monitor.
Is there a function or table that I can query to get this information ?

David Postlethwaite
0

Comments

2 comments

  • Sean Quigley
    Official comment

    Hello David,

    Thanks for your inquiry.

    The following would be the relevant tables in the data repository for your use case.

    Main Data Tables
    The CPU data for Azure SQL Databases is stored in these tables:

    [data].[AzureSqlServer_Database_Resources_UnstableSamples] - Contains the CPU percentage samples:

    _PercentCpu (float) - The CPU utilization percentage
    CollectionDate (bigint) - The timestamp (stored as ticks)
    Id (bigint) - Links to the database entity
     

    [data].[AzureSqlServer_Database_Keys] - Contains the database name and linkage

    [data].[AzureSqlServer_Keys] - Contains the Azure SQL Server name

    Useful View
    There's a convenient view that joins these together:

    [data].[AzureSqlServer_Database_Resources_UnstableSamples_View] - Provides a denormalized view with server name, database name, and CPU metrics

    Please let me know if you have any other questions or concerns on this.

    Sean Quigley
  • Gene Baker

    Thanks for the detailed breakdown and table references. The view you mentioned looks especially helpful for simplifying access to CPU metrics across servers and databases. This will be very useful for our analysis - appreciate the clear guidance! @ wacky flip

    Gene Baker
    0

Add comment

Please sign in to leave a comment.