With Amazon Web Services it's possible to serve the needs of modern high performance advertising without breaking the bank. This session covers how AdRoll processes more than 60 billion requests per day in less than 100 milliseconds each using Amazon DynamoDB, Auto Scaling, and Elastic Load Balancing. This process generates more than 2 GB of data every single second, which will be processed and turned into useful models over the following hour. We discuss designing systems that can answer billions of latency-sensitive global requests every day and look into some tricks to pare down the costs.
6. Paris-New York: ~6000km
Speed of Light in fiber: 200,000 km/s
RTT latency without hops and copper: 60ms
Paris-New York: ~6000km
Speed of Light in fiber: 200,000 km/s
RTT latency without hops and copper: 60ms
6000
km
60 ms
c-RTT
7.
8.
9.
10. a
a
a
r
•Memcache
aOpensource
aMature
aBlazinglyfast
rNostrong guarantees
•Redis
aOpensource
rStoragescale
rNotreally distributed
rOperationallyintense.
•Hbase(we still use this)
aOpensource
aMaturingquickly
aGreatscale
rReallyhard to operate
39. Data Collection = Batch Layer
Bidding = Speed Layer
Data Collection
Data Storage
Global
Distribution
Bid Storage
Bidding
40. US East region
Availability Zone
Availability Zone
Elastic Load Balancing
instances
instances
Auto Scaling group
Amazon S3
Amazon Kinesis
41. US East region
Availability Zone Availability Zone
Elastic Load
Balancing
instances instances
Auto Scaling group
Amazon S3
Amazon
Kinesis
Apache
Storm
DynamoDB
US West region
EU West region
DynamoDB
DynamoDB
42. Data Collection Bidding
US East region
Availability Zone Availability Zone
Elastic Load Balancing
instances instances
Auto Scaling group
Amazon
S3
Amazon
Kinesis
Apache
Storm
DynamoDB
Availability Zone Availability Zone
Auto Scaling group
Elastic Load Balancing
43. Data Collection
•Amazon EC2, Elastic Load Balancing, Auto Scaling
Store
•Amazon S3 + Amazon Kinesis
Global Distribution
•Apache Storm on Amazon EC2
Bid Store
•DynamoDB
Bidding
•Amazon EC2, Elastic Load Balancing, Auto Scaling
Data CollectionBiddingAd Network 2Ad Network 1Auto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupAuto Scaling GroupApache Stormv2V3V3v1v2V3V3v1V2V3V3V1Auto Scaling GroupV3V4Elastic Load BalancingElastic Load BalancingElastic Load BalancingElastic Load BalancingDynamoDBWriteReadReadReadReadReadReadWriteWritesWriteWriteReadV3` Elastic Load BalancingElastic Load BalancingElastic Load BalancingElastic Load BalancingElastic Load BalancingElastic Load BalancingDynamoDBData CollectionBiddingDynamoDBWriteReadReadWriteWriteWriteAmazon S3Amazon Kinesis