This post is co-written with Philipp Karg from BMW Group and Christopher Masurek from Data Reply.
Cost anomalies are hard to spot when you run 14,000 cloud accounts. BMW Group operates Cloud Efficiency Analytics (CLEA), an in-house FinOps system built on AWS with Reply that monitors more than 14,000 cloud accounts across BMW Group’s cloud estate. CLEA began as a set of dashboards in Amazon Quick Sight, which gave BMW employees visibility into their cloud spend. But a dashboard shows what already happened, and only when someone opens it.
To close that gap, CLEA now runs anomaly detection every day and sends email to account owners when spending departs from its expected pattern.
This post walks through the forecasting baseline, the filtering logic that decides which deviations are worth an alert, the alert engine, and the serverless architecture that processes every account daily for about $50 per month in compute.
CLEA ingests billing data daily from AWS Cost and Usage Reports (CUR), the primary source, along with the equivalent billing exports from the other providers in BMW Group’s estate. The raw data comprises around 3 billion rows across 500 columns per month. CLEA aggregates it to one consistent grain: daily cost per account per service. The data arrives with a one-day lag (T-1), so yesterday’s spend is analyzed and alerted on today. The pipeline is scheduled after AWS CUR delivery is confirmed complete to avoid partial-day data.
A single AWS account running Amazon Elastic Compute Cloud (Amazon EC2) , Amazon Simple Storage Service (Amazon S3) , AWS Lambda , and Amazon Relational Database Service (Amazon RDS) produces four daily cost time series, one per service.
Source link







