Streetlife's real time analytics stack

37
ANALYTICS

Transcript of Streetlife's real time analytics stack

Page 1: Streetlife's real time analytics stack

ANALYTICS

Page 2: Streetlife's real time analytics stack

• Local social network • Web, iOS and Android • 1.3M users in uk. • 1.5B events

Page 3: Streetlife's real time analytics stack
Page 4: Streetlife's real time analytics stack
Page 5: Streetlife's real time analytics stack
Page 6: Streetlife's real time analytics stack
Page 7: Streetlife's real time analytics stack
Page 8: Streetlife's real time analytics stack

analytics are core for our business

Page 9: Streetlife's real time analytics stack

we track millions of events a day

Page 10: Streetlife's real time analytics stack
Page 11: Streetlife's real time analytics stack
Page 12: Streetlife's real time analytics stack
Page 13: Streetlife's real time analytics stack
Page 14: Streetlife's real time analytics stack

Subject: Here's what your neighbours are talking about... To: [email protected]

Page 15: Streetlife's real time analytics stack

Subject: Here's what your neighbours are talking about... To: [email protected]

Page 16: Streetlife's real time analytics stack

Subject: Here's what your neighbours are talking about... To: [email protected]

Page 17: Streetlife's real time analytics stack

Susan P.

Page 18: Streetlife's real time analytics stack

Susan P.

Page 19: Streetlife's real time analytics stack

Susan P.

Page 20: Streetlife's real time analytics stack

we currently use the batch pipeline

Redshift

Page 21: Streetlife's real time analytics stack

we gather insights once a day

Redshift

user_stats

message_statsSQL

Page 22: Streetlife's real time analytics stack

last_visit last_email_open

2016/01/15 12:33:54

2016/07/12 22:13:10

2016/07/10 04:52:01

2016/03/11 21:01:03

2016/07/11 05:34:45

2016/07/12 14:30:21

Page 23: Streetlife's real time analytics stack

day impressions

2016/01/15

engagmentsid

1

u_impressions u_engagments

345 122 299 99

2016/01/152 123 99 94 84

2016/01/153 934 845 843 789

2016/01/141 899 777 744 645

2016/01/142 754 543 634 433

2016/01/143 103 99 91 77

2016/01/131 499 301 382 235

2016/01/132 1893 1400 991 1099

Page 24: Streetlife's real time analytics stack

With this data we give businesses insights

Your message got 890 impressions and 350 engagements.

Page 25: Streetlife's real time analytics stack

We tune each message's reach dynamically

2000

target

1200

current

>

Page 26: Streetlife's real time analytics stack

It works great, but the data has several hours of lag

event

ingest

Load SQL View S3 Load

Page 27: Streetlife's real time analytics stack

We are going to start using the realtime pipeline

realtime analytics

realtime content router

Page 28: Streetlife's real time analytics stack

realtime pipeline

Redshift

Kinesis

λ

Page 29: Streetlife's real time analytics stack

Kinesis

λ λ

Dynamodb

LambdaLambda

Page 30: Streetlife's real time analytics stack

The latency from events happening to us acting on them would be nearly zero

event

ingest

Kinesis Lambda DynamoDB Load

Page 31: Streetlife's real time analytics stack

AWS Lambdas: 20,000 feet view

.py

.js

.java

DEPENDENCIES

ZIP

AWSS3λ

Page 32: Streetlife's real time analytics stack

λ • Zero-administration compute platform • Connect Lambdas with AWS services

• Kinesis, DynamoDB, APIGateway, S3, CloudWatch, Cron…

• Pricing based on usage: • ~$0.0000002 per/run

• ~$0.000000208 per/100ms

λλ

AWS Lambdas: 20,000 feet view

Page 33: Streetlife's real time analytics stack

There is a ‘but’ Deploying/Managing them is a pitaλ

Page 34: Streetlife's real time analytics stack
Page 35: Streetlife's real time analytics stack

• Tool to create, wire and deploy AWS Lambdas using CloudFormation

• Python/Javascript/Java/Golang/Scala runtimes… • Supported integrations

• APIGateway, CloudWatch, Dynamodb, Kinesis, S3

Page 36: Streetlife's real time analytics stack

+

snowplow events

simulator

λ DynamoDB

Kinesis

Page 37: Streetlife's real time analytics stack

We are hiring!

Thank you!

Software Engineer (data team) Software Engineer (core team)

Infrastructure Engineer Data Scientist