real time ads personalization @ spotify

29
May 6th, 2014 Real-Time Personalization with Ad Tech @Spotify Kinshuk Mishra [email protected] @_kinshukmishra 1

Upload: kinshuk-mishra

Post on 15-Jan-2015

776 views

Category:

Data & Analytics


2 download

DESCRIPTION

We talk about how Spotify is trying to solve the problem of ads personalization in near real-time to improve relevancy and engagement of ads.

TRANSCRIPT

Page 1: Real time ads personalization @ Spotify

May 6th, 2014

Real-Time Personalization with Ad Tech @Spotify

Kinshuk Mishra [email protected] @_kinshukmishra

1

Page 2: Real time ads personalization @ Spotify

About Me• @Spotify since 2011 • Data and Backend engineering • With the Monetization team

Page 3: Real time ads personalization @ Spotify

May 12, 2014

Spotify in numbersStarted in 2006, available in 56 markets 20+ million songs, 20,000 added daily 24+ million active users, 6+ million subscribers 1.5 billion playlists

Page 4: Real time ads personalization @ Spotify

May 12, 2014

Monetization at Spotify• $1 billion paid to rights holders since launch

• 1 in every 4 Spotify users is a paying subscriber

• Ad revenue pays for free tier music streaming

• Build platform to power artist and music label promotions

Page 5: Real time ads personalization @ Spotify

What is our mission?

• Power the free tier with ads customers love. – Delight users, brands and artists with standout

promotional experiences. – Deliver the right message for every moment.

5

Page 6: Real time ads personalization @ Spotify

Delight users, brands and artists with standout promotional experience

6

• Ad formats need to be

- Native

- Actionable

- Scalable

- Engaging

Page 7: Real time ads personalization @ Spotify

7

Spotlight

Page 8: Real time ads personalization @ Spotify

8

Album promotion

Page 9: Real time ads personalization @ Spotify

9

Sponsored Genre

Page 10: Real time ads personalization @ Spotify

10

Sponsored Genre

Page 11: Real time ads personalization @ Spotify

11

!(Right message for every moment)

Page 12: Real time ads personalization @ Spotify

Things we had to do

• Make ads context aware.

• Create measurable ad formats.

• Build tools to help brands understand their audience.

• Build flexible targeting infrastructure.

• Analyze user behavior to improve ad relevancy.

12

Page 13: Real time ads personalization @ Spotify

Why is real time interesting?

• True assessment of the context - current view, last track, etc.

• Immediate feedback - ad clicked, followed a playlist, etc.

• Increased ad opportunities - hyperlocal, current mood, etc.

13

source : http://nativemobile.com/tag/real-time-bidding

Page 14: Real time ads personalization @ Spotify

How to serve right message for every moment ?

• Fix the WTFs for ads in the music context - Realtime short window activity analysis

• Improve ad relevancy based on user behavior - (Realtime + Batch) long window activity analysis

14

Page 15: Real time ads personalization @ Spotify

Some quick wins

• Fix the WTFs for ads in the music context - Fix the “Not Safe For Kids” ads problem. - Fix the relevancy of ads in your music session.

• Improve ad relevancy based on user behavior - Fix ad relevancy based on user’s musical taste.

15

Page 16: Real time ads personalization @ Spotify

Targeting Architecture16

Page 17: Real time ads personalization @ Spotify

Desired overall design 17

Page 18: Real time ads personalization @ Spotify

Our requirements

• Scalable log collection • Capability to process logs in batch and realtime mode and aggregate user activity

• Capability to store user profiles and enable serve time lookups

• Ability to update and add new features to existing user profiles

Page 19: Real time ads personalization @ Spotify

Bigdata @Spotify and choices

• 700 node hadoop cluster • 400 GB service logs daily • 4.5 TB user data daily • 7500 hadoop jobs daily • 64 TB data generated daily • YARN Map-Reduce, Giraph, Storm, Spark, etc.

!

19

Page 20: Real time ads personalization @ Spotify

Overall design and tech choices20

Page 21: Real time ads personalization @ Spotify

Source : http://tfosuccess.com/day-106-107-the-storm-arrived/

What is Storm?

• Real time stream processing • Like Hadoop without HDFS • Like Map/Reduce with many reducer steps • Fault tolerant and guaranteed message processing

21

Page 22: Real time ads personalization @ Spotify

Storm @Spotify

• storm-0.8.0 • 22 node cluster • 15+ topologies • 200k tuples/second • ads, recommendation, analytics, monitoring, etc.

22

source: http://storm.incubator.apache.org/

Page 23: Real time ads personalization @ Spotify

Use-case

Use real-time session genre information to control

ad serving in real-time

23

Page 24: Real time ads personalization @ Spotify

Realtime activity analysis • Kafka -> Storm -> Memcached -> Targeting Backend

• Soft realtime

• Easy to scale

24

Page 25: Real time ads personalization @ Spotify

Getting data25

Page 26: Real time ads personalization @ Spotify

Getting data across the globe26

Page 27: Real time ads personalization @ Spotify

Genre Topology27

Page 28: Real time ads personalization @ Spotify

May 12, 2014

Measuring effectiveness• Build ad quality scores from lower-level metrics

• Positive response, avoidance, etc.

• A/B test hypotheses, evaluate against quality scores

• Build quality score optimization into real-time system

Page 29: Real time ads personalization @ Spotify

May 6th, 2014

Want to join the band?https://www.spotify.com/us/jobs/ or https://twitter.com/Spotifyjobs !

Kinshuk Mishra [email protected] @_kinshukmishra