The DBA Dashboard is the landing page upon logging in to WISdom. This dashboard provides a comprehensive view of database environment health, performance, and cost optimization opportunities. The data displayed uses the prior 7 days by default, but users can select any time period up to 6 months using the date picker. The selected time period will impact all data displayed on the page.
Performance Score displays the health of query execution speed across the environment on a scale of 0 to 100.
Efficiency Score displays the health of query efficiency across the environment on a scale of 0 to 100.
Priority Alerts displays the count of currently open Critical and Warning severity alerts.
Annual Storage Spend displays the projected annual cost for storage across the environment.
Annual Compute Spend displays the projected annual cost for compute resources across the environment.
Resource Health and Capacity provides an aggregated view of resource pressure and capacity planning recommendations across the environment.
Cost of Code identifies optimization opportunities in the top CPU-consuming queries.
Top Database Costs displays the databases with the highest storage and compute costs.
Enterprise Contention displays the wait categories with the highest accumulated wait times and associated costs.
All of this information is filterable by Environment, Tiers of Service, and/or Instance using the Filters drop-down at the top of the screen.
Performance Score
The Performance score is based on how quickly queries are running on the SQL server(s). The score is calculated based on the average run times of the queries, with the benchmark for the scoring algorithm as 10ms (the lower the score, the more queries that average greater than 10ms). The card is a clickable hyperlink that directs you to the Query Statistics section, which displays data collected from the procedure and query stats DMVs (sys.dm_exec_query_stats and sys.dm_exec_procedure_stats).
Optimizing the code executed on the server(s) will decrease run times of queries and increase the Performance score. Optimizations can include, but are not limited to, updating statistics, tuning indexes, or rewriting queries and/or stored procedures.
Efficiency Score
The Efficiency score is based on the number of data pages evaluated compared to the amount of data returned by the queries. The lower the efficiency score, the higher the number of pages of data processed by the query vs the number of records return. The card is a hyperlink that will take you to the Query Statistics section, which displays the data collected from the procedure and query stats DMVs (sys.dm_exec_query_stats and sys.dm_exec_procedure_stats).
Tuning the queries executed on the server(s) can decrease the amount of data a query will need to evaluate to return the requested records, thereby increasing the Efficiency score. Tuning can include, but is not limited to, updating statistics, tuning indexes, rewriting queries or stored procedures, and/or changing the predicate of a query.
Priority Alerts
The Priority Alerts cards display information about currently open Critical and Warning alerts in two locations on the DBA Dashboard.
Alert Count Card (Top of Dashboard)
The top section of the dashboard displays a card showing the total count of currently open alerts with Critical or Warning severity. This number represents active issues requiring immediate attention across the filtered environment.
When alerts are present: The card displays the count of open priority alerts with the label "Critical and Warning Alerts" beneath it. Clicking anywhere on this card will jump you down to the Priority Alerts section in the middle of the page.
When no alerts are present: The card displays "0" with the message "No active priority alerts" and "Your database environment is running smoothly with no active alerts."
Priority Alerts Details (Middle of Dashboard)
The Priority Alerts section in the middle of the dashboard displays a table with detailed information for each currently open Critical or Warning alert, including:
- Instance: The SQL Server instance where the alert was triggered
- Alert Name: The name of the alert that was triggered
- Severity: The severity level (Critical or Warning)
- Object: The specific database object or resource that triggered the alert
- Tags: Any tags assigned to the instance for organizational purposes
Viewing Alert History
Click the View Alert History link to navigate to the Health - Alerts page. This page provides a comprehensive view of all alerts, allowing you to filter by the date each alert was first opened (created date). You can view both open and closed alerts across all severity levels, not just Critical and Warning alerts.
Annual Storage Spend
Displays the projected annual cost for storage across all databases in the filtered environment. The dollar amount uses K for thousands (e.g., $209.8K) and M for millions, with "Annual Spend" labeled beneath.
Cost Calculation: Storage spend is based on the allocated storage capacity for each database. WISdom uses an average of Azure and AWS retail pricing to calculate costs. If you have assigned custom costs per host in the Cost Management section, those custom values will be used instead of the retail pricing.
This cost calculation applies to both cloud and on-premises instances, providing a consistent cost view across your entire environment.
Annual Compute Spend
Displays the projected annual cost for compute resources across all instances in the filtered environment. The dollar amount uses K for thousands (e.g., $290.4K) and M for millions, with "Annual Spend" labeled beneath.
Cost Calculation: Compute spend is based on the CPU and memory resources allocated to each instance. WISdom uses an average of Azure and AWS retail pricing to calculate costs. If you have assigned custom costs per host in the Cost Management section, those custom values will be used instead of the retail pricing.
This cost calculation applies to both cloud and on-premises instances, providing a consistent cost view across your entire environment.
Resource Health and Capacity
This card provides an aggregated view of resource health across the filtered environment, displaying both the current system status and individual resource scores. The card is divided into two sections: System Status and Resource Scores.
System Status
The system status banner displays the current overall resource pressure level across all filtered systems. The status is determined by evaluating CPU, Memory, and Storage health scores in aggregate.
Status levels include:
- No Pressure: Resources are operating optimally with no significant pressure
- Minor Pressure: Resources are experiencing some pressure but remain within acceptable ranges
- Significant Pressure: Resources are experiencing notable pressure that may impact performance
A warning icon (triangle with an exclamation mark) appears in the right corner when pressure is detected. The status is displayed with a yellow or red "SYSTEM STATUS" label above the pressure level description. When no system pressure is detected, the label is green with a green checkmark in the upper right corner.
A warning icon (triangle with an exclamation mark) appears when pressure is detected. The status is displayed with a yellow or red "SYSTEM STATUS" label above the pressure level description.
Resource Scores
Below the system status, four individual resource scores are displayed, each on a scale of 0 to 100 with color-coded indicators:
- Health Score: An overall health metric considering all resource types from both the host and instance. Color coding indicates pressure levels (yellow for minor pressure, red for significant pressure, green for no pressure).
- CPU Score: Measures CPU utilization and pressure across the filtered environment. Color coding indicates pressure levels (yellow for minor pressure).
- Memory Score: Measures memory utilization and pressure across the filtered environment. Color coding indicates pressure levels (red for significant pressure).
- Storage Score: Measures storage utilization and pressure across the filtered environment. Color coding indicates no pressure (green).
Capacity Planning
Click the CAPACITY PLANNING expander at the bottom of the card to view detailed recommendations for CPU and Memory optimization for the filtered selections. This expandable section displays:
- CPU optimization recommendations and potential savings
- Memory optimization recommendations and potential savings
- Total saving potential amount across all resources
The capacity planning recommendations help identify opportunities for right-sizing resources to improve efficiency and reduce costs.
Cost of Code
This card identifies optimization opportunities within the top CPU-consuming queries. The card displays an OPTIMIZATION OPPORTUNITY label with a brief description of the resource consumption by the top 10 statements across the filtered selections.
Optimization Summary
The main display shows: "Top 10 statements are consuming [CPU%] of your CPU and [IO%] of your IO resources."
The percentages represent the portion of total resources consumed by the top 10 CPU-consuming statements based on the filtered selections. This metric is not configurable and always evaluates the top 10 statements.
Resource Consumption Breakdown
Four key percentages are displayed below the optimization summary:
- Execution %: The percentage of total executions represented by the top 10 statements
- CPU %: The percentage of total CPU resources consumed by the top 10 statements
- IO %: The percentage of total IO resources consumed by the top 10 statements
- Duration %: The percentage of total execution duration represented by the top 10 statements
Color-coded bars beneath each percentage provide visual indicators of resource consumption levels. Red bars indicate areas where optimization efforts would have the greatest impact, yellow bars indicate areas of medium impact, and blue bars indicate areas of low impact.
Additional Details
Click the ADDITIONAL DETAILS expander at the bottom of the card to view:
- Number of target queries (always 10)
- Average efficiency score for the 10 target queries
- Annual Spend for the 10 target queries based on their resource consumption
This information helps prioritize optimization efforts by quantifying both the performance impact and the cost associated with inefficient queries.
Top Database Costs
This table displays the databases with the highest combined storage and compute costs across the filtered environment. The table is sorted by total cost (storage + compute) in descending order.
Table Columns
- Database Name: The name of the database. Click the database name to set the explicit inclusion filter, exclusion filter, or copy database name.
- Count: The number of copies of this database that exist across the filtered environment. A count greater than 1 indicates the database exists on multiple instances.
- Total Size: The total allocated storage size for all copies of the database, usually displayed in terabytes (TB) or gigabytes (GB).
- Annual Storage Spend: The projected annual cost for storage for all copies of this database. Calculated based on retail cloud pricing (average of Azure and AWS) for the allocated storage capacity, or custom costs if defined in Cost Management.
- Annual Compute Spend: The projected annual cost for compute resources consumed by this database. Calculated based on the CPU cycles, memory, and SQL licensing costs consumed by the database as measured through query collections, using retail cloud pricing or custom costs.
Table Features
- Sorting: Click any column header to sort the data in ascending or descending order
- Search: Use the search icon (magnifying glass) to filter results by database name
- Pagination: Use the "Rows per page" dropdown (bottom left) to adjust the number of rows displayed. Navigate between pages using the arrows and page numbers (bottom right)
- Actions: Click the three-dot icon at the end of each row to View Details, which will open the Infrastructure - Database page and will filter for that database.
The three-dot icon in the top right corner of the card provides options to export the data or display the table in full-screen mode.
Enterprise Contention
This table displays the wait categories with the highest accumulated wait times and their associated annual costs across the filtered environment. The table is sorted by annual wait spend in descending order, helping you identify the most expensive performance bottlenecks.
Table Columns
-
Category Name: The type of wait category that groups related wait types to identify systemic bottlenecks. Examples include Backup, Blocking, CPU, Disk, External Scripts, Memory, Network, Parallelism, and Service Broker.
-
Wait Time: The total accumulated wait time for this category during the selected time period. Wait times are displayed with abbreviated time units:
- d = days
- h = hours
- m = minutes
- s = seconds
- ms = milliseconds
-
Annual Wait Spend: The calculated annual cost of the accumulated wait time for this category. By default, WISdom values wait time at $150 per hour, but this rate can be customized in Admin Console > Cost Management. This cost calculation helps quantify the business impact of performance bottlenecks in financial terms.
Understanding Wait Categories
Wait categories identify where the database engine is spending time waiting for resources:
- Backup: Wait times related to backup and restore operations
- Blocking: Wait times caused by queries waiting for locks held by other queries
- CPU: Wait times when queries are waiting for available CPU resources due to CPU pressure
- Disk: Wait times related to physical disk I/O operations for reading and writing data
- External Scripts: Wait times related to executing external scripts (e.g., R or Python in SQL Server Machine Learning Services)
- Memory: Wait times related to memory pressure and buffer pool operations
- Network: Wait times related to network I/O and communication delays
- Parallelism: Wait times related to parallel query execution and coordination between multiple threads
- Service Broker: Wait times related to SQL Server Service Broker messaging operations
Table Features
- Sorting: Click any column header to sort the data in ascending or descending order
- Search: Use the search icon (magnifying glass) to filter results by category name
- Pagination: Use the "Rows per page" dropdown (bottom left) to adjust the number of rows displayed. Navigate between pages using the arrows and page numbers (bottom right)
- Drill-Through: Click the three-dot icon at the end of each row and select View Details to open the Performance - Activity screen filtered to that specific wait category
The three-dot icon in the top right corner of the card provides options to export the data or display the table in full-screen mode.
High wait times and associated costs indicate areas where performance optimization could yield significant improvements in both user experience and operational efficiency.