How to Build a Platform that can Process 60 Terabytes of Data a Day PRESENTED BY Basil Shikin VP of Engineering, AppLovin October, 2015
How to Build a Platform That Can Process 60 Terabytes of Data a Day2 30 billion ad requests per day 900μs median latency 100TB of data processed per day 9 data centers SYSTEM STATS
3How to Build a Platform That Can Process 60 Terabytes of Data a Day THE EVOLUTION Applovin Stack Evolution Overview
Technology that Delivers Higher Ad Revenues4 Define what matters to the engineering and business Look for major improvements 2 Always be monitoring 31 KEY STEPS How to Navigate the Scaling Journey?
How to Build a Platform That Can Process 60 Terabytes of Data a Day5 KEY PERFORMANCE INDICATORS
6 Revenue / Ads shown Median Request Latency Cost of Infrastructure How to Build a Platform That Can Process 60 Terabytes of Data a Day ENGINEERING KPI
How to Build a Platform That Can Process 60 Terabytes of Data a Day7 300 Servers 200 QPS 350K QPS 25K QPS 170K QPS 900 Servers 500 Servers 300 Servers Infrastructure Reduction
8How to Build a Platform That Can Process 60 Terabytes of Data a Day Why metrics matter? Easy to Measure 1 Both Engineering and Business Sides Understand 2 Tested in Battle 3
How to Build a Platform That Can Process 60 Terabytes of Data a Day9 MAJOR IMPROVEMENTS
Membase Now it is Couchbase Simple Integration with PHP Commonly Known A Quest For The Perfect Cache GROWTH 10 How to Build a Platform That Can Process 60 Terabytes of Data a Day Redis Persists Data Has Basic Transactions Has Basic Replication CCache Home Grown Read Only Distributed Via Torrents mmap'ed Into Memory
How to Build a Platform That Can Process 60 Terabytes of Data a Day11 SQL StoreExternal Cache RAM Cache Ad Server BEFORE AFTER Ad Data Infrastructure
12How to Build a Platform That Can Process 60 Terabytes of Data a Day How we think about components? AVAILABILITY Fault Tolerance Recovery Speed REPLICATION Cross-DC Network PERFORMANCE Memory Connections PLATFORM RISK Stack Familiarity Compatibility
How to Build a Platform That Can Process 60 Terabytes of Data a Day13 CONSTANT MONITORING
How to Build a Platform That Can Process 60 Terabytes of Data a Day14 Metric Visualization
How to Build a Platform That Can Process 60 Terabytes of Data a Day15 BeforeAfter mechAdam
What are our monitoring milestones? MONITORING BASICS HERE’S HOW BRANDS USE OUR PLATFORM Create relevant in-app campaigns HEARTBEAT Availability Hardware Network APPLICATION App-Specific Built-in Third-party VISUALIZATION Find Correlations Grafana 65" Monitors FEEDBACK LOOP Alerts Learning Trends How to Build a Platform That Can Process 60 Terabytes of Data a Day16
17How to Build a Platform That Can Process 60 Terabytes of Data a Day THE EVOLUTION Applovin Stack Evolution Revisted
SELECTED PARTNERS THANK YOU