@@ -1420,69 +1420,69 @@ Resources:
14201420 Description : Identifies snapshots connected to AMI's with CUR data
14211421 Name : inventory_snapshot_connected_to_ami_with_CUR
14221422 QueryString : |
1423- with latest_snapshot as (
1424- select
1425- max(date_parse(collection_date, '%Y-%m-%d %T')) as snapshot_collection_date
1426- FROM optimization_data.inventory_snapshot_data
1427- ),
1428- recent_snapshots as (
1423+ with latest_snapshot as (
1424+ select
1425+ max(date_parse(collection_date, '%Y-%m-%d %T')) as snapshot_collection_date
1426+ FROM optimization_data.inventory_snapshot_data
1427+ ),
1428+ recent_snapshots as (
1429+ SELECT
1430+ Description,
1431+ ownerid,
1432+ snapshotid,
1433+ latest_snapshot.snapshot_collection_date,
1434+
1435+ CASE
1436+ WHEN substr(Description, 1, 22) = 'Created by CreateImage' THEN split_part(Description,' ', 5)
1437+ WHEN substr(Description, 2, 11) = 'Copied snap' THEN split_part(Description,' ', 9)
1438+ WHEN substr(Description, 1, 22) = 'Copied for Destination' THEN split_part(Description,' ', 4)
1439+ ELSE NULL
1440+ END AS snapshot_ami_id
1441+ FROM optimization_data.inventory_snapshot_data
1442+ INNER JOIN latest_snapshot ON latest_snapshot.snapshot_collection_date = date_parse(collection_date, '%Y-%m-%d %T')
1443+ ),
1444+ snapshot_costs as(
14291445 SELECT
1430- Description,
1431- ownerid,
1432- snapshotid,
1433- latest_snapshot.snapshot_collection_date,
1434-
1435- CASE
1436- WHEN substr(Description, 1, 22) = 'Created by CreateImage' THEN split_part(Description,' ', 5)
1437- WHEN substr(Description, 2, 11) = 'Copied snap' THEN split_part(Description,' ', 9)
1438- WHEN substr(Description, 1, 22) = 'Copied for Destination' THEN split_part(Description,' ', 4)
1439- ELSE NULL
1440- END AS snapshot_ami_id
1441- FROM optimization_data.inventory_snapshot_data
1442- INNER JOIN latest_snapshot ON latest_snapshot.snapshot_collection_date = date_parse(collection_date, '%Y-%m-%d %T')
1443- ),
1444- snapshot_costs as(
1445- SELECT
1446- SPLIT(line_item_resource_id,'/')[2] as snapshot_cur_id,
1447- SUM(CAST(line_item_unblended_cost AS DECIMAL(16,8))) AS sum_line_item_unblended_cost
1448- FROM
1449- cid_data_export.cur2
1450- WHERE
1451- product['product_name'] = 'Amazon Elastic Compute Cloud'
1452- AND line_item_usage_type LIKE '%%EBS%%Snapshot%%'
1453- AND line_item_line_item_type = 'Usage'
1454- GROUP BY
1455- line_item_resource_id),
1446+ SPLIT(line_item_resource_id,'/')[2] as snapshot_cur_id,
1447+ SUM(CAST(line_item_unblended_cost AS DECIMAL(16,8))) AS sum_line_item_unblended_cost
1448+ FROM
1449+ cid_data_export.cur2
1450+ WHERE
1451+ product['product_name'] = 'Amazon Elastic Compute Cloud'
1452+ AND line_item_usage_type LIKE '%%EBS%%Snapshot%%'
1453+ AND line_item_line_item_type = 'Usage'
1454+ GROUP BY
1455+ line_item_resource_id),
14561456
1457- latest_ami as (
1458- select
1459- max(date_parse(collection_date, '%Y-%m-%d %T')) as ami_last_collection_date
1460- FROM optimization_data.inventory_ami_data
1461- ),
1462- recent_amis as (
1463- SELECT
1464- imageid,
1465- description as ami_description,
1466- latest_ami.ami_last_collection_date
1467- FROM optimization_data.inventory_ami_data
1468- -- only see things that overlap
1469- INNER JOIN latest_ami ON latest_ami.ami_last_collection_date = date_parse(collection_date, '%Y-%m-%d %T')
1470- )
1457+ latest_ami as (
1458+ select
1459+ max(date_parse(collection_date, '%Y-%m-%d %T')) as ami_last_collection_date
1460+ FROM optimization_data.inventory_ami_data
1461+ ),
1462+ recent_amis as (
1463+ SELECT
1464+ imageid,
1465+ description as ami_description,
1466+ latest_ami.ami_last_collection_date
1467+ FROM optimization_data.inventory_ami_data
1468+ -- only see things that overlap
1469+ INNER JOIN latest_ami ON latest_ami.ami_last_collection_date = date_parse(collection_date, '%Y-%m-%d %T')
1470+ )
14711471
1472- SELECT
1473- recent_snapshots.*,
1474- recent_amis.*,
1475- CASE
1476- WHEN snapshot_ami_id = imageid THEN 'AMI Available'
1477- WHEN snapshot_ami_id LIKE 'ami%' THEN 'AMI Removed'
1478- ELSE 'Not AMI'
1479- END AS status,
1480- snapshot_costs.sum_line_item_unblended_cost
1481- FROM recent_snapshots
1482- LEFT JOIN recent_amis ON recent_snapshots.snapshot_ami_id = recent_amis.imageid
1483- LEFT JOIN snapshot_costs on recent_snapshots.snapshotid = snapshot_costs.snapshot_cur_id
1484- WHERE snapshot_ami_id is not NULL
1485- order by snapshotid
1472+ SELECT
1473+ recent_snapshots.*,
1474+ recent_amis.*,
1475+ CASE
1476+ WHEN snapshot_ami_id = imageid THEN 'AMI Available'
1477+ WHEN snapshot_ami_id LIKE 'ami%' THEN 'AMI Removed'
1478+ ELSE 'Not AMI'
1479+ END AS status,
1480+ snapshot_costs.sum_line_item_unblended_cost
1481+ FROM recent_snapshots
1482+ LEFT JOIN recent_amis ON recent_snapshots.snapshot_ami_id = recent_amis.imageid
1483+ LEFT JOIN snapshot_costs on recent_snapshots.snapshotid = snapshot_costs.snapshot_cur_id
1484+ WHERE snapshot_ami_id is not NULL
1485+ order by snapshotid
14861486
14871487
14881488 AthenaSnaphotAMIPricing :
0 commit comments