SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Distributed Quota Management
in an Ad Serving Environment
How Reduce Data Manages its budgets without exceeding ad spends

http://reducedata.com
Problem
Managing Quotas / Budgets in An Ad Serving
Environment is not a trivial task.
Ad Campaign Budgets Across a
Distributed infrastructure when not managed
properly leads to excess spends.
Previous Solution
Sync Every 5 seconds
Cassandra Data

Ad Server
Ad Server
Ad Server

Kafka Pipe

Data processing
system

Hbase based
campaign
reporting data
The Issues
Simple Syncing of data across distributed data structure is easy but sticking
within limits is tough.
5 second refresh not guaranteed to be upto date. Reporting delays caused
spends to exceed.
Server specific budget was not proportionately allocated, based on historical
availability of traffic on that server.
No clear mechanism of allocation of budget spends or reallocation (when
servers go down).
Solution
●

●

●

Our Solution was based on this white paper
titled:
Quota enforcement for high-performance
distributed storage systems
http://www.ssrc.ucsc.edu/Papers/pollackmsst07.pdf
Key Concepts
●
●

●

●

Epoc : A day is divided into epocs.
At each epoc DSPServers request for quota from Quota
Management Cluster.
Ad Server doesn't decide how much quota it needs instead
a new entity the Quota Management Cluster decides how
much quota to assign to it.
Traffic for a Campaign maybe available at multiple
endpoints(US East, US West, Asia)
How Quotas are Decided
●

●

Quota is distributed to end points (different data centre locations) and to
the individual servers depending on the historical traffic / consumption
of budgets.
Two factors that decide how much is allocated in each epoc:
●

●

Pacing variable as decided by the advertiser
Historical consumption data (for example has the campaign been
spending lesser than planned?, if so, increase EPOC allocation)
Quota Management Cluster
●

●

Quota management cluster has multiple servers and needs
a data store which supports transactions.
The Quota Management Cluster is Synchronized using
Zookeper.
Logical Architecture
Sync at every EPOC 2 ways
Ad Server
Ad Server
Ad Server

Ad servers can sync with the Quota management server at EPOC which could
be say every hour.
Ad servers refund unspent balance to Quota Management Cluster.
Quota management can be in one location initially but can be made redundant
to each data centre.
Quota Management Cluster uses a shared data store on cassandra to sync its
other nodes for allocation.

Quota
Quota
Management
Management
Server
Server

Cassandra based
Cassandra
Quota data based
Quota data

Zookeeper
Zookeeper
Sync Process
Ad Server

Quota Management Server

Zookeeper

Cassandra

Sync at every EPOC
Push budgets, get unspent amounts
Sync allocation data to cassandra cluster
Check Server status
Get list of available ad servers
Push available budgets on a restart.

Calculate available spends
Handling Ad Server Shut Downs
●

●

Zookeeper tracks server failures.
Quota management system reallocates remaining budget
(last budget allocated - amount spent) to a new or the same
server when it restarts.
Handling Communications
The Quota Management Servers talk to Ad Servers using
REST Calls. This required lowest development time and was
built on top of the existing stack.
Alternatives we considered but decided against.
2. Kafka
3. RPC over protobuf
Get in Touch
Engineering Team
Reduce Data
reducedata.com
twitter: @reducedata
facebook.com/reducedata
engineering@reducedata.com

Weitere ähnliche Inhalte

Andere mochten auch

“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...
“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...
“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...The Hive
 
Advertisement ad agencies cb_ ind mktg_
Advertisement  ad agencies  cb_ ind mktg_Advertisement  ad agencies  cb_ ind mktg_
Advertisement ad agencies cb_ ind mktg_Ritesh Anand
 
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookThe Hive
 
Creative process in advertising
Creative process in advertisingCreative process in advertising
Creative process in advertisingAnup Thapa
 
The Structure of Advertising Agencies
The Structure of Advertising AgenciesThe Structure of Advertising Agencies
The Structure of Advertising AgenciesHeleen Mills
 
Advertising Agency
Advertising AgencyAdvertising Agency
Advertising AgencyMohsin Akbar
 
Advertising agency and its functions
Advertising agency and its functionsAdvertising agency and its functions
Advertising agency and its functionsHarshita Tandon
 
Ad agency and its functions
Ad agency and its functionsAd agency and its functions
Ad agency and its functionsvirdhi joshi
 
An Introduction to Online Advertising
An Introduction to Online AdvertisingAn Introduction to Online Advertising
An Introduction to Online Advertisingsuhasmallya
 
Presentation about servers
Presentation about serversPresentation about servers
Presentation about serversSasin Prabu
 
Project Management in Advertising
Project Management in AdvertisingProject Management in Advertising
Project Management in AdvertisingKaye I. Smith, PMP
 
Understanding the Online Advertising Technology Landscape
Understanding the Online Advertising Technology Landscape Understanding the Online Advertising Technology Landscape
Understanding the Online Advertising Technology Landscape Karina Sanz
 
Human Resource planning
Human Resource planningHuman Resource planning
Human Resource planningAnything Group
 

Andere mochten auch (15)

“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...
“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...
“ High Precision Analytics for Healthcare: Promises and Challenges” by Sriram...
 
Advertisement ad agencies cb_ ind mktg_
Advertisement  ad agencies  cb_ ind mktg_Advertisement  ad agencies  cb_ ind mktg_
Advertisement ad agencies cb_ ind mktg_
 
Advertising Design
Advertising DesignAdvertising Design
Advertising Design
 
Basic TV Ad Production
Basic TV Ad ProductionBasic TV Ad Production
Basic TV Ad Production
 
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of FacebookTech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
Tech Talk: RocksDB Slides by Dhruba Borthakur & Haobo Xu of Facebook
 
Creative process in advertising
Creative process in advertisingCreative process in advertising
Creative process in advertising
 
The Structure of Advertising Agencies
The Structure of Advertising AgenciesThe Structure of Advertising Agencies
The Structure of Advertising Agencies
 
Advertising Agency
Advertising AgencyAdvertising Agency
Advertising Agency
 
Advertising agency and its functions
Advertising agency and its functionsAdvertising agency and its functions
Advertising agency and its functions
 
Ad agency and its functions
Ad agency and its functionsAd agency and its functions
Ad agency and its functions
 
An Introduction to Online Advertising
An Introduction to Online AdvertisingAn Introduction to Online Advertising
An Introduction to Online Advertising
 
Presentation about servers
Presentation about serversPresentation about servers
Presentation about servers
 
Project Management in Advertising
Project Management in AdvertisingProject Management in Advertising
Project Management in Advertising
 
Understanding the Online Advertising Technology Landscape
Understanding the Online Advertising Technology Landscape Understanding the Online Advertising Technology Landscape
Understanding the Online Advertising Technology Landscape
 
Human Resource planning
Human Resource planningHuman Resource planning
Human Resource planning
 

Kürzlich hochgeladen

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Distributed Quota Management in an Ad Ad Serving Environment OR How we manage ad spends across data centres without over spending

  • 1. Distributed Quota Management in an Ad Serving Environment How Reduce Data Manages its budgets without exceeding ad spends http://reducedata.com
  • 2. Problem Managing Quotas / Budgets in An Ad Serving Environment is not a trivial task. Ad Campaign Budgets Across a Distributed infrastructure when not managed properly leads to excess spends.
  • 3. Previous Solution Sync Every 5 seconds Cassandra Data Ad Server Ad Server Ad Server Kafka Pipe Data processing system Hbase based campaign reporting data
  • 4. The Issues Simple Syncing of data across distributed data structure is easy but sticking within limits is tough. 5 second refresh not guaranteed to be upto date. Reporting delays caused spends to exceed. Server specific budget was not proportionately allocated, based on historical availability of traffic on that server. No clear mechanism of allocation of budget spends or reallocation (when servers go down).
  • 5. Solution ● ● ● Our Solution was based on this white paper titled: Quota enforcement for high-performance distributed storage systems http://www.ssrc.ucsc.edu/Papers/pollackmsst07.pdf
  • 6. Key Concepts ● ● ● ● Epoc : A day is divided into epocs. At each epoc DSPServers request for quota from Quota Management Cluster. Ad Server doesn't decide how much quota it needs instead a new entity the Quota Management Cluster decides how much quota to assign to it. Traffic for a Campaign maybe available at multiple endpoints(US East, US West, Asia)
  • 7. How Quotas are Decided ● ● Quota is distributed to end points (different data centre locations) and to the individual servers depending on the historical traffic / consumption of budgets. Two factors that decide how much is allocated in each epoc: ● ● Pacing variable as decided by the advertiser Historical consumption data (for example has the campaign been spending lesser than planned?, if so, increase EPOC allocation)
  • 8. Quota Management Cluster ● ● Quota management cluster has multiple servers and needs a data store which supports transactions. The Quota Management Cluster is Synchronized using Zookeper.
  • 9. Logical Architecture Sync at every EPOC 2 ways Ad Server Ad Server Ad Server Ad servers can sync with the Quota management server at EPOC which could be say every hour. Ad servers refund unspent balance to Quota Management Cluster. Quota management can be in one location initially but can be made redundant to each data centre. Quota Management Cluster uses a shared data store on cassandra to sync its other nodes for allocation. Quota Quota Management Management Server Server Cassandra based Cassandra Quota data based Quota data Zookeeper Zookeeper
  • 10. Sync Process Ad Server Quota Management Server Zookeeper Cassandra Sync at every EPOC Push budgets, get unspent amounts Sync allocation data to cassandra cluster Check Server status Get list of available ad servers Push available budgets on a restart. Calculate available spends
  • 11. Handling Ad Server Shut Downs ● ● Zookeeper tracks server failures. Quota management system reallocates remaining budget (last budget allocated - amount spent) to a new or the same server when it restarts.
  • 12. Handling Communications The Quota Management Servers talk to Ad Servers using REST Calls. This required lowest development time and was built on top of the existing stack. Alternatives we considered but decided against. 2. Kafka 3. RPC over protobuf
  • 13. Get in Touch Engineering Team Reduce Data reducedata.com twitter: @reducedata facebook.com/reducedata engineering@reducedata.com