How to use Flex report to calculate Database Saving plans
Below is sample Flex report query that can be used to calculate Database Savings Plans.
{
"sqlStatement": "SELECT timeInterval_Month AS Month, lineItem_ResourceId AS Resource_ID, product_region AS Region, product_databaseEngine AS Database_Engine, product_instanceType AS Instance_Type, savingsPlan_SavingsPlanARN AS Savings_Plan_ARN, round(SUM(pricing_publicOnDemandCost), 2) AS OnDemand_Equivalent_Cost, round(SUM(savingsPlan_SavingsPlanEffectiveCost), 2) AS Actual_SP_Cost, round( ( SUM(pricing_publicOnDemandCost) - SUM(savingsPlan_SavingsPlanEffectiveCost) ), 2 ) AS Savings_Generated, CASE WHEN SUM(pricing_publicOnDemandCost) > 0 THEN ROUND( ( SUM(pricing_publicOnDemandCost) - SUM(savingsPlan_SavingsPlanEffectiveCost) ) / SUM(pricing_publicOnDemandCost) * 100, 2 ) ELSE 0 END AS Savings_Percentage FROM AWS_CUR WHERE lineItem_LineItemType = 'SavingsPlanCoveredUsage' AND savingsPlan_OfferingType = 'DatabaseSavingsPlans' AND lineItem_ProductCode IN ( 'AmazonRDS', 'AmazonAurora', 'AmazonDocDB', 'AmazonNeptune', 'AmazonDynamoDB' ) GROUP BY timeInterval_Month, lineItem_ResourceId, product_region, product_databaseEngine, product_instanceType, savingsPlan_SavingsPlanARN",
"needBackLinkingForTags": true,
"dataGranularity": "MONTHLY",
"timeRange": {
"last": 12
},
"limit": -1
}