

 Amazon Redshift will no longer support the creation of new Python UDFs starting Patch 198. Existing Python UDFs will continue to function until June 30, 2026. For more information, see the [ blog post ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Viewing performance data
<a name="performance-metrics-console"></a>

In this section, you can find how to view performance data in the Amazon Redshift console, which includes information about cluster and query performance. Additionally, you can create alarms on cluster metrics directly from the Amazon Redshift console.

When you view performance data in the Amazon Redshift console, you view it by cluster. The performance data graphs for a cluster are designed to give you access to data to answer your most common performance questions. For some performance data (see [Performance data in Amazon Redshift](metrics-listing.md)), you can also use CloudWatch to further customize your metrics graphs. For example, you can choose longer times or combine metrics across clusters. For more information about working with the CloudWatch console, see [Performance metrics in the CloudWatch console](using-cloudwatch-console.md). 

To learn how to monitor, isolate, and optimize your queries using the query monitoring features on the Amazon Redshift console, watch the following video. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Wdvb5iYVnLg/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Wdvb5iYVnLg)


**Topics**
+ [

# Viewing cluster performance data
](performance-metrics-perf.md)
+ [

# Viewing query history data
](performance-metrics-query-history.md)
+ [

# Viewing database performance data
](performance-metrics-database-performance.md)
+ [

# Viewing workload concurrency and concurrency scaling data
](performance-metrics-concurrency-scaling.md)
+ [

# Viewing automatic optimization data
](performance-metrics-autonomics.md)
+ [

# Viewing queries and loads
](performance-metrics-queries.md)
+ [

# Viewing and analyzing query details
](performance-metrics-query-execution-details.md)
+ [

# Viewing cluster performance as queries run
](performance-metrics-query-cluster.md)
+ [

# Viewing cluster metrics during load operations
](performance-metrics-loads.md)
+ [

# Viewing the cluster workload breakdown chart
](analyze-workload-performance.md)

# Viewing cluster performance data
<a name="performance-metrics-perf"></a>

By using cluster metrics in Amazon Redshift, you can do the following common performance tasks:
+ Determine if cluster metrics are abnormal over a specified time range and, if so, identify the queries responsible for the performance hit.
+ Check if historical or current queries are impacting cluster performance. If you identify a problematic query, you can view details about it including the cluster performance during the query's execution. You can use this information in diagnosing why the query was slow and what can be done to improve its performance.

**To view performance data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the name of a cluster from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Cluster performance** tab for performance information including the following:
   + **CPU utilization**
   + **Percentage disk space used**
   + **Database connections**
   + **Health status**
   + **Query duration**
   + **Query throughput**
   + **Concurrency scaling activity**

   Many more metrics are available. To see the available metrics and choose which are displayed, choose the **Preferences** icon.

## Cluster performance graphs
<a name="cluster-performance-metrics-examples"></a>

The following examples show some of the graphs that are displayed in the new Amazon Redshift console. 
+ **CPU utilization** – Shows the percentage of CPU utilization for all nodes (leader and compute). To find a time when the cluster usage is lowest before scheduling cluster migration or other resource-consuming operations, monitor this chart to see CPU utilization per individual or all of nodes.   
![\[An image of the CPU utilization graph in the Amazon Redshift console that shows the percentage of CPU utilization for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-cpu-utilization.png)
+ **Maintenance mode** – Shows whether the cluster is in the maintenance mode at a chosen time by using `On` and `Off` indicators. You can see the time when the cluster is undergoing maintenance. You can then correlate this time to operations that are done to the cluster to estimate its future downtimes for recurring events.   
![\[An image of the graph in the Amazon Redshift console that shows whether maintenance mode is On or Off.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-maintenance-mode.png)
+ **Percentage disk space used** – Shows the percentage of disk space usage per each compute node, and not for the cluster as a whole. You can explore this chart to monitor the disk utilization. Maintenance operations like VACUUM and COPY use intermediate temporary storage space for their sort operations, so a spike in disk usage is expected.   
![\[An image of the graph in the Amazon Redshift console that shows the percentage of disk space used for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-percentage-disk-space-used.png)
+ **Read throughput** – Shows the average number of megabytes read from disk per second. You can evaluate this chart to monitor the corresponding physical aspect of the cluster. This throughput doesn't include network traffic between instances in the cluster and its volume.   
![\[An image of the graph in the Amazon Redshift console that shows the read throughput for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-read-throughput.png)
+ **Read latency** – Shows the average amount of time taken for disk read I/O operations per millisecond. You can view the response times for the data to return. When latency is high, it means that the sender spends more time idle (not sending any new packets), which reduces how fast throughput grows.   
![\[An image of the graph in the Amazon Redshift console that shows the read latency for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-read-latency.png)
+ **Write throughput** – Shows the average number of megabytes written to disk per second. You can evaluate this metric to monitor the corresponding physical aspect of the cluster. This throughput doesn't include network traffic between instances in the cluster and its volume.   
![\[An image of the graph in the Amazon Redshift console that shows the write throughput for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-write-throughput.png)
+ **Write latency** – Shows the average amount of time in milliseconds taken for disk write I/O operations. You can evaluate the time for the write acknowledgment to return. When latency is high, it means that the sender spends more time idle (not sending any new packets), which reduces how fast throughput grows.   
![\[An image of the graph in the Amazon Redshift console that shows the write latency for each node.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-write-latency.png)
+ **Database connections** – Shows the number of database connections to a cluster. You can use this chart to see how many connections are established to the database and find a time when the cluster usage is lowest.   
![\[Graph in the Amazon Redshift console that shows the number of database connections to a cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-database-connections.png)
+ **Total table count** – Shows the number of user tables open at a particular point in time within a cluster. You can monitor the cluster performance when open table count is high.   
![\[An image of the graph in the Amazon Redshift console that shows the total table count for a cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-total-table-count.png)
+ **Health status** – Indicates the health of the cluster as `Healthy` or `Unhealthy`. If the cluster can connect to its database and performs a simple query successfully, the cluster is considered healthy. Otherwise, the cluster is unhealthy. An unhealthy status can occur when the cluster database is under extremely heavy load or if there is a configuration problem with a database on the cluster.   
![\[An image of the graph in the Amazon Redshift console that shows the health status for a cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-health-status.png)
+ **Query duration** – Shows the average amount of time to complete a query in microseconds. You can benchmark the data on this chart to measure I/O performance within the cluster and tune its most time-consuming queries if necessary.   
![\[An image of the graph in the Amazon Redshift console that shows the query duration for a cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-query-duration.png)
+ **Query throughput** – Shows the average number of completed queries per second. You can analyze data on this chart to measure database performance and characterize the ability of the system to support a multiuser workload in a balanced way.   
![\[An image of the graph in the Amazon Redshift console that shows the query throughput for a cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-query-throughput.png)
+ **Query duration per WLM queue** – Shows the average amount of time to complete a query in microseconds. You can benchmark the data on this chart to measure I/O performance per WLM queue and tune its most time-consuming queries if necessary.  
![\[An image of the graph in the Amazon Redshift console that shows the query duration per WLM queue.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-query-duration-per-wlm-queue.png)
+ **Query throughput per WLM queue** – Shows the average number of completed queries per second. You can analyze data on this chart to measure database performance per WLM queue.   
![\[An image of the graph in the Amazon Redshift console that shows the query throughput per WLM queue.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-query-throughput-per-wlm-queue.png)
+ **Concurrency scaling activity** – Shows the number of active concurrency scaling clusters. When concurrency scaling is enabled, Amazon Redshift automatically adds additional cluster capacity when you need it to process an increase in concurrent read queries.   
![\[An image of the graph in the Amazon Redshift console that shows the number of active concurrency scaling clusters.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/cluster-performance-concurrency-scaling-activity.png)

# Viewing query history data
<a name="performance-metrics-query-history"></a>

You can use query history metrics in Amazon Redshift to do the following:
+ Isolate and diagnose query performance problems. 
+ Compare query runtime metrics and cluster performance metrics on the same timeline to see how the two might be related. Doing so helps identify poorly performing queries, look for bottleneck queries, and determine if you need to resize your cluster for your workload.
+ Drill down to the details of a specific query by choosing it in the timeline. When **Query ID** and other properties are displayed in a row below the graph, then you can choose the query to see query details. Details include, for example, the query's SQL statement, execution details, and query plan. For more information, see [Viewing and analyzing query details](performance-metrics-query-execution-details.md).
+ Determine if your load jobs complete successfully and meet your service level agreements (SLAs). 

**To display query history data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for metrics about your queries. 

1. In the **Query monitoring** section, choose the **Query history** tab. 

   Using controls on the window, you can toggle between **Query list** and **Cluster metrics**. 

   When you choose **Query list**, the tab includes the following graphs: 
   + **Query runtime** – The query activity on a timeline. Use this graph to see which queries are running in the same timeframe. Choose a query to view more query execution details. The x-axis shows the selected period. You can filter the graphed queries by running, completed, loads, and so on. Each bar represents a query, and the length of the bar represents its runtime from the start of the bar to the end. The queries can include SQL data manipulation statements (such as SELECT, INSERT, DELETE) and loads (such as COPY). By default, the top 100 longest running queries are shown for the selected time period. 
   + **Queries and loads** – List of queries and loads that ran on the cluster. The window includes an option to **Terminate query** if a query is currently running. 

   When you choose **Cluster metrics**, the tab includes the following graphs: 
   + **Query runtime** – The query activity on a timeline. Use this graph to see which queries are running in the same timeframe. Choose a query to view more query execution details. 
   + **CPU utilization** – The CPU utilization of the cluster by leader node and average of compute nodes. 
   + **Storage capacity used** – The percent of the storage capacity used. 
   + **Active database connections** – The number of active database connections to the cluster. 

Consider the following when working with the query history graphs:
+ Choose a bar that represents a specific query on the **Query runtime** chart to see details about that query. You can also, choose a query ID on **Queries and loads** list to see its details. 
+ You can swipe to select a section of the **Query runtime** chart to zoom in to display a specific time period. 
+ On the **Query runtime** chart, to have all data considered by your chosen filter, page forward through all pages listed on the **Queries and loads** list. 
+ You can change which columns and the number of rows displayed on the **Queries and loads** list using the preferences window displayed by the **settings gear icon**. 
+ The **Queries and loads** list can also be displayed by navigating from the left navigator **Queries** icon, **Queries and loads**. For more information, see [Viewing queries and loads](performance-metrics-queries.md). 

## Query history graphs
<a name="performance-metrics-query-history-examples"></a>

The following examples show graphs that are displayed in the new Amazon Redshift console. 

**Note**  
The Amazon Redshift console graphs only contain data for the latest 100,000 queries. 
+ **Query runtime**   
![\[Graph showing the query activity on a timeline to illustrate which queries are running in the same timeframe.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/query-history-query-runtime.png)
+ **Queries and loads**   
![\[Table showing a list of queries and loads, with attributes such as start time, duration, status, and query ID as the columns.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/query-history-queries-and-loads.png)
+ **CPU utilization**   
![\[Line graph showing the CPU utilization in increments of 15 minutes.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/query-history-cpu-utilization.png)
+ **Storage capacity used**   
![\[Line graph showing the percentage of storage capacity used in increments of 15 minutes.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/query-history-storage-capacity-used.png)
+ **Active database connections**   
![\[Line graph showing the number of active database connections in increments of 15 minutes.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/query-history-active-database-connections.png)

# Viewing database performance data
<a name="performance-metrics-database-performance"></a>

You can use database performance metrics in Amazon Redshift to do the following:
+ Analyze the time spent by queries by processing stages. You can look for unusual trends in the amount of time spent in a stage. 
+ Analyze the number of queries, duration, and throughput of queries by duration ranges (short, medium, long). 
+ Look for trends in the about of query wait time by query priority (Lowest, Low, Normal, High, Highest, Critical). 
+ Look for trends in the query duration, throughput, or wait time by WLM queue. 

**To display database performance data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, including **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for metrics about your queries.

1. In the **Query monitoring** section, choose **Database performance** tab. 

   Using controls on the window, you can toggle between **Cluster metrics** and **WLM queue metrics**. 

   When you choose **Cluster metrics**, the tab includes the following graphs: 
   + **Workload execution breakdown** – The time used in query processing stages. 
   + **Queries by duration range** – The number of short, medium, and long queries. 
   + **Query throughput** – The average number of queries completed per second. 
   + **Query duration** – The average amount of time to complete a query. 
   + **Average queue wait time by priority** – The total time queries spent waiting in the WLM queue by query priority. 

   When you choose **WLM queue metrics**, the tab includes the following graphs: 
   + **Query duration by queue** – The average query duration by WLM queue. 
   + **Query throughput by queue** – The average number of queries completed per second by WLM queue. 
   + **Query wait time by queue** – The average duration of queries spent waiting by WLM queue. 

## Database performance graphs
<a name="performance-metrics-database-performance-examples"></a>

The following examples show graphs that are displayed in the new Amazon Redshift console. 
+ **Workload execution breakdown**   
![\[Vertical bar graph showing duration of query processing stages in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-workload-execution-breakdown.png)
+ **Queries by duration range**   
![\[Vertical bar graph showing number of queries in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-queries-by-duration.png)
+ **Query throughput**   
![\[Line graph showing the average query throughput in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-query-throughput.png)
+ **Query duration**   
![\[Line graph showing the average query duration in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-query-duration.png)
+ **Average queue wait time by priority**   
![\[Line graph showing the average queue wait time in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-queue-wait-by-priority.png)
+ **Query duration by queue**   
![\[Line graph showing the average query duration by queue in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-query-duration-by-queue.png)
+ **Query throughput by queue**   
![\[Line graph showing the average query throughput by queue in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-query-throughput-by-queue.png)
+ **Query wait time by queue**   
![\[Line graph showing the average query wait time by queue in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-queue-wait-by-queue.png)

# Viewing workload concurrency and concurrency scaling data
<a name="performance-metrics-concurrency-scaling"></a>

By using concurrency scaling metrics in Amazon Redshift, you can do the following:
+ Analyze whether you can reduce the number of queued queries by enabling concurrency scaling. You can compare by WLM queue or for all WLM queues. 
+ View concurrency scaling activity in concurrency scaling clusters. This can tell you if concurrency scaling is limited by the `max_concurrency_scaling_clusters`. If so, you can choose to increase the `max_concurrency_scaling_clusters` in the DB parameter.
+ View the total usage of concurrency scaling summed across all concurrency scaling clusters.

**To display concurrency scaling data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for metrics about your queries.

1. In the **Query monitoring** section, choose **Workload concurrency** tab. 

   The tab includes the following graphs: 
   + **Queued vs. Running queries on the cluster** – The number of queries running (from the main cluster and concurrency scaling cluster) compared to the number of queries waiting in all WLM queues in the cluster. 
   + **Queued vs. Running queries per queue** – The number of queries running (from the main cluster and concurrency scaling cluster) compared to the number or queries waiting in each WLM queue. 
   + **Concurrency scaling activity** – The number of concurrency scaling clusters that are actively processing queries. 
   + **Concurrency scaling usage** – The usage of concurrency scaling clusters that have active query processing activity. 

## Workload concurrency graphs
<a name="performance-metrics-concurrency-scaling-examples"></a>

The following examples show graphs that are displayed in the new Amazon Redshift console. To create similar graphs in Amazon CloudWatch, you can use the concurrency scaling and WLM CloudWatch metrics. For more information about CloudWatch metrics for Amazon Redshift, see [Performance data in Amazon Redshift](metrics-listing.md).
+ **Queued vs. Running queries on the cluster**   
![\[Vertical bar graph in increments of days, with each bar divided into two different colors, one showing the average queued queries on a cluster, and the other showing the average running queries on the same cluster.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/workload-concurrency-queued-vs-running-cluster.png)
+ **Queued vs. Running queries per queue**   
![\[Vertical bar graph in increments of days showing the number of queries running compared to the number of queries waiting in each queue.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/workload-concurrency-queued-vs-running-per-queue.png)
+ **Concurrency scaling activity**   
![\[Horizontal dot graph in increments of days showing the number of concurrency scaling clusters that are actively processing queries.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/workload-concurrency-concurrency-scaling-activity.png)
+ **Concurrency scaling usage**   
![\[Horizontal line graph in increments of days showing the usage of concurrency scaling clusters that have active query processing activity.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/workload-concurrency-concurrency-scaling-usage.png)

# Viewing automatic optimization data
<a name="performance-metrics-autonomics"></a>

The Amazon Redshift console provides information about automatic optimizations, or autonomics, run using extra compute resources. You can use this information to track usage and monitor whether usage limits have been reached. Though Amazon Redshift doesn't bill you for autonomics run on the provisioned cluster itself, it does bill you for autonomics run using extra compute resources. For more information, see [ Allocating extra compute resources for automatic database optimizations](https://docs.aws.amazon.com/redshift/latest/dg/t_extra-compute-autonomics.html) in the *Amazon Redshift Database Developer Guide*.

**To view extra compute autonomics data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the name of a cluster from the list to open its details.

1. From the cluster's details page, select **Manage usage limit** from the **Actions** drop-down menu. You can also select the **Maintenance** tab for a cluster, then scroll down and select **Create usage limits**.

1. The graph showing extra compute autonomics data appears under the section titled **Usage limit for extra compute for automatic optimization**. The graph displays the amount of time that Amazon Redshift runs autonomics using extra compute resources in a given time period.

# Viewing queries and loads
<a name="performance-metrics-queries"></a>

 The Amazon Redshift console provides information about queries and loads that run in the database. You can use this information to identify and troubleshoot queries that take a long time to process and that create bottlenecks preventing other queries from processing efficiently. You can use the queries information in the Amazon Redshift console to monitor query processing. 

**To display query performance data**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Queries and loads** to display the list of queries for your account. 

   By default, the list displays queries for all your clusters over the past 24 hours. You can change the scope of the displayed date in the console. 
**Important**  
The **Queries and loads** list displays the longest running queries in the system, up to 100 queries.

# Viewing and analyzing query details
<a name="performance-metrics-query-execution-details"></a>

 With a query identifier, you can view details of a query. Details can include, for example, the query's completion status, duration, SQL statement and whether it's a user query or one that was rewritten by Amazon Redshift. A *user query* is a query that is submitted to Amazon Redshift, either from an SQL client or generated by a business intelligence tool. Amazon Redshift might rewrite the query to optimize it, and this can result in multiple rewritten queries. Although the process is done by Amazon Redshift, you see the rewritten queries on the query details page along with the user query. 

**To view a query**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Queries and loads** to display the list of queries for your account. You might need to change settings on this page to find your query. 

1. Choose the **Query** identifier in the list to display **Query details**. 

   The **Query details** page includes **Query details** and **Query plan** tabs with metrics about the query. 

   Metrics include details about a query such as start time, query ID, status, and duration. Other details include whether a query ran on a main cluster or a concurrency scaling cluster, and if it's a parent or rewritten query.

# Viewing cluster performance as queries run
<a name="performance-metrics-query-cluster"></a>

You can monitor the performance of your clusters as queries run to identify potential bottlenecks and optimize query execution. Viewing cluster performance as queries run provides a real-time view of the system-level metrics, such as CPU utilization, disk I/O, and network traffic, as well as query-level details like execution time, data processed, and query steps. The following procedures guides you through accessing and interpreting the performance metrics to effectively manage and optimize your provisioned clusters.

**To display cluster performance as queries run**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for more details. 

   For more information, see [Viewing query history data](performance-metrics-query-history.md). 

# Viewing cluster metrics during load operations
<a name="performance-metrics-loads"></a>

When you view cluster performance during load operations, you can identify queries that are consuming resources and act to mitigate their effect. You can terminate a load if you don't want it to run to completion. 

**Note**  
The ability to terminate queries and loads in the Amazon Redshift console requires specific permission. If you want users to be able to terminate queries and loads, make sure to add the `redshift:CancelQuerySession` action to your AWS Identity and Access Management (IAM) policy. This requirement applies whether you select the **Amazon Redshift Read Only** AWS-managed policy or create a custom policy in IAM. Users who have the **Amazon Redshift Full Access** policy already have the necessary permission to terminate queries and loads. For more information about actions in IAM policies for Amazon Redshift, see [Managing access to resources](redshift-iam-access-control-overview.md#redshift-iam-accesscontrol-managingaccess).

**To display cluster performance during load operations**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for more details. 

1. In the **Queries and loads** section, choose **Loads** to view the load operations of a cluster. If a load is running, you can end it by choosing **Terminate query**.

# Viewing the cluster workload breakdown chart
<a name="analyze-workload-performance"></a>

You can get a detailed view of your workload's performance by looking at the Workload execution breakdown chart in the console. We build the chart with data provided by the QueryRuntimeBreakdown metric. With this chart, you can see how much time your queries spend in the various processing stages, such as waiting and planning. 

**Note**  
The Workload execution breakdown chart isn't shown for single-node clusters.

The following list of metrics describes the various processing stages:
+ `QueryPlanning`: Time spent parsing and optimizing SQL statements.
+ `QueryWaiting`: Time spent waiting in the workload management (WLM) queue.
+ `QueryExecutingRead`: Time spent running read queries. 
+ `QueryExecutingInsert`: Time spent running insert queries.
+ `QueryExecutingDelete`: Time spent running delete queries.
+ `QueryExecutingUpdate`: Time spent running update queries.
+ `QueryExecutingCtas`: Time spent running CREATE TABLE AS queries.
+ `QueryExecutingUnload`: Time spent running unload queries.
+ `QueryExecutingCopy`: Time spent running copy queries.

For example, the following graph in the Amazon Redshift console shows the amount of time that queries have spent in the plan, wait, read, and write stages. You can combine the findings from this graph with other metrics for further analysis. In some cases, your graph might show that queries with a short duration (as measured by the `QueryDuration` metric) are spending a long time in the wait stage. In these cases, you can increase the WLM concurrency rate for a particular queue to increase throughput. 

Following, is an example of the workload execution breakdown chart. In the chart, the y-axis value is the average duration of each stage at the specified time shown as a stacked bar graph.

![\[Vertical bar graph showing duration of query processing stages in increments of days.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/database-performance-workload-execution-breakdown.png)


The following diagram illustrates how Amazon Redshift aggregates query processing for concurrent sessions. 

![\[Horizonal bar graph showing session number on the x-axis and time on the y-axis. Each session is a horizontal bar that's divided into different query statuses.\]](http://docs.aws.amazon.com/redshift/latest/mgmt/images/querybreakdownschematic.png)


**To view the cluster workload breakdown chart**

1. Sign in to the AWS Management Console and open the Amazon Redshift console at [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/).

1. On the navigation menu, choose **Clusters**, then choose the cluster name from the list to open its details. The details of the cluster are displayed, which can include **Cluster performance**, **Query monitoring**, **Databases**, **Datashares**, **Schedules**, **Maintenance**, and **Properties** tabs. 

1. Choose the **Query monitoring** tab for metrics about your queries.

1. In the **Query monitoring** section, choose **Database performance**, and choose **Cluster metrics**. 

   The following metrics are graphed for the chosen time range as a stacked bar chart: 
   + **Plan** time 
   + **Wait** time 
   + **Commit** time 
   + **Execution** time 