Table: aws_rds_db_instance_metric_write_iops - Query AWS RDS DBInstance Write IOPS using SQL
The AWS RDS DBInstance Write IOPS is a metric that measures the average number of disk I/O operations per second for write operations. It is part of Amazon RDS (Relational Database Service) which provides resizable capacity for an industry-standard relational database and manages common database administration tasks. Monitoring this metric can help in understanding the performance of the database and identifying any potential issues related to data write operations.
Table Usage Guide
The aws_rds_db_instance_metric_write_iops
table in Steampipe gives you information about the Write IOPS (Input/Output Operations Per Second) metrics of AWS RDS DBInstances. This table allows you, as a DevOps engineer, to query details related to the write operations performance of your RDS DBInstances, including the average, maximum, and minimum values for a specified period. You can utilize this table to monitor and analyze the write performance of your DBInstances, helping you optimize the performance and reliability of your database operations. The schema outlines the various attributes of the Write IOPS metrics, including the DBInstance identifier, timestamp, and the statistics for the period.
The aws_rds_db_instance_metric_write_iops
table provides metric statistics at 5 minute intervals for the most recent 5 days.
Examples
Basic info
Explore the performance of various AWS RDS database instances over time. This query is useful for identifying trends or anomalies in write operations, which can inform optimization strategies or troubleshooting efforts.
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopsorder by db_instance_identifier, timestamp;
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopsorder by db_instance_identifier, timestamp;
Intervals where volumes exceed 1000 average write ops
Identify instances where the average write operations on your AWS RDS database instances exceed 1000. This can help you pinpoint periods of high database activity and assess the need for potential performance optimization or resource scaling.
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopswhere average > 1000order by db_instance_identifier, timestamp;
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopswhere average > 1000order by db_instance_identifier, timestamp;
Intervals where volumes exceed 8000 max write ops
Identify instances where the maximum write operations on your AWS RDS database instances exceed 8000. This can help in assessing the load on your databases and planning for capacity upgrades or performance optimization.
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopswhere maximum > 8000order by db_instance_identifier, timestamp;
select db_instance_identifier, timestamp, minimum, maximum, average, sum, sample_countfrom aws_rds_db_instance_metric_write_iopswhere maximum > 8000order by db_instance_identifier, timestamp;
Read, Write, and Total IOPS
Analyze the settings to understand the average, maximum, and minimum input/output operations per second (IOPS) for each database instance. This can help pinpoint performance bottlenecks and optimize database operations for better efficiency.
select r.db_instance_identifier, r.timestamp, round(r.average) + round(w.average) as iops_avg, round(r.average) as read_ops_avg, round(w.average) as write_ops_avg, round(r.maximum) + round(w.maximum) as iops_max, round(r.maximum) as read_ops_max, round(w.maximum) as write_ops_max, round(r.minimum) + round(w.minimum) as iops_min, round(r.minimum) as read_ops_min, round(w.minimum) as write_ops_minfrom aws_rds_db_instance_metric_read_iops as r, aws_rds_db_instance_metric_write_iops as wwhere r.db_instance_identifier = w.db_instance_identifier and r.timestamp = w.timestamporder by r.db_instance_identifier, r.timestamp;
select r.db_instance_identifier, r.timestamp, round(r.average) + round(w.average) as iops_avg, round(r.average) as read_ops_avg, round(w.average) as write_ops_avg, round(r.maximum) + round(w.maximum) as iops_max, round(r.maximum) as read_ops_max, round(w.maximum) as write_ops_max, round(r.minimum) + round(w.minimum) as iops_min, round(r.minimum) as read_ops_min, round(w.minimum) as write_ops_minfrom aws_rds_db_instance_metric_read_iops as r, aws_rds_db_instance_metric_write_iops as wwhere r.db_instance_identifier = w.db_instance_identifier and r.timestamp = w.timestamporder by r.db_instance_identifier, r.timestamp;
Schema for aws_rds_db_instance_metric_write_iops
Name | Type | Operators | Description |
---|---|---|---|
_ctx | jsonb | Steampipe context in JSON form. | |
account_id | text | =, !=, ~~, ~~*, !~~, !~~* | The AWS Account ID in which the resource is located. |
average | double precision | The average of the metric values that correspond to the data point. | |
db_instance_identifier | text | The friendly name to identify the DB Instance. | |
maximum | double precision | The maximum metric value for the data point. | |
metric_name | text | The name of the metric. | |
minimum | double precision | The minimum metric value for the data point. | |
namespace | text | The metric namespace. | |
partition | text | The AWS partition in which the resource is located (aws, aws-cn, or aws-us-gov). | |
region | text | The AWS Region in which the resource is located. | |
sample_count | double precision | The number of metric values that contributed to the aggregate value of this data point. | |
sp_connection_name | text | =, !=, ~~, ~~*, !~~, !~~* | Steampipe connection name. |
sp_ctx | jsonb | Steampipe context in JSON form. | |
sum | double precision | The sum of the metric values for the data point. | |
timestamp | timestamp with time zone | The time stamp used for the data point. | |
unit | text | The standard unit for the data point. |
Export
This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.
You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh
script:
/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- aws
You can pass the configuration to the command with the --config
argument:
steampipe_export_aws --config '<your_config>' aws_rds_db_instance_metric_write_iops