The application pattern in a real-world use case
One of the case studies mentioned in the introductory chapter was an ad-tech use case. The Apex-based system powering that use case went into production in 2014 and fits the same pattern of the example that we will build in this chapter. Summarized at a high level, the system consumes log records from Apache Kafka, then aggregates these records into a dimensional model and provides the aggregates to a real-time dashboard that users can use to gain actionable insights into the performance of advertising campaigns. Time to insight is critical, as the ability to perform timely adjustments often translates to incremental revenue or reduced cost (or both) for the business:
The Apex-based implementation replaced a batch system that involved several hours of latency with a streaming pipeline that reduced latency to seconds (end-to-end, including data collection and ingestion). The dimension store holds the aggregated data in memory (conceptually,...