Download - Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Transcript
Page 1: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Joe Lichtenberg

VP Advertising and Analytics, Mirror Image

[email protected]

Couchbase Connect

October 21, 2014

Using Couchbase and XDCR for Real-Time Advertising Applications

Page 2: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Media Delivery

Content Logic

Mirror Image 1.0 (c. 1997): Content Delivery Network

Page 3: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Media DeliveryEdge Computing

Content LogicContent Logic

Mirror Image 2.0: Edge Computing + Media Delivery

Page 4: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Media DeliveryEdge Computing

Content LogicContent Logic

Dynamic Delivery: Edge Computing + Media Delivery

Page 5: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Synchronized Operations Worldwide

Page 6: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Obligatory Marketing Slide

Extensive functional capabilities

Personalized expert customization and support

High capacity, worldwide, real time infrastructure

Edge Computing

Geo-Distributed Database*

Live and On-Demand Video

Object Delivery

SSL Delivery

Token-Based Access Control

Reporting and Analytics

Knowledgeable, dedicated,in-house support team

Fully staffed, 24 x 7 Network Operations Center (NOC)

Expert professional servicesresources

High capacity, centralizedserver model

Exceptional performance, scalability, and availabilitywith SLA guarantees

Elastic scaling within and across geographies

Worldwide coverage

15+ years of experience

Mirror Image’s Dynamic Delivery Network

powers hundreds of billions of real-time requests for mission critical applications

throughout the Advertising and Advertising Technology ecosystem

Page 7: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Why Focus on Advertising and Ad-Tech?

-Lots of prospects-Requires fast response times to each visitor’s browser / device

Page 8: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Ad Tech Ecosystem

Source: Luma Partners

Page 9: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Source: www.iab.net/data

Ad TechEcosystem – Another View

Page 10: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Request/Response/Feedback Cycle

• Request Logic

– Customized behavior based on explicit and derived request attributes such as IP

address, user-agent, query parameters, cookie values, geo-location, …

• Response Logic

– Personalized javascript, XML, HTML; Transparent pixel GIFs; Cookie modifications;

Transformations, token substitutions…

• Edge Data Sets

– Shared data sets such as IAB Spiders & Bots, WURFL (Device DB), IP-GeoLocation

– Customer’s Key-Value Data

• Customized Data Collection

– Delivery of log files to customers as part of feedback cycle

Page 11: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Edge Computing Flow

• IAB Spiders & Bots Data• Mobile Device Data Sets

• IP – Geolocation Data Sets• Custom Key-Value Data In Memory*

Page 12: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

What Problems Does The CS Implementation Solve?

• Customers and prospects have requirements that we workwith their large and growing data sets in real-time at theedge of the internet

• Our “flat file” implementation required moving the entirecontents of the files into memory on each server at startup,and…

• … customers were bumping up against data size limitations

Page 13: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Edge Computing Flow

• IAB Spiders & Bots Data• Mobile Device Data Sets

• IP – Geolocation Data Sets• Custom Key-Value Data In Memory

• Couchbase Key-Value Distributed Database

Page 14: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

• Real-time GUID database

• Real-time cookie matching

• Contextual targeting

• Ad fraud / brand safety

• Cross-device user matching / audience de-duplication

• In session execution of batch-developed analytics

• Any web or mobile database-backed application with geographically dispersed users requiring fast end-to-end response times

Geo-Distributed Database: Use Cases

Page 15: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Geo-Distributed Database: Requirements

• High performance lookup and write capabilities at the edge

• Ability to manage large custom data sets for each customer application

• Low latency replication (aka XDCR)

• Ability to replicate to different regions per application / different data per region

• Key-value lookups only– no need for complex queries or SQL

• Reliability

Page 16: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Implementation Details

• Master hub sites have a 3 node Couchbase cluster for

reliability

• Edge sites start with a single instance for real-time RW

access, and scale out via clustering based on demand

• Edges can failover to nearby edges for availability

• Limited number of buckets

– Multi-tenant

– Geographic regions

– Customer-specific bucket(s) are optional

Page 17: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Implementation Details

• Phase 1 (in production): Read-only edges; master

hubs; data import / ETL servers

• Phase 2: Extends read-only behavior to virtual

locations

• Phase 3: Adds write support on edges, bi-

directional XDCR back to each master hub

Page 18: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

GDD “Marchitecture” - Read Only

Page 19: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

GDD “Marchitecture” - Read/Write

Page 20: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Master Hub Configuration

CustomizableETL Servers

FTP UploadStorage

CouchbaseEdge Instance

ETL MasterCouchbase 3-Node Cluster

ECF Server Farm

Page 21: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Distributed Star Network Architecture

Page 22: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

• Globally distributed, consistent data -> High performance globally

• Schema-less data model -> Flexibility

• Scalable -> Handles traffic and data growth and spikes

• Fully managed service -> Including setup, maintenance, replication, synchronization, backup, security, and 24x7 monitoring

• Subscription-based billing model -> No CAPEX, pay as you go

• Uses Couchbase Server -> Proven; active developer community

• Data privacy -> No conflicts of interest with our customers

GDD Key Benefits (or “Marketing Slide #2”)

Page 23: Using Couchbase and XDCR for Real-Time Advertising Applications: Couchbase Connect 2014

Questions??

Joe Lichtenberg

VP Advertising and Analytics, Mirror Image

[email protected]