@aws-sdk/client-compute-optimizer 3.600.0 → 3.602.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +24 -0
  2. package/dist-cjs/index.js +410 -2
  3. package/dist-es/ComputeOptimizer.js +6 -0
  4. package/dist-es/commands/ExportRDSDatabaseRecommendationsCommand.js +24 -0
  5. package/dist-es/commands/GetRDSDatabaseRecommendationProjectedMetricsCommand.js +24 -0
  6. package/dist-es/commands/GetRDSDatabaseRecommendationsCommand.js +24 -0
  7. package/dist-es/commands/index.js +3 -0
  8. package/dist-es/models/models_0.js +125 -0
  9. package/dist-es/protocols/Aws_json1_0.js +220 -0
  10. package/dist-types/ComputeOptimizer.d.ts +22 -0
  11. package/dist-types/ComputeOptimizerClient.d.ts +5 -2
  12. package/dist-types/commands/DeleteRecommendationPreferencesCommand.d.ts +1 -1
  13. package/dist-types/commands/DescribeRecommendationExportJobsCommand.d.ts +1 -1
  14. package/dist-types/commands/ExportAutoScalingGroupRecommendationsCommand.d.ts +1 -1
  15. package/dist-types/commands/ExportEBSVolumeRecommendationsCommand.d.ts +1 -1
  16. package/dist-types/commands/ExportEC2InstanceRecommendationsCommand.d.ts +1 -1
  17. package/dist-types/commands/ExportRDSDatabaseRecommendationsCommand.d.ts +121 -0
  18. package/dist-types/commands/GetAutoScalingGroupRecommendationsCommand.d.ts +17 -17
  19. package/dist-types/commands/GetEBSVolumeRecommendationsCommand.d.ts +5 -5
  20. package/dist-types/commands/GetEC2InstanceRecommendationsCommand.d.ts +10 -10
  21. package/dist-types/commands/GetECSServiceRecommendationsCommand.d.ts +12 -12
  22. package/dist-types/commands/GetLambdaFunctionRecommendationsCommand.d.ts +5 -5
  23. package/dist-types/commands/GetRDSDatabaseRecommendationProjectedMetricsCommand.d.ts +112 -0
  24. package/dist-types/commands/GetRDSDatabaseRecommendationsCommand.d.ts +223 -0
  25. package/dist-types/commands/GetRecommendationPreferencesCommand.d.ts +2 -2
  26. package/dist-types/commands/GetRecommendationSummariesCommand.d.ts +1 -1
  27. package/dist-types/commands/PutRecommendationPreferencesCommand.d.ts +1 -1
  28. package/dist-types/commands/index.d.ts +3 -0
  29. package/dist-types/models/models_0.d.ts +1316 -209
  30. package/dist-types/protocols/Aws_json1_0.d.ts +27 -0
  31. package/dist-types/ts3.4/ComputeOptimizer.d.ts +58 -0
  32. package/dist-types/ts3.4/ComputeOptimizerClient.d.ts +18 -0
  33. package/dist-types/ts3.4/commands/ExportRDSDatabaseRecommendationsCommand.d.ts +40 -0
  34. package/dist-types/ts3.4/commands/GetRDSDatabaseRecommendationProjectedMetricsCommand.d.ts +40 -0
  35. package/dist-types/ts3.4/commands/GetRDSDatabaseRecommendationsCommand.d.ts +40 -0
  36. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  37. package/dist-types/ts3.4/models/models_0.d.ts +275 -9
  38. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +36 -0
  39. package/package.json +1 -1
@@ -411,7 +411,7 @@ export interface CustomizableMetricParameters {
411
411
  }
412
412
  /**
413
413
  * <p>
414
- * The preference to control the resource’s CPU utilization thresholds - threshold and headroom.
414
+ * The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom.
415
415
  * </p>
416
416
  * <note>
417
417
  * <p>This preference is only available for the Amazon EC2 instance resource type.</p>
@@ -446,15 +446,15 @@ export interface EffectiveRecommendationPreferences {
446
446
  * <ul>
447
447
  * <li>
448
448
  * <p>A <a>GetEC2InstanceRecommendations</a> or <a>GetAutoScalingGroupRecommendations</a> request, Compute Optimizer
449
- * returns recommendations that consist of Graviton2 instance types only.</p>
449
+ * returns recommendations that consist of Graviton instance types only.</p>
450
450
  * </li>
451
451
  * <li>
452
- * <p>A <a>GetEC2RecommendationProjectedMetrics</a> request, Compute Optimizer returns projected utilization metrics for Graviton2 instance type
452
+ * <p>A <a>GetEC2RecommendationProjectedMetrics</a> request, Compute Optimizer returns projected utilization metrics for Graviton instance type
453
453
  * recommendations only.</p>
454
454
  * </li>
455
455
  * <li>
456
456
  * <p>A <a>ExportEC2InstanceRecommendations</a> or <a>ExportAutoScalingGroupRecommendations</a> request, Compute Optimizer
457
- * exports recommendations that consist of Graviton2 instance types only.</p>
457
+ * exports recommendations that consist of Graviton instance types only.</p>
458
458
  * </li>
459
459
  * </ul>
460
460
  * @public
@@ -854,6 +854,13 @@ export interface AutoScalingGroupRecommendationOption {
854
854
  * @public
855
855
  */
856
856
  configuration?: AutoScalingGroupConfiguration;
857
+ /**
858
+ * <p>
859
+ * Describes the GPU accelerator settings for the recommended instance type of the Auto Scaling group.
860
+ * </p>
861
+ * @public
862
+ */
863
+ instanceGpuInfo?: GpuInfo;
857
864
  /**
858
865
  * <p>An array of objects that describe the projected utilization metrics of the Auto Scaling group recommendation option.</p>
859
866
  * <note>
@@ -898,6 +905,14 @@ export interface AutoScalingGroupRecommendationOption {
898
905
  * @public
899
906
  */
900
907
  savingsOpportunity?: SavingsOpportunity;
908
+ /**
909
+ * <p>
910
+ * An object that describes the savings opportunity for the Auto Scaling group recommendation option that includes Savings Plans and Reserved Instances discounts.
911
+ * Savings opportunity includes the estimated monthly savings and percentage.
912
+ * </p>
913
+ * @public
914
+ */
915
+ savingsOpportunityAfterDiscounts?: AutoScalingGroupSavingsOpportunityAfterDiscounts;
901
916
  /**
902
917
  * <p>The level of effort required to migrate from the current instance type to the
903
918
  * recommended instance type.</p>
@@ -910,21 +925,6 @@ export interface AutoScalingGroupRecommendationOption {
910
925
  * @public
911
926
  */
912
927
  migrationEffort?: MigrationEffort;
913
- /**
914
- * <p>
915
- * Describes the GPU accelerator settings for the recommended instance type of the Auto Scaling group.
916
- * </p>
917
- * @public
918
- */
919
- instanceGpuInfo?: GpuInfo;
920
- /**
921
- * <p>
922
- * An object that describes the savings opportunity for the Auto Scaling group recommendation option that includes Savings Plans and Reserved Instances discounts.
923
- * Savings opportunity includes the estimated monthly savings and percentage.
924
- * </p>
925
- * @public
926
- */
927
- savingsOpportunityAfterDiscounts?: AutoScalingGroupSavingsOpportunityAfterDiscounts;
928
928
  }
929
929
  /**
930
930
  * <p>Describes an Auto Scaling group recommendation.</p>
@@ -988,6 +988,13 @@ export interface AutoScalingGroupRecommendation {
988
988
  * @public
989
989
  */
990
990
  currentConfiguration?: AutoScalingGroupConfiguration;
991
+ /**
992
+ * <p>
993
+ * Describes the GPU accelerator settings for the current instance type of the Auto Scaling group.
994
+ * </p>
995
+ * @public
996
+ */
997
+ currentInstanceGpuInfo?: GpuInfo;
991
998
  /**
992
999
  * <p>An array of objects that describe the recommendation options for the Auto Scaling
993
1000
  * group.</p>
@@ -1067,13 +1074,6 @@ export interface AutoScalingGroupRecommendation {
1067
1074
  * @public
1068
1075
  */
1069
1076
  inferredWorkloadTypes?: InferredWorkloadType[];
1070
- /**
1071
- * <p>
1072
- * Describes the GPU accelerator settings for the current instance type of the Auto Scaling group.
1073
- * </p>
1074
- * @public
1075
- */
1076
- currentInstanceGpuInfo?: GpuInfo;
1077
1077
  }
1078
1078
  /**
1079
1079
  * @public
@@ -1103,6 +1103,7 @@ export declare const ResourceType: {
1103
1103
  readonly LAMBDA_FUNCTION: "LambdaFunction";
1104
1104
  readonly LICENSE: "License";
1105
1105
  readonly NOT_APPLICABLE: "NotApplicable";
1106
+ readonly RDS_DB_INSTANCE: "RdsDBInstance";
1106
1107
  };
1107
1108
  /**
1108
1109
  * @public
@@ -1199,10 +1200,6 @@ export interface DeleteRecommendationPreferencesRequest {
1199
1200
  * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
1200
1201
  * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
1201
1202
  * encompasses only instances that are part of an Auto Scaling group.</p>
1202
- * <note>
1203
- * <p>The valid values for this parameter are <code>Ec2Instance</code> and
1204
- * <code>AutoScalingGroup</code>.</p>
1205
- * </note>
1206
1203
  * @public
1207
1204
  */
1208
1205
  resourceType: ResourceType | undefined;
@@ -1814,7 +1811,7 @@ export interface Filter {
1814
1811
  values?: string[];
1815
1812
  }
1816
1813
  /**
1817
- * <p>Describes the recommendation preferences to return in the response of a <a>GetAutoScalingGroupRecommendations</a>, <a>GetEC2InstanceRecommendations</a>, and <a>GetEC2RecommendationProjectedMetrics</a> request.</p>
1814
+ * <p>Describes the recommendation preferences to return in the response of a <a>GetAutoScalingGroupRecommendations</a>, <a>GetEC2InstanceRecommendations</a>, <a>GetEC2RecommendationProjectedMetrics</a>, <a>GetRDSDatabaseRecommendations</a>, and <a>GetRDSDatabaseRecommendationProjectedMetrics</a> request.</p>
1818
1815
  * @public
1819
1816
  */
1820
1817
  export interface RecommendationPreferences {
@@ -1824,15 +1821,15 @@ export interface RecommendationPreferences {
1824
1821
  * <ul>
1825
1822
  * <li>
1826
1823
  * <p>A <a>GetEC2InstanceRecommendations</a> or <a>GetAutoScalingGroupRecommendations</a> request, Compute Optimizer
1827
- * returns recommendations that consist of Graviton2 instance types only.</p>
1824
+ * returns recommendations that consist of Graviton instance types only.</p>
1828
1825
  * </li>
1829
1826
  * <li>
1830
- * <p>A <a>GetEC2RecommendationProjectedMetrics</a> request, Compute Optimizer returns projected utilization metrics for Graviton2 instance type
1827
+ * <p>A <a>GetEC2RecommendationProjectedMetrics</a> request, Compute Optimizer returns projected utilization metrics for Graviton instance type
1831
1828
  * recommendations only.</p>
1832
1829
  * </li>
1833
1830
  * <li>
1834
1831
  * <p>A <a>ExportEC2InstanceRecommendations</a> or <a>ExportAutoScalingGroupRecommendations</a> request, Compute Optimizer
1835
- * exports recommendations that consist of Graviton2 instance types only.</p>
1832
+ * exports recommendations that consist of Graviton instance types only.</p>
1836
1833
  * </li>
1837
1834
  * </ul>
1838
1835
  * @public
@@ -2870,6 +2867,225 @@ export interface ExportLicenseRecommendationsResponse {
2870
2867
  */
2871
2868
  s3Destination?: S3Destination;
2872
2869
  }
2870
+ /**
2871
+ * @public
2872
+ * @enum
2873
+ */
2874
+ export declare const ExportableRDSDBField: {
2875
+ readonly ACCOUNT_ID: "AccountId";
2876
+ readonly CURRENT_DB_INSTANCE_CLASS: "CurrentDBInstanceClass";
2877
+ readonly CURRENT_INSTANCE_ON_DEMAND_HOURLY_PRICE: "CurrentInstanceOnDemandHourlyPrice";
2878
+ readonly CURRENT_STORAGE_CONFIGURATION_ALLOCATED_STORAGE: "CurrentStorageConfigurationAllocatedStorage";
2879
+ readonly CURRENT_STORAGE_CONFIGURATION_IOPS: "CurrentStorageConfigurationIOPS";
2880
+ readonly CURRENT_STORAGE_CONFIGURATION_MAX_ALLOCATED_STORAGE: "CurrentStorageConfigurationMaxAllocatedStorage";
2881
+ readonly CURRENT_STORAGE_CONFIGURATION_STORAGE_THROUGHPUT: "CurrentStorageConfigurationStorageThroughput";
2882
+ readonly CURRENT_STORAGE_CONFIGURATION_STORAGE_TYPE: "CurrentStorageConfigurationStorageType";
2883
+ readonly CURRENT_STORAGE_ON_DEMAND_MONTHLY_PRICE: "CurrentStorageOnDemandMonthlyPrice";
2884
+ readonly EFFECTIVE_RECOMMENDATION_PREFERENCES_CPU_VENDOR_ARCHITECTURES: "EffectiveRecommendationPreferencesCpuVendorArchitectures";
2885
+ readonly EFFECTIVE_RECOMMENDATION_PREFERENCES_ENHANCED_INFRASTRUCTURE_METRICS: "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics";
2886
+ readonly EFFECTIVE_RECOMMENDATION_PREFERENCES_LOOKBACK_PERIOD: "EffectiveRecommendationPreferencesLookBackPeriod";
2887
+ readonly EFFECTIVE_RECOMMENDATION_PREFERENCES_SAVINGS_ESTIMATION_MODE: "EffectiveRecommendationPreferencesSavingsEstimationMode";
2888
+ readonly ENGINE: "Engine";
2889
+ readonly ENGINE_VERSION: "EngineVersion";
2890
+ readonly IDLE: "Idle";
2891
+ readonly INSTANCE_FINDING: "InstanceFinding";
2892
+ readonly INSTANCE_FINDING_REASON_CODES: "InstanceFindingReasonCodes";
2893
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_DB_INSTANCE_CLASS: "InstanceRecommendationOptionsDBInstanceClass";
2894
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "InstanceRecommendationOptionsEstimatedMonthlySavingsCurrency";
2895
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY_AFTER_DISCOUNTS: "InstanceRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts";
2896
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "InstanceRecommendationOptionsEstimatedMonthlySavingsValue";
2897
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE_AFTER_DISCOUNTS: "InstanceRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts";
2898
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_INSTANCE_ON_DEMAND_HOURLY_PRICE: "InstanceRecommendationOptionsInstanceOnDemandHourlyPrice";
2899
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_PERFORMANCE_RISK: "InstanceRecommendationOptionsPerformanceRisk";
2900
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_CPU_MAXIMUM: "InstanceRecommendationOptionsProjectedUtilizationMetricsCpuMaximum";
2901
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_RANK: "InstanceRecommendationOptionsRank";
2902
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_AFTER_DISCOUNTS_PERCENTAGE: "InstanceRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage";
2903
+ readonly INSTANCE_RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE: "InstanceRecommendationOptionsSavingsOpportunityPercentage";
2904
+ readonly LAST_REFRESH_TIMESTAMP: "LastRefreshTimestamp";
2905
+ readonly LOOKBACK_PERIOD_IN_DAYS: "LookbackPeriodInDays";
2906
+ readonly MULTI_AZ_DB_INSTANCE: "MultiAZDBInstance";
2907
+ readonly RESOURCE_ARN: "ResourceArn";
2908
+ readonly STORAGE_FINDING: "StorageFinding";
2909
+ readonly STORAGE_FINDING_REASON_CODES: "StorageFindingReasonCodes";
2910
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ALLOCATED_STORAGE: "StorageRecommendationOptionsAllocatedStorage";
2911
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "StorageRecommendationOptionsEstimatedMonthlySavingsCurrency";
2912
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY_AFTER_DISCOUNTS: "StorageRecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts";
2913
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "StorageRecommendationOptionsEstimatedMonthlySavingsValue";
2914
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE_AFTER_DISCOUNTS: "StorageRecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts";
2915
+ readonly STORAGE_RECOMMENDATION_OPTIONS_IOPS: "StorageRecommendationOptionsIOPS";
2916
+ readonly STORAGE_RECOMMENDATION_OPTIONS_MAX_ALLOCATED_STORAGE: "StorageRecommendationOptionsMaxAllocatedStorage";
2917
+ readonly STORAGE_RECOMMENDATION_OPTIONS_ON_DEMAND_MONTHLY_PRICE: "StorageRecommendationOptionsOnDemandMonthlyPrice";
2918
+ readonly STORAGE_RECOMMENDATION_OPTIONS_RANK: "StorageRecommendationOptionsRank";
2919
+ readonly STORAGE_RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_AFTER_DISCOUNTS_PERCENTAGE: "StorageRecommendationOptionsSavingsOpportunityAfterDiscountsPercentage";
2920
+ readonly STORAGE_RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE: "StorageRecommendationOptionsSavingsOpportunityPercentage";
2921
+ readonly STORAGE_RECOMMENDATION_OPTIONS_STORAGE_THROUGHPUT: "StorageRecommendationOptionsStorageThroughput";
2922
+ readonly STORAGE_RECOMMENDATION_OPTIONS_STORAGE_TYPE: "StorageRecommendationOptionsStorageType";
2923
+ readonly TAGS: "Tags";
2924
+ readonly UTILIZATION_METRICS_CPU_MAXIMUM: "UtilizationMetricsCpuMaximum";
2925
+ readonly UTILIZATION_METRICS_DATABASE_CONNECTIONS_MAXIMUM: "UtilizationMetricsDatabaseConnectionsMaximum";
2926
+ readonly UTILIZATION_METRICS_EBS_VOLUME_READ_IOPS_MAXIMUM: "UtilizationMetricsEBSVolumeReadIOPSMaximum";
2927
+ readonly UTILIZATION_METRICS_EBS_VOLUME_READ_THROUGHPUT_MAXIMUM: "UtilizationMetricsEBSVolumeReadThroughputMaximum";
2928
+ readonly UTILIZATION_METRICS_EBS_VOLUME_STORAGE_SPACE_UTILIZATION_MAXIMUM: "UtilizationMetricsEBSVolumeStorageSpaceUtilizationMaximum";
2929
+ readonly UTILIZATION_METRICS_EBS_VOLUME_WRITE_IOPS_MAXIMUM: "UtilizationMetricsEBSVolumeWriteIOPSMaximum";
2930
+ readonly UTILIZATION_METRICS_EBS_VOLUME_WRITE_THROUGHPUT_MAXIMUM: "UtilizationMetricsEBSVolumeWriteThroughputMaximum";
2931
+ readonly UTILIZATION_METRICS_MEMORY_MAXIMUM: "UtilizationMetricsMemoryMaximum";
2932
+ readonly UTILIZATION_METRICS_NETWORK_RECEIVE_THROUGHPUT_MAXIMUM: "UtilizationMetricsNetworkReceiveThroughputMaximum";
2933
+ readonly UTILIZATION_METRICS_NETWORK_TRANSMIT_THROUGHPUT_MAXIMUM: "UtilizationMetricsNetworkTransmitThroughputMaximum";
2934
+ };
2935
+ /**
2936
+ * @public
2937
+ */
2938
+ export type ExportableRDSDBField = (typeof ExportableRDSDBField)[keyof typeof ExportableRDSDBField];
2939
+ /**
2940
+ * @public
2941
+ * @enum
2942
+ */
2943
+ export declare const RDSDBRecommendationFilterName: {
2944
+ readonly IDLE: "Idle";
2945
+ readonly INSTANCE_FINDING: "InstanceFinding";
2946
+ readonly INSTANCE_FINDING_REASON_CODE: "InstanceFindingReasonCode";
2947
+ readonly STORAGE_FINDING: "StorageFinding";
2948
+ readonly STORAGE_FINDING_REASON_CODE: "StorageFindingReasonCode";
2949
+ };
2950
+ /**
2951
+ * @public
2952
+ */
2953
+ export type RDSDBRecommendationFilterName = (typeof RDSDBRecommendationFilterName)[keyof typeof RDSDBRecommendationFilterName];
2954
+ /**
2955
+ * <p>
2956
+ * Describes a filter that returns a more specific list of Amazon RDS
2957
+ * recommendations. Use this filter with the <a>GetECSServiceRecommendations</a> action.
2958
+ * </p>
2959
+ * @public
2960
+ */
2961
+ export interface RDSDBRecommendationFilter {
2962
+ /**
2963
+ * <p>
2964
+ * The name of the filter.
2965
+ * </p>
2966
+ * <p>
2967
+ * Specify <code>Finding</code> to return recommendations with a specific finding classification.
2968
+ * </p>
2969
+ * <p>You can filter your Amazon RDS recommendations by <code>tag:key</code>
2970
+ * and <code>tag-key</code> tags.</p>
2971
+ * <p>A <code>tag:key</code> is a key and value combination of a tag assigned to your
2972
+ * Amazon RDS recommendations. Use the tag key in the filter name and the tag value
2973
+ * as the filter value. For example, to find all Amazon RDS service recommendations that have
2974
+ * a tag with the key of <code>Owner</code> and the value of <code>TeamA</code>,
2975
+ * specify <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter value.</p>
2976
+ * <p>A <code>tag-key</code> is the key of a tag assigned to your Amazon RDS recommendations. Use
2977
+ * this filter to find all of your Amazon RDS recommendations that have a tag with a
2978
+ * specific key. This doesn’t consider the tag value. For example, you can find
2979
+ * your Amazon RDS service recommendations with a tag key value of <code>Owner</code> or without any tag
2980
+ * keys assigned.</p>
2981
+ * @public
2982
+ */
2983
+ name?: RDSDBRecommendationFilterName;
2984
+ /**
2985
+ * <p>
2986
+ * The value of the filter.
2987
+ * </p>
2988
+ * @public
2989
+ */
2990
+ values?: string[];
2991
+ }
2992
+ /**
2993
+ * @public
2994
+ */
2995
+ export interface ExportRDSDatabaseRecommendationsRequest {
2996
+ /**
2997
+ * <p>
2998
+ * The Amazon Web Services account IDs for the export Amazon RDS recommendations.
2999
+ * </p>
3000
+ * <p>If your account is the management account or the delegated administrator
3001
+ * of an organization, use this parameter to specify the member account you want to
3002
+ * export recommendations to.</p>
3003
+ * <p>This parameter can't be specified together with the include member accounts
3004
+ * parameter. The parameters are mutually exclusive.</p>
3005
+ * <p>If this parameter or the include member accounts parameter is omitted,
3006
+ * the recommendations for member accounts aren't included in the export.</p>
3007
+ * <p>You can specify multiple account IDs per request.</p>
3008
+ * @public
3009
+ */
3010
+ accountIds?: string[];
3011
+ /**
3012
+ * <p>
3013
+ * An array of objects to specify a filter that exports a more specific set of
3014
+ * Amazon RDS recommendations.
3015
+ * </p>
3016
+ * @public
3017
+ */
3018
+ filters?: RDSDBRecommendationFilter[];
3019
+ /**
3020
+ * <p>The recommendations data to include in the export file. For more information about the
3021
+ * fields that can be exported, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/exporting-recommendations.html#exported-files">Exported files</a> in the <i>Compute Optimizer User
3022
+ * Guide</i>.</p>
3023
+ * @public
3024
+ */
3025
+ fieldsToExport?: ExportableRDSDBField[];
3026
+ /**
3027
+ * <p>Describes the destination Amazon Simple Storage Service (Amazon S3) bucket name and
3028
+ * key prefix for a recommendations export job.</p>
3029
+ * <p>You must create the destination Amazon S3 bucket for your recommendations
3030
+ * export before you create the export job. Compute Optimizer does not create the S3 bucket
3031
+ * for you. After you create the S3 bucket, ensure that it has the required permission
3032
+ * policy to allow Compute Optimizer to write the export file to it. If you plan to specify
3033
+ * an object prefix when you create the export job, you must include the object prefix in
3034
+ * the policy that you add to the S3 bucket. For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/create-s3-bucket-policy-for-compute-optimizer.html">Amazon S3 Bucket Policy for Compute Optimizer</a> in the
3035
+ * <i>Compute Optimizer User Guide</i>.</p>
3036
+ * @public
3037
+ */
3038
+ s3DestinationConfig: S3DestinationConfig | undefined;
3039
+ /**
3040
+ * <p>
3041
+ * The format of the export file.
3042
+ * </p>
3043
+ * <p>The CSV file is the only export file format currently supported.</p>
3044
+ * @public
3045
+ */
3046
+ fileFormat?: FileFormat;
3047
+ /**
3048
+ * <p>If your account is the management account or the delegated administrator of an organization,
3049
+ * this parameter indicates whether to include recommendations for resources in all member accounts of
3050
+ * the organization.</p>
3051
+ * <p>The member accounts must also be opted in to Compute Optimizer, and trusted access for
3052
+ * Compute Optimizer must be enabled in the organization account. For more information,
3053
+ * see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/security-iam.html#trusted-service-access">Compute Optimizer and Amazon Web Services Organizations trusted access</a> in the
3054
+ * <i>Compute Optimizer User Guide</i>.</p>
3055
+ * <p>If this parameter is omitted, recommendations for member accounts of the
3056
+ * organization aren't included in the export file.</p>
3057
+ * <p>If this parameter or the account ID parameter is omitted, recommendations for
3058
+ * member accounts aren't included in the export.</p>
3059
+ * @public
3060
+ */
3061
+ includeMemberAccounts?: boolean;
3062
+ /**
3063
+ * <p>Describes the recommendation preferences to return in the response of a <a>GetAutoScalingGroupRecommendations</a>, <a>GetEC2InstanceRecommendations</a>, <a>GetEC2RecommendationProjectedMetrics</a>, <a>GetRDSDatabaseRecommendations</a>, and <a>GetRDSDatabaseRecommendationProjectedMetrics</a> request.</p>
3064
+ * @public
3065
+ */
3066
+ recommendationPreferences?: RecommendationPreferences;
3067
+ }
3068
+ /**
3069
+ * @public
3070
+ */
3071
+ export interface ExportRDSDatabaseRecommendationsResponse {
3072
+ /**
3073
+ * <p>
3074
+ * The identification number of the export job.
3075
+ * </p>
3076
+ * <p>To view the status of an export job, use the
3077
+ * <a>DescribeRecommendationExportJobs</a> action and specify the job ID.
3078
+ * </p>
3079
+ * @public
3080
+ */
3081
+ jobId?: string;
3082
+ /**
3083
+ * <p>Describes the destination Amazon Simple Storage Service (Amazon S3) bucket name and
3084
+ * object keys of a recommendations export file, and its associated metadata file.</p>
3085
+ * @public
3086
+ */
3087
+ s3Destination?: S3Destination;
3088
+ }
2873
3089
  /**
2874
3090
  * @public
2875
3091
  */
@@ -3374,18 +3590,18 @@ export interface VolumeRecommendation {
3374
3590
  currentPerformanceRisk?: CurrentPerformanceRisk;
3375
3591
  /**
3376
3592
  * <p>
3377
- * A list of tags assigned to your Amazon EBS volume recommendations.
3593
+ * Describes the effective recommendation preferences for Amazon EBS volume.
3378
3594
  * </p>
3379
3595
  * @public
3380
3596
  */
3381
- tags?: Tag[];
3597
+ effectiveRecommendationPreferences?: EBSEffectiveRecommendationPreferences;
3382
3598
  /**
3383
3599
  * <p>
3384
- * Describes the effective recommendation preferences for Amazon EBS volume.
3600
+ * A list of tags assigned to your Amazon EBS volume recommendations.
3385
3601
  * </p>
3386
3602
  * @public
3387
3603
  */
3388
- effectiveRecommendationPreferences?: EBSEffectiveRecommendationPreferences;
3604
+ tags?: Tag[];
3389
3605
  }
3390
3606
  /**
3391
3607
  * @public
@@ -3630,6 +3846,13 @@ export interface InstanceRecommendationOption {
3630
3846
  * @public
3631
3847
  */
3632
3848
  instanceType?: string;
3849
+ /**
3850
+ * <p>
3851
+ * Describes the GPU accelerator settings for the recommended instance type.
3852
+ * </p>
3853
+ * @public
3854
+ */
3855
+ instanceGpuInfo?: GpuInfo;
3633
3856
  /**
3634
3857
  * <p>An array of objects that describe the projected utilization metrics of the instance
3635
3858
  * recommendation option.</p>
@@ -3774,6 +3997,14 @@ export interface InstanceRecommendationOption {
3774
3997
  * @public
3775
3998
  */
3776
3999
  savingsOpportunity?: SavingsOpportunity;
4000
+ /**
4001
+ * <p>
4002
+ * An object that describes the savings opportunity for the instance recommendation option that includes Savings Plans and Reserved Instances
4003
+ * discounts. Savings opportunity includes the estimated monthly savings and percentage.
4004
+ * </p>
4005
+ * @public
4006
+ */
4007
+ savingsOpportunityAfterDiscounts?: InstanceSavingsOpportunityAfterDiscounts;
3777
4008
  /**
3778
4009
  * <p>The level of effort required to migrate from the current instance type to the
3779
4010
  * recommended instance type.</p>
@@ -3786,21 +4017,6 @@ export interface InstanceRecommendationOption {
3786
4017
  * @public
3787
4018
  */
3788
4019
  migrationEffort?: MigrationEffort;
3789
- /**
3790
- * <p>
3791
- * Describes the GPU accelerator settings for the recommended instance type.
3792
- * </p>
3793
- * @public
3794
- */
3795
- instanceGpuInfo?: GpuInfo;
3796
- /**
3797
- * <p>
3798
- * An object that describes the savings opportunity for the instance recommendation option that includes Savings Plans and Reserved Instances
3799
- * discounts. Savings opportunity includes the estimated monthly savings and percentage.
3800
- * </p>
3801
- * @public
3802
- */
3803
- savingsOpportunityAfterDiscounts?: InstanceSavingsOpportunityAfterDiscounts;
3804
4020
  }
3805
4021
  /**
3806
4022
  * @public
@@ -3813,6 +4029,8 @@ export declare const RecommendationSourceType: {
3813
4029
  readonly ECS_SERVICE: "EcsService";
3814
4030
  readonly LAMBDA_FUNCTION: "LambdaFunction";
3815
4031
  readonly LICENSE: "License";
4032
+ readonly RDS_DB_INSTANCE: "RdsDBInstance";
4033
+ readonly RDS_DB_INSTANCE_STORAGE: "RdsDBInstanceStorage";
3816
4034
  };
3817
4035
  /**
3818
4036
  * @public
@@ -3896,6 +4114,9 @@ export interface InstanceRecommendation {
3896
4114
  * recommend a new generation instance type.</p>
3897
4115
  * </li>
3898
4116
  * </ul>
4117
+ * <note>
4118
+ * <p>The valid values in your API responses appear as OVER_PROVISIONED, UNDER_PROVISIONED, or OPTIMIZED.</p>
4119
+ * </note>
3899
4120
  * @public
3900
4121
  */
3901
4122
  finding?: Finding;
@@ -5000,27 +5221,27 @@ export interface ECSServiceRecommendationOption {
5000
5221
  savingsOpportunity?: SavingsOpportunity;
5001
5222
  /**
5002
5223
  * <p>
5003
- * An array of objects that describe the projected utilization metrics of the Amazon ECS service recommendation option.
5224
+ * Describes the savings opportunity for Amazon ECS service recommendations or for the recommendation option.
5004
5225
  * </p>
5226
+ * <p>Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts.
5227
+ * You can achieve this by implementing a given Compute Optimizer recommendation.</p>
5005
5228
  * @public
5006
5229
  */
5007
- projectedUtilizationMetrics?: ECSServiceProjectedUtilizationMetric[];
5230
+ savingsOpportunityAfterDiscounts?: ECSSavingsOpportunityAfterDiscounts;
5008
5231
  /**
5009
5232
  * <p>
5010
- * The CPU and memory size recommendations for the containers within the task of your Amazon ECS service.
5233
+ * An array of objects that describe the projected utilization metrics of the Amazon ECS service recommendation option.
5011
5234
  * </p>
5012
5235
  * @public
5013
5236
  */
5014
- containerRecommendations?: ContainerRecommendation[];
5237
+ projectedUtilizationMetrics?: ECSServiceProjectedUtilizationMetric[];
5015
5238
  /**
5016
5239
  * <p>
5017
- * Describes the savings opportunity for Amazon ECS service recommendations or for the recommendation option.
5240
+ * The CPU and memory size recommendations for the containers within the task of your Amazon ECS service.
5018
5241
  * </p>
5019
- * <p>Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts.
5020
- * You can achieve this by implementing a given Compute Optimizer recommendation.</p>
5021
5242
  * @public
5022
5243
  */
5023
- savingsOpportunityAfterDiscounts?: ECSSavingsOpportunityAfterDiscounts;
5244
+ containerRecommendations?: ContainerRecommendation[];
5024
5245
  }
5025
5246
  /**
5026
5247
  * <p>
@@ -5238,18 +5459,18 @@ export interface ECSServiceRecommendation {
5238
5459
  currentPerformanceRisk?: CurrentPerformanceRisk;
5239
5460
  /**
5240
5461
  * <p>
5241
- * A list of tags assigned to your Amazon ECS service recommendations.
5462
+ * Describes the effective recommendation preferences for Amazon ECS services.
5242
5463
  * </p>
5243
5464
  * @public
5244
5465
  */
5245
- tags?: Tag[];
5466
+ effectiveRecommendationPreferences?: ECSEffectiveRecommendationPreferences;
5246
5467
  /**
5247
5468
  * <p>
5248
- * Describes the effective recommendation preferences for Amazon ECS services.
5469
+ * A list of tags assigned to your Amazon ECS service recommendations.
5249
5470
  * </p>
5250
5471
  * @public
5251
5472
  */
5252
- effectiveRecommendationPreferences?: ECSEffectiveRecommendationPreferences;
5473
+ tags?: Tag[];
5253
5474
  }
5254
5475
  /**
5255
5476
  * @public
@@ -5953,18 +6174,18 @@ export interface LambdaFunctionRecommendation {
5953
6174
  currentPerformanceRisk?: CurrentPerformanceRisk;
5954
6175
  /**
5955
6176
  * <p>
5956
- * A list of tags assigned to your Lambda function recommendations.
6177
+ * Describes the effective recommendation preferences for Lambda functions.
5957
6178
  * </p>
5958
6179
  * @public
5959
6180
  */
5960
- tags?: Tag[];
6181
+ effectiveRecommendationPreferences?: LambdaEffectiveRecommendationPreferences;
5961
6182
  /**
5962
6183
  * <p>
5963
- * Describes the effective recommendation preferences for Lambda functions.
6184
+ * A list of tags assigned to your Lambda function recommendations.
5964
6185
  * </p>
5965
6186
  * @public
5966
6187
  */
5967
- effectiveRecommendationPreferences?: LambdaEffectiveRecommendationPreferences;
6188
+ tags?: Tag[];
5968
6189
  }
5969
6190
  /**
5970
6191
  * @public
@@ -6396,238 +6617,1128 @@ export interface GetLicenseRecommendationsResponse {
6396
6617
  /**
6397
6618
  * @public
6398
6619
  */
6399
- export interface GetRecommendationPreferencesRequest {
6620
+ export interface GetRDSDatabaseRecommendationProjectedMetricsRequest {
6400
6621
  /**
6401
- * <p>The target resource type of the recommendation preference for which to return
6402
- * preferences.</p>
6403
- * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
6404
- * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
6405
- * encompasses only instances that are part of an Auto Scaling group.</p>
6406
- * <note>
6407
- * <p>The valid values for this parameter are <code>Ec2Instance</code> and
6408
- * <code>AutoScalingGroup</code>.</p>
6409
- * </note>
6622
+ * <p>
6623
+ * The ARN that identifies the Amazon RDS.
6624
+ * </p>
6625
+ * <p>
6626
+ * The following is the format of the ARN:
6627
+ * </p>
6628
+ * <p>
6629
+ * <code>arn:aws:rds:\{region\}:\{accountId\}:db:\{resourceName\}</code>
6630
+ * </p>
6410
6631
  * @public
6411
6632
  */
6412
- resourceType: ResourceType | undefined;
6633
+ resourceArn: string | undefined;
6413
6634
  /**
6414
- * <p>An object that describes the scope of the recommendation preference to return.</p>
6415
- * <p>You can return recommendation preferences that are created at the organization level
6416
- * (for management accounts of an organization only), account level, and resource level.
6417
- * For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Activating
6418
- * enhanced infrastructure metrics</a> in the <i>Compute Optimizer User
6419
- * Guide</i>.</p>
6635
+ * <p>
6636
+ * The statistic of the projected metrics.
6637
+ * </p>
6420
6638
  * @public
6421
6639
  */
6422
- scope?: Scope;
6640
+ stat: MetricStatistic | undefined;
6423
6641
  /**
6424
- * <p>The token to advance to the next page of recommendation preferences.</p>
6642
+ * <p>
6643
+ * The granularity, in seconds, of the projected metrics data points.
6644
+ * </p>
6425
6645
  * @public
6426
6646
  */
6427
- nextToken?: string;
6647
+ period: number | undefined;
6428
6648
  /**
6429
- * <p>The maximum number of recommendation preferences to return with a single
6430
- * request.</p>
6431
- * <p>To retrieve the remaining results, make another request with the returned
6432
- * <code>nextToken</code> value.</p>
6649
+ * <p>
6650
+ * The timestamp of the first projected metrics data point to return.
6651
+ * </p>
6433
6652
  * @public
6434
6653
  */
6435
- maxResults?: number;
6654
+ startTime: Date | undefined;
6655
+ /**
6656
+ * <p>
6657
+ * The timestamp of the last projected metrics data point to return.
6658
+ * </p>
6659
+ * @public
6660
+ */
6661
+ endTime: Date | undefined;
6662
+ /**
6663
+ * <p>Describes the recommendation preferences to return in the response of a <a>GetAutoScalingGroupRecommendations</a>, <a>GetEC2InstanceRecommendations</a>, <a>GetEC2RecommendationProjectedMetrics</a>, <a>GetRDSDatabaseRecommendations</a>, and <a>GetRDSDatabaseRecommendationProjectedMetrics</a> request.</p>
6664
+ * @public
6665
+ */
6666
+ recommendationPreferences?: RecommendationPreferences;
6436
6667
  }
6437
6668
  /**
6438
6669
  * @public
6439
6670
  * @enum
6440
6671
  */
6441
- export declare const SavingsEstimationMode: {
6442
- readonly AFTER_DISCOUNTS: "AfterDiscounts";
6443
- readonly BEFORE_DISCOUNTS: "BeforeDiscounts";
6672
+ export declare const RDSDBMetricName: {
6673
+ readonly CPU: "CPU";
6674
+ readonly DATABASE_CONNECTIONS: "DatabaseConnections";
6675
+ readonly EBS_VOLUME_READ_IOPS: "EBSVolumeReadIOPS";
6676
+ readonly EBS_VOLUME_READ_THROUGHPUT: "EBSVolumeReadThroughput";
6677
+ readonly EBS_VOLUME_STORAGE_SPACE_UTILIZATION: "EBSVolumeStorageSpaceUtilization";
6678
+ readonly EBS_VOLUME_WRITE_IOPS: "EBSVolumeWriteIOPS";
6679
+ readonly EBS_VOLUME_WRITE_THROUGHPUT: "EBSVolumeWriteThroughput";
6680
+ readonly MEMORY: "Memory";
6681
+ readonly NETWORK_RECEIVE_THROUGHPUT: "NetworkReceiveThroughput";
6682
+ readonly NETWORK_TRANSMIT_THROUGHPUT: "NetworkTransmitThroughput";
6444
6683
  };
6445
6684
  /**
6446
6685
  * @public
6447
6686
  */
6448
- export type SavingsEstimationMode = (typeof SavingsEstimationMode)[keyof typeof SavingsEstimationMode];
6687
+ export type RDSDBMetricName = (typeof RDSDBMetricName)[keyof typeof RDSDBMetricName];
6449
6688
  /**
6450
- * <p>Describes a recommendation preference.</p>
6689
+ * <p>
6690
+ * Describes the projected metrics of an Amazon RDS recommendation option.
6691
+ * </p>
6692
+ * <p>
6693
+ * To determine the performance difference between your current Amazon RDS
6694
+ * and the recommended option, compare the metric data of your service against
6695
+ * its projected metric data.
6696
+ * </p>
6451
6697
  * @public
6452
6698
  */
6453
- export interface RecommendationPreferencesDetail {
6454
- /**
6455
- * <p>An object that describes the scope of the recommendation preference.</p>
6456
- * <p>Recommendation preferences can be created at the organization level (for management
6457
- * accounts of an organization only), account level, and resource level. For more
6458
- * information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Activating
6459
- * enhanced infrastructure metrics</a> in the <i>Compute Optimizer User
6460
- * Guide</i>.</p>
6461
- * @public
6462
- */
6463
- scope?: Scope;
6464
- /**
6465
- * <p>The target resource type of the recommendation preference to create.</p>
6466
- * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
6467
- * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
6468
- * encompasses only instances that are part of an Auto Scaling group.</p>
6469
- * @public
6470
- */
6471
- resourceType?: ResourceType;
6472
- /**
6473
- * <p>The status of the enhanced infrastructure metrics recommendation preference.</p>
6474
- * <p>When the recommendations page is refreshed, a status of <code>Active</code> confirms
6475
- * that the preference is applied to the recommendations, and a status of
6476
- * <code>Inactive</code> confirms that the preference isn't yet applied to
6477
- * recommendations.</p>
6478
- * <p>For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Enhanced
6479
- * infrastructure metrics</a> in the <i>Compute Optimizer User
6480
- * Guide</i>.</p>
6481
- * @public
6482
- */
6483
- enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics;
6699
+ export interface RDSDatabaseProjectedMetric {
6484
6700
  /**
6485
- * <p>The status of the inferred workload types recommendation preference.</p>
6486
- * <p>When the recommendations page is refreshed, a status of <code>Active</code> confirms
6487
- * that the preference is applied to the recommendations, and a status of
6488
- * <code>Inactive</code> confirms that the preference isn't yet applied to
6489
- * recommendations.</p>
6701
+ * <p>
6702
+ * The name of the projected metric.
6703
+ * </p>
6490
6704
  * @public
6491
6705
  */
6492
- inferredWorkloadTypes?: InferredWorkloadTypesPreference;
6706
+ name?: RDSDBMetricName;
6493
6707
  /**
6494
- * <p> An object that describes the external metrics recommendation preference. </p>
6495
- * <p> If the preference is applied in the latest recommendation refresh, an object with a
6496
- * valid <code>source</code> value appears in the response. If the preference isn't applied
6497
- * to the recommendations already, then this object doesn't appear in the response. </p>
6708
+ * <p>
6709
+ * The timestamps of the projected metric.
6710
+ * </p>
6498
6711
  * @public
6499
6712
  */
6500
- externalMetricsPreference?: ExternalMetricsPreference;
6713
+ timestamps?: Date[];
6501
6714
  /**
6502
6715
  * <p>
6503
- * The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed.
6504
- * If the preference isn’t set, this object is null.
6716
+ * The values for the projected metric.
6505
6717
  * </p>
6506
6718
  * @public
6507
6719
  */
6508
- lookBackPeriod?: LookBackPeriodPreference;
6720
+ values?: number[];
6721
+ }
6722
+ /**
6723
+ * <p>
6724
+ * Describes the projected metrics of an Amazon RDS recommendation option.
6725
+ * </p>
6726
+ * <p>
6727
+ * To determine the performance difference between your current Amazon RDS and the recommended option, compare
6728
+ * the metric data of your service against its projected metric data.
6729
+ * </p>
6730
+ * @public
6731
+ */
6732
+ export interface RDSDatabaseRecommendedOptionProjectedMetric {
6509
6733
  /**
6510
6734
  * <p>
6511
- * The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom.
6512
- * If the preference isn’t set, this object is null.
6735
+ * The recommended DB instance class for the Amazon RDS.
6513
6736
  * </p>
6514
- * <note>
6515
- * <p>This preference is only available for the Amazon EC2 instance resource type.</p>
6516
- * </note>
6517
6737
  * @public
6518
6738
  */
6519
- utilizationPreferences?: UtilizationPreference[];
6739
+ recommendedDBInstanceClass?: string;
6520
6740
  /**
6521
6741
  * <p>
6522
- * The preference to control which resource type values are considered when generating rightsizing recommendations.
6523
- * This object resolves any wildcard expressions and returns the effective list of candidate resource type values.
6524
- * If the preference isn’t set, this object is null.
6742
+ * The rank identifier of the RDS instance recommendation option.
6525
6743
  * </p>
6526
6744
  * @public
6527
6745
  */
6528
- preferredResources?: EffectivePreferredResource[];
6746
+ rank?: number;
6529
6747
  /**
6530
6748
  * <p>
6531
- * Describes the savings estimation mode used for calculating savings opportunity.
6749
+ * An array of objects that describe the projected metric.
6532
6750
  * </p>
6533
- * <p>Only the account manager or delegated administrator of your organization can activate this preference.</p>
6534
6751
  * @public
6535
6752
  */
6536
- savingsEstimationMode?: SavingsEstimationMode;
6753
+ projectedMetrics?: RDSDatabaseProjectedMetric[];
6537
6754
  }
6538
6755
  /**
6539
6756
  * @public
6540
6757
  */
6541
- export interface GetRecommendationPreferencesResponse {
6542
- /**
6543
- * <p>The token to use to advance to the next page of recommendation preferences.</p>
6544
- * <p>This value is null when there are no more pages of recommendation preferences to
6545
- * return.</p>
6546
- * @public
6547
- */
6548
- nextToken?: string;
6758
+ export interface GetRDSDatabaseRecommendationProjectedMetricsResponse {
6549
6759
  /**
6550
- * <p>An array of objects that describe recommendation preferences.</p>
6760
+ * <p>
6761
+ * An array of objects that describes the projected metrics.
6762
+ * </p>
6551
6763
  * @public
6552
6764
  */
6553
- recommendationPreferencesDetails?: RecommendationPreferencesDetail[];
6765
+ recommendedOptionProjectedMetrics?: RDSDatabaseRecommendedOptionProjectedMetric[];
6554
6766
  }
6555
6767
  /**
6556
6768
  * @public
6557
6769
  */
6558
- export interface GetRecommendationSummariesRequest {
6770
+ export interface GetRDSDatabaseRecommendationsRequest {
6559
6771
  /**
6560
- * <p>The ID of the Amazon Web Services account for which to return recommendation
6561
- * summaries.</p>
6562
- * <p>If your account is the management account of an organization, use this parameter to
6563
- * specify the member account for which you want to return recommendation summaries.</p>
6564
- * <p>Only one account ID can be specified per request.</p>
6772
+ * <p>
6773
+ * The ARN that identifies the Amazon RDS.
6774
+ * </p>
6775
+ * <p>
6776
+ * The following is the format of the ARN:
6777
+ * </p>
6778
+ * <p>
6779
+ * <code>arn:aws:rds:\{region\}:\{accountId\}:db:\{resourceName\}</code>
6780
+ * </p>
6781
+ * <p> The following is the format of a DB Cluster ARN: </p>
6782
+ * <p>
6783
+ * <code>arn:aws:rds:\{region\}:\{accountId\}:cluster:\{resourceName\}</code>
6784
+ * </p>
6565
6785
  * @public
6566
6786
  */
6567
- accountIds?: string[];
6787
+ resourceArns?: string[];
6568
6788
  /**
6569
- * <p>The token to advance to the next page of recommendation summaries.</p>
6789
+ * <p>
6790
+ * The token to advance to the next page of Amazon RDS recommendations.
6791
+ * </p>
6570
6792
  * @public
6571
6793
  */
6572
6794
  nextToken?: string;
6573
6795
  /**
6574
- * <p>The maximum number of recommendation summaries to return with a single request.</p>
6796
+ * <p>The maximum number of Amazon RDS recommendations to return with a single
6797
+ * request.</p>
6575
6798
  * <p>To retrieve the remaining results, make another request with the returned
6576
- * <code>nextToken</code> value.</p>
6799
+ * <code>nextToken</code> value.</p>
6577
6800
  * @public
6578
6801
  */
6579
6802
  maxResults?: number;
6803
+ /**
6804
+ * <p>
6805
+ * An array of objects to specify a filter that returns a more specific list of Amazon RDS recommendations.
6806
+ * </p>
6807
+ * @public
6808
+ */
6809
+ filters?: RDSDBRecommendationFilter[];
6810
+ /**
6811
+ * <p>
6812
+ * Return the Amazon RDS recommendations to the specified Amazon Web Services account IDs.
6813
+ * </p>
6814
+ * <p>If your account is the management account or the delegated administrator
6815
+ * of an organization, use this parameter to return the Amazon RDS recommendations to specific
6816
+ * member accounts.</p>
6817
+ * <p>You can only specify one account ID per request.</p>
6818
+ * @public
6819
+ */
6820
+ accountIds?: string[];
6821
+ /**
6822
+ * <p>Describes the recommendation preferences to return in the response of a <a>GetAutoScalingGroupRecommendations</a>, <a>GetEC2InstanceRecommendations</a>, <a>GetEC2RecommendationProjectedMetrics</a>, <a>GetRDSDatabaseRecommendations</a>, and <a>GetRDSDatabaseRecommendationProjectedMetrics</a> request.</p>
6823
+ * @public
6824
+ */
6825
+ recommendationPreferences?: RecommendationPreferences;
6580
6826
  }
6581
6827
  /**
6582
- * <p>Describes the performance risk ratings for a given resource type.</p>
6583
- * <p>Resources with a <code>high</code> or <code>medium</code> rating are at risk of not
6584
- * meeting the performance needs of their workloads, while resources with a
6585
- * <code>low</code> rating are performing well in their workloads.</p>
6828
+ * <p>
6829
+ * The configuration of the recommended RDS storage.
6830
+ * </p>
6586
6831
  * @public
6587
6832
  */
6588
- export interface CurrentPerformanceRiskRatings {
6833
+ export interface DBStorageConfiguration {
6589
6834
  /**
6590
- * <p>A count of the applicable resource types with a high performance risk rating.</p>
6835
+ * <p>
6836
+ * The type of RDS storage.
6837
+ * </p>
6591
6838
  * @public
6592
6839
  */
6593
- high?: number;
6840
+ storageType?: string;
6594
6841
  /**
6595
- * <p>A count of the applicable resource types with a medium performance risk rating.</p>
6842
+ * <p>
6843
+ * The size of the RDS storage in gigabytes (GB).
6844
+ * </p>
6596
6845
  * @public
6597
6846
  */
6598
- medium?: number;
6847
+ allocatedStorage?: number;
6599
6848
  /**
6600
- * <p>A count of the applicable resource types with a low performance risk rating.</p>
6849
+ * <p>
6850
+ * The provisioned IOPs of the RDS storage.
6851
+ * </p>
6601
6852
  * @public
6602
6853
  */
6603
- low?: number;
6854
+ iops?: number;
6604
6855
  /**
6605
- * <p>A count of the applicable resource types with a very low performance risk
6606
- * rating.</p>
6856
+ * <p>
6857
+ * The maximum limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the RDS instance.
6858
+ * </p>
6607
6859
  * @public
6608
6860
  */
6609
- veryLow?: number;
6861
+ maxAllocatedStorage?: number;
6862
+ /**
6863
+ * <p>
6864
+ * The storage throughput of the RDS storage.
6865
+ * </p>
6866
+ * @public
6867
+ */
6868
+ storageThroughput?: number;
6610
6869
  }
6870
+ /**
6871
+ * @public
6872
+ * @enum
6873
+ */
6874
+ export declare const RDSSavingsEstimationModeSource: {
6875
+ readonly COST_EXPLORER_RIGHTSIZING: "CostExplorerRightsizing";
6876
+ readonly COST_OPTIMIZATION_HUB: "CostOptimizationHub";
6877
+ readonly PUBLIC_PRICING: "PublicPricing";
6878
+ };
6879
+ /**
6880
+ * @public
6881
+ */
6882
+ export type RDSSavingsEstimationModeSource = (typeof RDSSavingsEstimationModeSource)[keyof typeof RDSSavingsEstimationModeSource];
6611
6883
  /**
6612
6884
  * <p>
6613
- * The estimated monthly savings after you adjust the configurations of your instances running on the
6614
- * inferred workload types to the recommended configurations. If the <code>inferredWorkloadTypes</code>
6615
- * list contains multiple entries, then the savings are the sum of the monthly savings from instances
6616
- * that run the exact combination of the inferred workload types.
6885
+ * Describes the savings estimation mode used for calculating savings opportunity for Amazon RDS.
6617
6886
  * </p>
6618
6887
  * @public
6619
6888
  */
6620
- export interface InferredWorkloadSaving {
6889
+ export interface RDSSavingsEstimationMode {
6621
6890
  /**
6622
- * <p>The applications that might be running on the instance as inferred by Compute Optimizer.</p>
6623
- * <p>Compute Optimizer can infer if one of the following applications might be running on
6624
- * the instance:</p>
6625
- * <ul>
6626
- * <li>
6627
- * <p>
6628
- * <code>AmazonEmr</code> - Infers that Amazon EMR might be running on
6629
- * the instance.</p>
6630
- * </li>
6891
+ * <p>
6892
+ * Describes the source for calculating the savings opportunity for Amazon RDS.
6893
+ * </p>
6894
+ * @public
6895
+ */
6896
+ source?: RDSSavingsEstimationModeSource;
6897
+ }
6898
+ /**
6899
+ * <p>
6900
+ * Describes the effective recommendation preferences for Amazon RDS.
6901
+ * </p>
6902
+ * @public
6903
+ */
6904
+ export interface RDSEffectiveRecommendationPreferences {
6905
+ /**
6906
+ * <p>
6907
+ * Describes the CPU vendor and architecture for Amazon RDS recommendations.
6908
+ * </p>
6909
+ * @public
6910
+ */
6911
+ cpuVendorArchitectures?: CpuVendorArchitecture[];
6912
+ /**
6913
+ * <p>Describes the activation status of the enhanced infrastructure metrics
6914
+ * preference.
6915
+ * </p>
6916
+ * <p>A status of <code>Active</code> confirms that the preference is applied in the latest
6917
+ * recommendation refresh, and a status of <code>Inactive</code> confirms that it's not yet
6918
+ * applied to recommendations.
6919
+ * </p>
6920
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Enhanced
6921
+ * infrastructure metrics</a> in the <i>Compute Optimizer User
6922
+ * Guide</i>.
6923
+ * </p>
6924
+ * @public
6925
+ */
6926
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics;
6927
+ /**
6928
+ * <p>
6929
+ * The number of days the utilization metrics of the Amazon RDS are analyzed.
6930
+ * </p>
6931
+ * @public
6932
+ */
6933
+ lookBackPeriod?: LookBackPeriodPreference;
6934
+ /**
6935
+ * <p>
6936
+ * Describes the savings estimation mode preference applied for calculating savings opportunity for Amazon RDS.
6937
+ * </p>
6938
+ * @public
6939
+ */
6940
+ savingsEstimationMode?: RDSSavingsEstimationMode;
6941
+ }
6942
+ /**
6943
+ * @public
6944
+ * @enum
6945
+ */
6946
+ export declare const Idle: {
6947
+ readonly FALSE: "False";
6948
+ readonly TRUE: "True";
6949
+ };
6950
+ /**
6951
+ * @public
6952
+ */
6953
+ export type Idle = (typeof Idle)[keyof typeof Idle];
6954
+ /**
6955
+ * @public
6956
+ * @enum
6957
+ */
6958
+ export declare const RDSInstanceFinding: {
6959
+ readonly OPTIMIZED: "Optimized";
6960
+ readonly OVER_PROVISIONED: "Overprovisioned";
6961
+ readonly UNDER_PROVISIONED: "Underprovisioned";
6962
+ };
6963
+ /**
6964
+ * @public
6965
+ */
6966
+ export type RDSInstanceFinding = (typeof RDSInstanceFinding)[keyof typeof RDSInstanceFinding];
6967
+ /**
6968
+ * @public
6969
+ * @enum
6970
+ */
6971
+ export declare const RDSInstanceFindingReasonCode: {
6972
+ readonly CPU_OVER_PROVISIONED: "CPUOverprovisioned";
6973
+ readonly CPU_UNDER_PROVISIONED: "CPUUnderprovisioned";
6974
+ readonly EBS_IOPS_OVER_PROVISIONED: "EBSIOPSOverprovisioned";
6975
+ readonly EBS_THROUGHPUT_OVER_PROVISIONED: "EBSThroughputOverprovisioned";
6976
+ readonly EBS_THROUGHPUT_UNDER_PROVISIONED: "EBSThroughputUnderprovisioned";
6977
+ readonly NETWORK_BANDWIDTH_OVER_PROVISIONED: "NetworkBandwidthOverprovisioned";
6978
+ readonly NETWORK_BANDWIDTH_UNDER_PROVISIONED: "NetworkBandwidthUnderprovisioned";
6979
+ readonly NEW_ENGINE_VERSION_AVAILABLE: "NewEngineVersionAvailable";
6980
+ readonly NEW_GENERATION_DB_INSTANCE_CLASS_AVAILABLE: "NewGenerationDBInstanceClassAvailable";
6981
+ };
6982
+ /**
6983
+ * @public
6984
+ */
6985
+ export type RDSInstanceFindingReasonCode = (typeof RDSInstanceFindingReasonCode)[keyof typeof RDSInstanceFindingReasonCode];
6986
+ /**
6987
+ * @public
6988
+ * @enum
6989
+ */
6990
+ export declare const RDSDBMetricStatistic: {
6991
+ readonly AVERAGE: "Average";
6992
+ readonly MAXIMUM: "Maximum";
6993
+ readonly MINIMUM: "Minimum";
6994
+ };
6995
+ /**
6996
+ * @public
6997
+ */
6998
+ export type RDSDBMetricStatistic = (typeof RDSDBMetricStatistic)[keyof typeof RDSDBMetricStatistic];
6999
+ /**
7000
+ * <p>
7001
+ * Describes the utilization metric of an Amazon RDS.
7002
+ * </p>
7003
+ * <p>
7004
+ * To determine the performance difference between your current Amazon RDS and the recommended option,
7005
+ * compare the utilization metric data of your service against its projected utilization metric data.
7006
+ * </p>
7007
+ * @public
7008
+ */
7009
+ export interface RDSDBUtilizationMetric {
7010
+ /**
7011
+ * <p>
7012
+ * The name of the utilization metric.
7013
+ * </p>
7014
+ * @public
7015
+ */
7016
+ name?: RDSDBMetricName;
7017
+ /**
7018
+ * <p>
7019
+ * The statistic of the utilization metric.
7020
+ * </p>
7021
+ * <p>The Compute Optimizer API, Command Line Interface (CLI), and SDKs
7022
+ * return utilization metrics using only the <code>Maximum</code> statistic, which is the
7023
+ * highest value observed during the specified period.</p>
7024
+ * <p>The Compute Optimizer console displays graphs for some utilization metrics using the
7025
+ * <code>Average</code> statistic, which is the value of <code>Sum</code> /
7026
+ * <code>SampleCount</code> during the specified period. For more information, see
7027
+ * <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/viewing-recommendations.html">Viewing resource
7028
+ * recommendations</a> in the <i>Compute Optimizer User
7029
+ * Guide</i>. You can also get averaged utilization metric data for your resources
7030
+ * using Amazon CloudWatch. For more information, see the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html">Amazon CloudWatch
7031
+ * User Guide</a>.</p>
7032
+ * @public
7033
+ */
7034
+ statistic?: RDSDBMetricStatistic;
7035
+ /**
7036
+ * <p>
7037
+ * The value of the utilization metric.
7038
+ * </p>
7039
+ * @public
7040
+ */
7041
+ value?: number;
7042
+ }
7043
+ /**
7044
+ * <p>
7045
+ * Describes the estimated monthly savings possible for Amazon RDS instances by adopting
7046
+ * Compute Optimizer recommendations. This is based on Amazon RDS pricing after applying
7047
+ * Savings Plans discounts.
7048
+ * </p>
7049
+ * @public
7050
+ */
7051
+ export interface RDSInstanceEstimatedMonthlySavings {
7052
+ /**
7053
+ * <p>
7054
+ * The currency of the estimated monthly savings.
7055
+ * </p>
7056
+ * @public
7057
+ */
7058
+ currency?: Currency;
7059
+ /**
7060
+ * <p>
7061
+ * The value of the estimated monthly savings for Amazon RDS instances.
7062
+ * </p>
7063
+ * @public
7064
+ */
7065
+ value?: number;
7066
+ }
7067
+ /**
7068
+ * <p>
7069
+ * Describes the savings opportunity for Amazon RDS instance recommendations after applying Savings Plans discounts.
7070
+ * </p>
7071
+ * <p>
7072
+ * Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts.
7073
+ * You can achieve this by implementing a given Compute Optimizer recommendation.
7074
+ * </p>
7075
+ * @public
7076
+ */
7077
+ export interface RDSInstanceSavingsOpportunityAfterDiscounts {
7078
+ /**
7079
+ * <p>
7080
+ * The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer’s
7081
+ * Amazon RDS instance recommendations. This includes any applicable Savings Plans discounts.
7082
+ * </p>
7083
+ * @public
7084
+ */
7085
+ savingsOpportunityPercentage?: number;
7086
+ /**
7087
+ * <p>
7088
+ * The estimated monthly savings possible by adopting Compute Optimizer’s Amazon RDS instance recommendations.
7089
+ * This includes any applicable Savings Plans discounts.
7090
+ * </p>
7091
+ * @public
7092
+ */
7093
+ estimatedMonthlySavings?: RDSInstanceEstimatedMonthlySavings;
7094
+ }
7095
+ /**
7096
+ * <p>
7097
+ * Describes the recommendation options for an Amazon RDS instance.
7098
+ * </p>
7099
+ * @public
7100
+ */
7101
+ export interface RDSDBInstanceRecommendationOption {
7102
+ /**
7103
+ * <p>
7104
+ * Describes the DB instance class recommendation option for your Amazon RDS instance.
7105
+ * </p>
7106
+ * @public
7107
+ */
7108
+ dbInstanceClass?: string;
7109
+ /**
7110
+ * <p>
7111
+ * An array of objects that describe the projected utilization metrics of the RDS instance recommendation option.
7112
+ * </p>
7113
+ * @public
7114
+ */
7115
+ projectedUtilizationMetrics?: RDSDBUtilizationMetric[];
7116
+ /**
7117
+ * <p>
7118
+ * The performance risk of the RDS instance recommendation option.
7119
+ * </p>
7120
+ * @public
7121
+ */
7122
+ performanceRisk?: number;
7123
+ /**
7124
+ * <p>
7125
+ * The rank identifier of the RDS instance recommendation option.
7126
+ * </p>
7127
+ * @public
7128
+ */
7129
+ rank?: number;
7130
+ /**
7131
+ * <p>Describes the savings opportunity for recommendations of a given resource type or for
7132
+ * the recommendation option of an individual resource.</p>
7133
+ * <p>Savings opportunity represents the estimated monthly savings you can achieve by
7134
+ * implementing a given Compute Optimizer recommendation.</p>
7135
+ * <important>
7136
+ * <p>Savings opportunity data requires that you opt in to Cost Explorer, as well as
7137
+ * activate <b>Receive Amazon EC2 resource
7138
+ * recommendations</b> in the Cost Explorer preferences page. That
7139
+ * creates a connection between Cost Explorer and Compute Optimizer. With this
7140
+ * connection, Cost Explorer generates savings estimates considering the price of
7141
+ * existing resources, the price of recommended resources, and historical usage data.
7142
+ * Estimated monthly savings reflects the projected dollar savings associated with each
7143
+ * of the recommendations generated. For more information, see <a href="https://docs.aws.amazon.com/cost-management/latest/userguide/ce-enable.html">Enabling Cost Explorer</a> and <a href="https://docs.aws.amazon.com/cost-management/latest/userguide/ce-rightsizing.html">Optimizing your cost
7144
+ * with Rightsizing Recommendations</a> in the <i>Cost Management User
7145
+ * Guide</i>.</p>
7146
+ * </important>
7147
+ * @public
7148
+ */
7149
+ savingsOpportunity?: SavingsOpportunity;
7150
+ /**
7151
+ * <p>
7152
+ * Describes the savings opportunity for Amazon RDS recommendations or for the recommendation option.
7153
+ * </p>
7154
+ * <p>Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts.
7155
+ * You can achieve this by implementing a given Compute Optimizer recommendation.</p>
7156
+ * @public
7157
+ */
7158
+ savingsOpportunityAfterDiscounts?: RDSInstanceSavingsOpportunityAfterDiscounts;
7159
+ }
7160
+ /**
7161
+ * @public
7162
+ * @enum
7163
+ */
7164
+ export declare const RDSStorageFinding: {
7165
+ readonly OPTIMIZED: "Optimized";
7166
+ readonly OVER_PROVISIONED: "Overprovisioned";
7167
+ readonly UNDER_PROVISIONED: "Underprovisioned";
7168
+ };
7169
+ /**
7170
+ * @public
7171
+ */
7172
+ export type RDSStorageFinding = (typeof RDSStorageFinding)[keyof typeof RDSStorageFinding];
7173
+ /**
7174
+ * @public
7175
+ * @enum
7176
+ */
7177
+ export declare const RDSStorageFindingReasonCode: {
7178
+ readonly EBS_VOLUME_ALLOCATED_STORAGE_UNDER_PROVISIONED: "EBSVolumeAllocatedStorageUnderprovisioned";
7179
+ readonly EBS_VOLUME_IOPS_OVER_PROVISIONED: "EBSVolumeIOPSOverprovisioned";
7180
+ readonly EBS_VOLUME_THROUGHPUT_OVER_PROVISIONED: "EBSVolumeThroughputOverprovisioned";
7181
+ readonly EBS_VOLUME_THROUGHPUT_UNDER_PROVISIONED: "EBSVolumeThroughputUnderprovisioned";
7182
+ readonly NEW_GENERATION_STORAGE_TYPE_AVAILABLE: "NewGenerationStorageTypeAvailable";
7183
+ };
7184
+ /**
7185
+ * @public
7186
+ */
7187
+ export type RDSStorageFindingReasonCode = (typeof RDSStorageFindingReasonCode)[keyof typeof RDSStorageFindingReasonCode];
7188
+ /**
7189
+ * <p>
7190
+ * Describes the estimated monthly savings possible for Amazon RDS storage by adopting Compute Optimizer
7191
+ * recommendations. This is based on Amazon RDS pricing after applying Savings Plans discounts.
7192
+ * </p>
7193
+ * @public
7194
+ */
7195
+ export interface RDSStorageEstimatedMonthlySavings {
7196
+ /**
7197
+ * <p>
7198
+ * The currency of the estimated monthly savings.
7199
+ * </p>
7200
+ * @public
7201
+ */
7202
+ currency?: Currency;
7203
+ /**
7204
+ * <p>
7205
+ * The value of the estimated monthly savings for Amazon RDS storage.
7206
+ * </p>
7207
+ * @public
7208
+ */
7209
+ value?: number;
7210
+ }
7211
+ /**
7212
+ * <p>
7213
+ * Describes the savings opportunity for Amazon RDS storage recommendations after applying Savings Plans discounts.
7214
+ * </p>
7215
+ * <p>
7216
+ * Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts.
7217
+ * You can achieve this by implementing a given Compute Optimizer recommendation.
7218
+ * </p>
7219
+ * @public
7220
+ */
7221
+ export interface RDSStorageSavingsOpportunityAfterDiscounts {
7222
+ /**
7223
+ * <p>
7224
+ * The estimated monthly savings possible as a percentage of monthly cost by adopting Compute Optimizer’s
7225
+ * Amazon RDS storage recommendations. This includes any applicable Savings Plans discounts.
7226
+ * </p>
7227
+ * @public
7228
+ */
7229
+ savingsOpportunityPercentage?: number;
7230
+ /**
7231
+ * <p>
7232
+ * The estimated monthly savings possible by adopting Compute Optimizer’s Amazon RDS storage recommendations. This includes any applicable Savings Plans discounts.
7233
+ * </p>
7234
+ * @public
7235
+ */
7236
+ estimatedMonthlySavings?: RDSStorageEstimatedMonthlySavings;
7237
+ }
7238
+ /**
7239
+ * <p>
7240
+ * Describes the recommendation options for Amazon RDS storage.
7241
+ * </p>
7242
+ * @public
7243
+ */
7244
+ export interface RDSDBStorageRecommendationOption {
7245
+ /**
7246
+ * <p>
7247
+ * The recommended storage configuration.
7248
+ * </p>
7249
+ * @public
7250
+ */
7251
+ storageConfiguration?: DBStorageConfiguration;
7252
+ /**
7253
+ * <p>
7254
+ * The rank identifier of the RDS storage recommendation option.
7255
+ * </p>
7256
+ * @public
7257
+ */
7258
+ rank?: number;
7259
+ /**
7260
+ * <p>Describes the savings opportunity for recommendations of a given resource type or for
7261
+ * the recommendation option of an individual resource.</p>
7262
+ * <p>Savings opportunity represents the estimated monthly savings you can achieve by
7263
+ * implementing a given Compute Optimizer recommendation.</p>
7264
+ * <important>
7265
+ * <p>Savings opportunity data requires that you opt in to Cost Explorer, as well as
7266
+ * activate <b>Receive Amazon EC2 resource
7267
+ * recommendations</b> in the Cost Explorer preferences page. That
7268
+ * creates a connection between Cost Explorer and Compute Optimizer. With this
7269
+ * connection, Cost Explorer generates savings estimates considering the price of
7270
+ * existing resources, the price of recommended resources, and historical usage data.
7271
+ * Estimated monthly savings reflects the projected dollar savings associated with each
7272
+ * of the recommendations generated. For more information, see <a href="https://docs.aws.amazon.com/cost-management/latest/userguide/ce-enable.html">Enabling Cost Explorer</a> and <a href="https://docs.aws.amazon.com/cost-management/latest/userguide/ce-rightsizing.html">Optimizing your cost
7273
+ * with Rightsizing Recommendations</a> in the <i>Cost Management User
7274
+ * Guide</i>.</p>
7275
+ * </important>
7276
+ * @public
7277
+ */
7278
+ savingsOpportunity?: SavingsOpportunity;
7279
+ /**
7280
+ * <p>
7281
+ * Describes the savings opportunity for Amazon RDS storage recommendations or for the recommendation option.
7282
+ * </p>
7283
+ * <p>
7284
+ * Savings opportunity represents the estimated monthly savings after applying Savings Plans discounts. You can achieve
7285
+ * this by implementing a given Compute Optimizer recommendation.
7286
+ * </p>
7287
+ * @public
7288
+ */
7289
+ savingsOpportunityAfterDiscounts?: RDSStorageSavingsOpportunityAfterDiscounts;
7290
+ }
7291
+ /**
7292
+ * <p>
7293
+ * Describes an Amazon RDS recommendation.
7294
+ * </p>
7295
+ * @public
7296
+ */
7297
+ export interface RDSDBRecommendation {
7298
+ /**
7299
+ * <p>
7300
+ * The ARN of the current Amazon RDS.
7301
+ * </p>
7302
+ * <p>
7303
+ * The following is the format of the ARN:
7304
+ * </p>
7305
+ * <p>
7306
+ * <code>arn:aws:rds:\{region\}:\{accountId\}:db:\{resourceName\}</code>
7307
+ * </p>
7308
+ * @public
7309
+ */
7310
+ resourceArn?: string;
7311
+ /**
7312
+ * <p>
7313
+ * The Amazon Web Services account ID of the Amazon RDS.
7314
+ * </p>
7315
+ * @public
7316
+ */
7317
+ accountId?: string;
7318
+ /**
7319
+ * <p>
7320
+ * The engine of the RDS instance.
7321
+ * </p>
7322
+ * @public
7323
+ */
7324
+ engine?: string;
7325
+ /**
7326
+ * <p>
7327
+ * The database engine version.
7328
+ * </p>
7329
+ * @public
7330
+ */
7331
+ engineVersion?: string;
7332
+ /**
7333
+ * <p>
7334
+ * The DB instance class of the current RDS instance.
7335
+ * </p>
7336
+ * @public
7337
+ */
7338
+ currentDBInstanceClass?: string;
7339
+ /**
7340
+ * <p>
7341
+ * The configuration of the current RDS storage.
7342
+ * </p>
7343
+ * @public
7344
+ */
7345
+ currentStorageConfiguration?: DBStorageConfiguration;
7346
+ /**
7347
+ * <p>
7348
+ * This indicates if the RDS instance is idle or not.
7349
+ * </p>
7350
+ * @public
7351
+ */
7352
+ idle?: Idle;
7353
+ /**
7354
+ * <p>
7355
+ * The finding classification of an Amazon RDS instance.
7356
+ * </p>
7357
+ * <p>Findings for Amazon RDS instance include:</p>
7358
+ * <ul>
7359
+ * <li>
7360
+ * <p>
7361
+ * <b>
7362
+ * <code>Underprovisioned</code>
7363
+ * </b> —
7364
+ * When Compute Optimizer detects that there’s not enough resource specifications, an Amazon RDS
7365
+ * is considered under-provisioned.</p>
7366
+ * </li>
7367
+ * <li>
7368
+ * <p>
7369
+ * <b>
7370
+ * <code>Overprovisioned</code>
7371
+ * </b> —
7372
+ * When Compute Optimizer detects that there’s excessive resource specifications, an Amazon RDS
7373
+ * is considered over-provisioned.</p>
7374
+ * </li>
7375
+ * <li>
7376
+ * <p>
7377
+ * <b>
7378
+ * <code>Optimized</code>
7379
+ * </b> —
7380
+ * When the specifications of your Amazon RDS instance meet the performance requirements
7381
+ * of your workload, the service is considered optimized.</p>
7382
+ * </li>
7383
+ * </ul>
7384
+ * @public
7385
+ */
7386
+ instanceFinding?: RDSInstanceFinding;
7387
+ /**
7388
+ * <p>
7389
+ * The finding classification of Amazon RDS storage.
7390
+ * </p>
7391
+ * <p>Findings for Amazon RDS instance include:</p>
7392
+ * <ul>
7393
+ * <li>
7394
+ * <p>
7395
+ * <b>
7396
+ * <code>Underprovisioned</code>
7397
+ * </b> —
7398
+ * When Compute Optimizer detects that there’s not enough storage, an Amazon RDS
7399
+ * is considered under-provisioned.</p>
7400
+ * </li>
7401
+ * <li>
7402
+ * <p>
7403
+ * <b>
7404
+ * <code>Overprovisioned</code>
7405
+ * </b> —
7406
+ * When Compute Optimizer detects that there’s excessive storage, an Amazon RDS
7407
+ * is considered over-provisioned.</p>
7408
+ * </li>
7409
+ * <li>
7410
+ * <p>
7411
+ * <b>
7412
+ * <code>Optimized</code>
7413
+ * </b> —
7414
+ * When the storage of your Amazon RDS meet the performance requirements
7415
+ * of your workload, the service is considered optimized.</p>
7416
+ * </li>
7417
+ * </ul>
7418
+ * @public
7419
+ */
7420
+ storageFinding?: RDSStorageFinding;
7421
+ /**
7422
+ * <p>
7423
+ * The reason for the finding classification of an Amazon RDS instance.
7424
+ * </p>
7425
+ * @public
7426
+ */
7427
+ instanceFindingReasonCodes?: RDSInstanceFindingReasonCode[];
7428
+ /**
7429
+ * <p>
7430
+ * The reason for the finding classification of Amazon RDS storage.
7431
+ * </p>
7432
+ * @public
7433
+ */
7434
+ storageFindingReasonCodes?: RDSStorageFindingReasonCode[];
7435
+ /**
7436
+ * <p>
7437
+ * An array of objects that describe the recommendation options for the Amazon RDS instance.
7438
+ * </p>
7439
+ * @public
7440
+ */
7441
+ instanceRecommendationOptions?: RDSDBInstanceRecommendationOption[];
7442
+ /**
7443
+ * <p>
7444
+ * An array of objects that describe the recommendation options for Amazon RDS storage.
7445
+ * </p>
7446
+ * @public
7447
+ */
7448
+ storageRecommendationOptions?: RDSDBStorageRecommendationOption[];
7449
+ /**
7450
+ * <p>
7451
+ * An array of objects that describe the utilization metrics of the Amazon RDS.
7452
+ * </p>
7453
+ * @public
7454
+ */
7455
+ utilizationMetrics?: RDSDBUtilizationMetric[];
7456
+ /**
7457
+ * <p>
7458
+ * Describes the effective recommendation preferences for Amazon RDS.
7459
+ * </p>
7460
+ * @public
7461
+ */
7462
+ effectiveRecommendationPreferences?: RDSEffectiveRecommendationPreferences;
7463
+ /**
7464
+ * <p>
7465
+ * The number of days the Amazon RDS utilization metrics were analyzed.
7466
+ * </p>
7467
+ * @public
7468
+ */
7469
+ lookbackPeriodInDays?: number;
7470
+ /**
7471
+ * <p>
7472
+ * The timestamp of when the Amazon RDS recommendation was last generated.
7473
+ * </p>
7474
+ * @public
7475
+ */
7476
+ lastRefreshTimestamp?: Date;
7477
+ /**
7478
+ * <p>
7479
+ * A list of tags assigned to your Amazon RDS recommendations.
7480
+ * </p>
7481
+ * @public
7482
+ */
7483
+ tags?: Tag[];
7484
+ }
7485
+ /**
7486
+ * @public
7487
+ */
7488
+ export interface GetRDSDatabaseRecommendationsResponse {
7489
+ /**
7490
+ * <p>
7491
+ * The token to advance to the next page of Amazon RDS recommendations.
7492
+ * </p>
7493
+ * @public
7494
+ */
7495
+ nextToken?: string;
7496
+ /**
7497
+ * <p>
7498
+ * An array of objects that describe the Amazon RDS recommendations.
7499
+ * </p>
7500
+ * @public
7501
+ */
7502
+ rdsDBRecommendations?: RDSDBRecommendation[];
7503
+ /**
7504
+ * <p>
7505
+ * An array of objects that describe errors of the request.
7506
+ * </p>
7507
+ * @public
7508
+ */
7509
+ errors?: GetRecommendationError[];
7510
+ }
7511
+ /**
7512
+ * @public
7513
+ */
7514
+ export interface GetRecommendationPreferencesRequest {
7515
+ /**
7516
+ * <p>The target resource type of the recommendation preference for which to return
7517
+ * preferences.</p>
7518
+ * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
7519
+ * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
7520
+ * encompasses only instances that are part of an Auto Scaling group.</p>
7521
+ * @public
7522
+ */
7523
+ resourceType: ResourceType | undefined;
7524
+ /**
7525
+ * <p>An object that describes the scope of the recommendation preference to return.</p>
7526
+ * <p>You can return recommendation preferences that are created at the organization level
7527
+ * (for management accounts of an organization only), account level, and resource level.
7528
+ * For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Activating
7529
+ * enhanced infrastructure metrics</a> in the <i>Compute Optimizer User
7530
+ * Guide</i>.</p>
7531
+ * @public
7532
+ */
7533
+ scope?: Scope;
7534
+ /**
7535
+ * <p>The token to advance to the next page of recommendation preferences.</p>
7536
+ * @public
7537
+ */
7538
+ nextToken?: string;
7539
+ /**
7540
+ * <p>The maximum number of recommendation preferences to return with a single
7541
+ * request.</p>
7542
+ * <p>To retrieve the remaining results, make another request with the returned
7543
+ * <code>nextToken</code> value.</p>
7544
+ * @public
7545
+ */
7546
+ maxResults?: number;
7547
+ }
7548
+ /**
7549
+ * @public
7550
+ * @enum
7551
+ */
7552
+ export declare const SavingsEstimationMode: {
7553
+ readonly AFTER_DISCOUNTS: "AfterDiscounts";
7554
+ readonly BEFORE_DISCOUNTS: "BeforeDiscounts";
7555
+ };
7556
+ /**
7557
+ * @public
7558
+ */
7559
+ export type SavingsEstimationMode = (typeof SavingsEstimationMode)[keyof typeof SavingsEstimationMode];
7560
+ /**
7561
+ * <p>Describes a recommendation preference.</p>
7562
+ * @public
7563
+ */
7564
+ export interface RecommendationPreferencesDetail {
7565
+ /**
7566
+ * <p>An object that describes the scope of the recommendation preference.</p>
7567
+ * <p>Recommendation preferences can be created at the organization level (for management
7568
+ * accounts of an organization only), account level, and resource level. For more
7569
+ * information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Activating
7570
+ * enhanced infrastructure metrics</a> in the <i>Compute Optimizer User
7571
+ * Guide</i>.</p>
7572
+ * @public
7573
+ */
7574
+ scope?: Scope;
7575
+ /**
7576
+ * <p>The target resource type of the recommendation preference to create.</p>
7577
+ * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
7578
+ * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
7579
+ * encompasses only instances that are part of an Auto Scaling group.</p>
7580
+ * @public
7581
+ */
7582
+ resourceType?: ResourceType;
7583
+ /**
7584
+ * <p>The status of the enhanced infrastructure metrics recommendation preference.</p>
7585
+ * <p>When the recommendations page is refreshed, a status of <code>Active</code> confirms
7586
+ * that the preference is applied to the recommendations, and a status of
7587
+ * <code>Inactive</code> confirms that the preference isn't yet applied to
7588
+ * recommendations.</p>
7589
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/compute-optimizer/latest/ug/enhanced-infrastructure-metrics.html">Enhanced
7590
+ * infrastructure metrics</a> in the <i>Compute Optimizer User
7591
+ * Guide</i>.</p>
7592
+ * @public
7593
+ */
7594
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics;
7595
+ /**
7596
+ * <p>The status of the inferred workload types recommendation preference.</p>
7597
+ * <p>When the recommendations page is refreshed, a status of <code>Active</code> confirms
7598
+ * that the preference is applied to the recommendations, and a status of
7599
+ * <code>Inactive</code> confirms that the preference isn't yet applied to
7600
+ * recommendations.</p>
7601
+ * @public
7602
+ */
7603
+ inferredWorkloadTypes?: InferredWorkloadTypesPreference;
7604
+ /**
7605
+ * <p> An object that describes the external metrics recommendation preference. </p>
7606
+ * <p> If the preference is applied in the latest recommendation refresh, an object with a
7607
+ * valid <code>source</code> value appears in the response. If the preference isn't applied
7608
+ * to the recommendations already, then this object doesn't appear in the response. </p>
7609
+ * @public
7610
+ */
7611
+ externalMetricsPreference?: ExternalMetricsPreference;
7612
+ /**
7613
+ * <p>
7614
+ * The preference to control the number of days the utilization metrics of the Amazon Web Services resource are analyzed.
7615
+ * If the preference isn’t set, this object is null.
7616
+ * </p>
7617
+ * @public
7618
+ */
7619
+ lookBackPeriod?: LookBackPeriodPreference;
7620
+ /**
7621
+ * <p>
7622
+ * The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom.
7623
+ * If the preference isn’t set, this object is null.
7624
+ * </p>
7625
+ * <note>
7626
+ * <p>This preference is only available for the Amazon EC2 instance resource type.</p>
7627
+ * </note>
7628
+ * @public
7629
+ */
7630
+ utilizationPreferences?: UtilizationPreference[];
7631
+ /**
7632
+ * <p>
7633
+ * The preference to control which resource type values are considered when generating rightsizing recommendations.
7634
+ * This object resolves any wildcard expressions and returns the effective list of candidate resource type values.
7635
+ * If the preference isn’t set, this object is null.
7636
+ * </p>
7637
+ * @public
7638
+ */
7639
+ preferredResources?: EffectivePreferredResource[];
7640
+ /**
7641
+ * <p>
7642
+ * Describes the savings estimation mode used for calculating savings opportunity.
7643
+ * </p>
7644
+ * <p>Only the account manager or delegated administrator of your organization can activate this preference.</p>
7645
+ * @public
7646
+ */
7647
+ savingsEstimationMode?: SavingsEstimationMode;
7648
+ }
7649
+ /**
7650
+ * @public
7651
+ */
7652
+ export interface GetRecommendationPreferencesResponse {
7653
+ /**
7654
+ * <p>The token to use to advance to the next page of recommendation preferences.</p>
7655
+ * <p>This value is null when there are no more pages of recommendation preferences to
7656
+ * return.</p>
7657
+ * @public
7658
+ */
7659
+ nextToken?: string;
7660
+ /**
7661
+ * <p>An array of objects that describe recommendation preferences.</p>
7662
+ * @public
7663
+ */
7664
+ recommendationPreferencesDetails?: RecommendationPreferencesDetail[];
7665
+ }
7666
+ /**
7667
+ * @public
7668
+ */
7669
+ export interface GetRecommendationSummariesRequest {
7670
+ /**
7671
+ * <p>The ID of the Amazon Web Services account for which to return recommendation
7672
+ * summaries.</p>
7673
+ * <p>If your account is the management account of an organization, use this parameter to
7674
+ * specify the member account for which you want to return recommendation summaries.</p>
7675
+ * <p>Only one account ID can be specified per request.</p>
7676
+ * @public
7677
+ */
7678
+ accountIds?: string[];
7679
+ /**
7680
+ * <p>The token to advance to the next page of recommendation summaries.</p>
7681
+ * @public
7682
+ */
7683
+ nextToken?: string;
7684
+ /**
7685
+ * <p>The maximum number of recommendation summaries to return with a single request.</p>
7686
+ * <p>To retrieve the remaining results, make another request with the returned
7687
+ * <code>nextToken</code> value.</p>
7688
+ * @public
7689
+ */
7690
+ maxResults?: number;
7691
+ }
7692
+ /**
7693
+ * <p>Describes the performance risk ratings for a given resource type.</p>
7694
+ * <p>Resources with a <code>high</code> or <code>medium</code> rating are at risk of not
7695
+ * meeting the performance needs of their workloads, while resources with a
7696
+ * <code>low</code> rating are performing well in their workloads.</p>
7697
+ * @public
7698
+ */
7699
+ export interface CurrentPerformanceRiskRatings {
7700
+ /**
7701
+ * <p>A count of the applicable resource types with a high performance risk rating.</p>
7702
+ * @public
7703
+ */
7704
+ high?: number;
7705
+ /**
7706
+ * <p>A count of the applicable resource types with a medium performance risk rating.</p>
7707
+ * @public
7708
+ */
7709
+ medium?: number;
7710
+ /**
7711
+ * <p>A count of the applicable resource types with a low performance risk rating.</p>
7712
+ * @public
7713
+ */
7714
+ low?: number;
7715
+ /**
7716
+ * <p>A count of the applicable resource types with a very low performance risk
7717
+ * rating.</p>
7718
+ * @public
7719
+ */
7720
+ veryLow?: number;
7721
+ }
7722
+ /**
7723
+ * <p>
7724
+ * The estimated monthly savings after you adjust the configurations of your instances running on the
7725
+ * inferred workload types to the recommended configurations. If the <code>inferredWorkloadTypes</code>
7726
+ * list contains multiple entries, then the savings are the sum of the monthly savings from instances
7727
+ * that run the exact combination of the inferred workload types.
7728
+ * </p>
7729
+ * @public
7730
+ */
7731
+ export interface InferredWorkloadSaving {
7732
+ /**
7733
+ * <p>The applications that might be running on the instance as inferred by Compute Optimizer.</p>
7734
+ * <p>Compute Optimizer can infer if one of the following applications might be running on
7735
+ * the instance:</p>
7736
+ * <ul>
7737
+ * <li>
7738
+ * <p>
7739
+ * <code>AmazonEmr</code> - Infers that Amazon EMR might be running on
7740
+ * the instance.</p>
7741
+ * </li>
6631
7742
  * <li>
6632
7743
  * <p>
6633
7744
  * <code>ApacheCassandra</code> - Infers that Apache Cassandra might be running
@@ -6846,10 +7957,6 @@ export interface PutRecommendationPreferencesRequest {
6846
7957
  * <p>The <code>Ec2Instance</code> option encompasses standalone instances and instances
6847
7958
  * that are part of Auto Scaling groups. The <code>AutoScalingGroup</code> option
6848
7959
  * encompasses only instances that are part of an Auto Scaling group.</p>
6849
- * <note>
6850
- * <p>The valid values for this parameter are <code>Ec2Instance</code> and
6851
- * <code>AutoScalingGroup</code>.</p>
6852
- * </note>
6853
7960
  * @public
6854
7961
  */
6855
7962
  resourceType: ResourceType | undefined;