Advertisers create advertisement campaigns and set both daily and lifetime budgets for a campaign. The ads backend systems provide the best experience for our advertisers by ensuring that a campaign's entire budget is spent through, nothing over or under.
An important factor in efficient delivery is the delay in the availability of budget spend data to the ad serving infrastructure.
In this talk, we will learn how we leveraged Kafka and Druid to provide real-time aggregations of spend against both daily and lifetime budgets. This led to significant decreases in overdelivery compared to the previous batch system, and savings of $LARGE_NUMBER_OF_DOLLARS