SlideShare a Scribd company logo
SCALABLE EVENT TRACKING
by Ø
istein Sø
rensen - Schibsted Payment
WHAT IS AN EVENT?
EVENTS

UDP
UDP
Logger
Logger

SPiD Core
SPiD Core
Events
Events

file_logger
file_logger
aws_sqs
aws_sqs

Amazon SQS
EVENTS
Mixpanel
Mixpanel

EC2
DataPiper

Amazon SQS

Amazon SQS

Auto Scaling
Redshift
UDP LOGGER
DATAPIPER
AMAZON EC2 DEPLOYMENT
EC2 DEPLOYMENT

Auto Scaling

EC2 instances
EC2 DEPLOYMENT
EC2
Ubuntu 12.04
LTS
m1.medium

Auto Scaling
$$bash < User Data
bash < User Data
Auto Scaling Group
Auto Scaling Group
Launch Config
EC2 DEPLOYMENT

Public S3 Bucket
•

EC2
Ubuntu 12.04
LTS
m1.medium

Puppet
S3cmd

S3cmd config

$$bash < User Data
bash < User Data
EC2 DEPLOYMENT

Private S3 Bucket
•
•
•

EC2
Ubuntu 12.04
LTS
m1.medium

Node.js
npm modules

Puppet config
DataPiper
Upstart and logrotate configs

$$bash < User Data
bash < User Data
EC2 DEPLOYMENT
EC2
Ubuntu 12.04
LTS
m1.medium
DataPiper
mixpanel
mixpanel
redshift
redshift
SQS
SQS
SOFTWARE DEPLOYMENT
SOFTWARE DEPLOYMENT

Upload

Private S3 Bucket
SOFTWARE DEPLOYMENT

2
Auto Scaling
SOFTWARE DEPLOYMENT

Auto Scaling

EC2
Ubuntu 12.04
LTS
m1.medium
DataPiper
mixpanel
mixpanel
redshift
redshift
SOFTWARE DEPLOYMENT

1
Auto Scaling
SOFTWARE DEPLOYMENT
EC2
Ubuntu 12.04
LTS
m1.medium
DataPiper
mixpanel
mixpanel
redshift
redshift
QUESTIONS?

More Related Content

What's hot

Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
GlobalLogic Ukraine
 
Nika it consulting weekly update
Nika it consulting weekly update  Nika it consulting weekly update
Nika it consulting weekly update
Rod Delwar
 
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
AWSCOMSUM
 
Getting to Know Airflow
Getting to Know AirflowGetting to Know Airflow
Getting to Know Airflow
Rosanne Hoyem
 
Big data Lambda Architecture - Batch Layer Hands On
Big data Lambda Architecture - Batch Layer Hands OnBig data Lambda Architecture - Batch Layer Hands On
Big data Lambda Architecture - Batch Layer Hands On
hkbhadraa
 
Atlantisで実現するTerraformのGitOps
Atlantisで実現するTerraformのGitOpsAtlantisで実現するTerraformのGitOps
Atlantisで実現するTerraformのGitOps
理弘 山崎
 
Scale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
Scale search powered apps with Elastisearch, k8s and go - Maxime BoisvertScale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
Scale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
Web à Québec
 
Puppet at Spotify (stockholm)
Puppet at Spotify (stockholm)Puppet at Spotify (stockholm)
Puppet at Spotify (stockholm)
Puppet
 
awstalk.ppt
awstalk.pptawstalk.ppt
awstalk.ppt
webhostingguy
 
Ansible party in the [Google] clouds
Ansible party in the [Google] cloudsAnsible party in the [Google] clouds
Ansible party in the [Google] clouds
Esther Lozano
 
Orchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWSOrchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWS
Derrick Qin
 
Elasticsearch @ Keboola
Elasticsearch @ KeboolaElasticsearch @ Keboola
Elasticsearch @ Keboola
Martin Halamíček
 
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
ManageIQ
 
Go With The Flow
Go With The FlowGo With The Flow
Go With The Flow
PhilWinstanley
 
React meets o OCalm
React meets o OCalmReact meets o OCalm
React meets o OCalm
Michał Załęcki
 
Google Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKEGoogle Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKE
Simon Su
 
Plaλ!
Plaλ!Plaλ!
Plaλ!
sihil
 
Intro to the Google Cloud for Developers
Intro to the Google Cloud for DevelopersIntro to the Google Cloud for Developers
Intro to the Google Cloud for Developers
Lynn Langit
 
Lunch_and_Learn_20150603
Lunch_and_Learn_20150603Lunch_and_Learn_20150603
Lunch_and_Learn_20150603
Hung Lin
 

What's hot (19)

Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
Major Managed Kubernetes Platforms Comparison (AWS, GCP, Azure)
 
Nika it consulting weekly update
Nika it consulting weekly update  Nika it consulting weekly update
Nika it consulting weekly update
 
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
Nils Mohr & Jake Pearce - 100 years of flight data at British Airways. Past, ...
 
Getting to Know Airflow
Getting to Know AirflowGetting to Know Airflow
Getting to Know Airflow
 
Big data Lambda Architecture - Batch Layer Hands On
Big data Lambda Architecture - Batch Layer Hands OnBig data Lambda Architecture - Batch Layer Hands On
Big data Lambda Architecture - Batch Layer Hands On
 
Atlantisで実現するTerraformのGitOps
Atlantisで実現するTerraformのGitOpsAtlantisで実現するTerraformのGitOps
Atlantisで実現するTerraformのGitOps
 
Scale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
Scale search powered apps with Elastisearch, k8s and go - Maxime BoisvertScale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
Scale search powered apps with Elastisearch, k8s and go - Maxime Boisvert
 
Puppet at Spotify (stockholm)
Puppet at Spotify (stockholm)Puppet at Spotify (stockholm)
Puppet at Spotify (stockholm)
 
awstalk.ppt
awstalk.pptawstalk.ppt
awstalk.ppt
 
Ansible party in the [Google] clouds
Ansible party in the [Google] cloudsAnsible party in the [Google] clouds
Ansible party in the [Google] clouds
 
Orchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWSOrchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWS
 
Elasticsearch @ Keboola
Elasticsearch @ KeboolaElasticsearch @ Keboola
Elasticsearch @ Keboola
 
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
 
Go With The Flow
Go With The FlowGo With The Flow
Go With The Flow
 
React meets o OCalm
React meets o OCalmReact meets o OCalm
React meets o OCalm
 
Google Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKEGoogle Cloud Computing compares GCE, GAE and GKE
Google Cloud Computing compares GCE, GAE and GKE
 
Plaλ!
Plaλ!Plaλ!
Plaλ!
 
Intro to the Google Cloud for Developers
Intro to the Google Cloud for DevelopersIntro to the Google Cloud for Developers
Intro to the Google Cloud for Developers
 
Lunch_and_Learn_20150603
Lunch_and_Learn_20150603Lunch_and_Learn_20150603
Lunch_and_Learn_20150603
 

Viewers also liked

Getting Predictable - Pragmatic Approach for Mobile Development - Devday.lk ...
Getting Predictable - Pragmatic Approach for Mobile Development  - Devday.lk ...Getting Predictable - Pragmatic Approach for Mobile Development  - Devday.lk ...
Getting Predictable - Pragmatic Approach for Mobile Development - Devday.lk ...
Anjana Somathilake
 
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
Jordan Feldstein
 
Intro to Mixpanel
Intro to MixpanelIntro to Mixpanel
Intro to Mixpanel
Gilman Tolle
 
Implementing improved and consistent arbitrary event tracking company-wide us...
Implementing improved and consistent arbitrary event tracking company-wide us...Implementing improved and consistent arbitrary event tracking company-wide us...
Implementing improved and consistent arbitrary event tracking company-wide us...
yalisassoon
 
Best Practices: What to Track with Your Analytics
Best Practices: What to Track with Your AnalyticsBest Practices: What to Track with Your Analytics
Best Practices: What to Track with Your Analytics
Kissmetrics on SlideShare
 
Mixpanel in 10 minutes
Mixpanel in 10 minutesMixpanel in 10 minutes
Mixpanel in 10 minutes
Paweł Nowak
 
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamilyComment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
TheFamily
 
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
Traction Conf
 
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal CustomersAliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
Traction Conf
 
Mixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65MMixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65M
Suhail Doshi
 

Viewers also liked (10)

Getting Predictable - Pragmatic Approach for Mobile Development - Devday.lk ...
Getting Predictable - Pragmatic Approach for Mobile Development  - Devday.lk ...Getting Predictable - Pragmatic Approach for Mobile Development  - Devday.lk ...
Getting Predictable - Pragmatic Approach for Mobile Development - Devday.lk ...
 
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
Mixpanel Basics (Introducing analytics to teammates at Prompt.ly)
 
Intro to Mixpanel
Intro to MixpanelIntro to Mixpanel
Intro to Mixpanel
 
Implementing improved and consistent arbitrary event tracking company-wide us...
Implementing improved and consistent arbitrary event tracking company-wide us...Implementing improved and consistent arbitrary event tracking company-wide us...
Implementing improved and consistent arbitrary event tracking company-wide us...
 
Best Practices: What to Track with Your Analytics
Best Practices: What to Track with Your AnalyticsBest Practices: What to Track with Your Analytics
Best Practices: What to Track with Your Analytics
 
Mixpanel in 10 minutes
Mixpanel in 10 minutesMixpanel in 10 minutes
Mixpanel in 10 minutes
 
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamilyComment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
Comment utiliser Mixpanel - Julien Le Coupanec, Growth Hacker chez TheFamily
 
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
5 Common Startup Growth F-ups - Aliisa Hodges, Mixpanel
 
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal CustomersAliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
Aliisa Hodges, Mixpanel - 5 Tips on Acquiring Loyal Customers
 
Mixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65MMixpanel - Our pitch deck that we used to raise $65M
Mixpanel - Our pitch deck that we used to raise $65M
 

Similar to Scalable Event Tracking

AutoScaling and Drupal
AutoScaling and DrupalAutoScaling and Drupal
AutoScaling and Drupal
Promet Source
 
VPC by Default時代のアクセス制御
VPC by Default時代のアクセス制御VPC by Default時代のアクセス制御
VPC by Default時代のアクセス制御
真吾 吉田
 
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
Amazon Web Services Korea
 
StartPad Countdown 8 - Amazon Web Services and You
StartPad Countdown 8 - Amazon Web Services and YouStartPad Countdown 8 - Amazon Web Services and You
StartPad Countdown 8 - Amazon Web Services and You
Start Pad
 
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
Amazon Web Services
 
Amazed by AWS Series #4
Amazed by AWS Series #4Amazed by AWS Series #4
Amazed by AWS Series #4
Amazon Web Services Korea
 
Running and Scaling Magento on AWS
Running and Scaling Magento on AWSRunning and Scaling Magento on AWS
Running and Scaling Magento on AWS
AOE
 
Itb session v_memcached
Itb session v_memcachedItb session v_memcached
Itb session v_memcached
Skills Matter
 
OpenSlava Infrastructure Automation Patterns
OpenSlava   Infrastructure Automation PatternsOpenSlava   Infrastructure Automation Patterns
OpenSlava Infrastructure Automation Patterns
Antons Kranga
 
Building a Scalable Asset Management (DAM) Platform in the AWS
Building a Scalable Asset Management (DAM) Platform in the AWSBuilding a Scalable Asset Management (DAM) Platform in the AWS
Building a Scalable Asset Management (DAM) Platform in the AWS
Rahul Shukla
 
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
Amazon Web Services Korea
 
Monitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesMonitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar Series
Amazon Web Services
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
Amazon Web Services Korea
 
AWS Webcast - What is Cloud Computing?
AWS Webcast - What is Cloud Computing?AWS Webcast - What is Cloud Computing?
AWS Webcast - What is Cloud Computing?
Amazon Web Services
 
Camel on Cloud by Christina Lin
Camel on Cloud by Christina LinCamel on Cloud by Christina Lin
Camel on Cloud by Christina Lin
Tadayoshi Sato
 
CI/CD on pure AWS
CI/CD on pure AWSCI/CD on pure AWS
CI/CD on pure AWS
Andrey Trubitsyn
 
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdfREPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
AkashGoel82
 
Cloud Native Data Pipelines
Cloud Native Data PipelinesCloud Native Data Pipelines
Cloud Native Data Pipelines
Bill Liu
 
(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS
Amazon Web Services
 
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
Amazon Web Services
 

Similar to Scalable Event Tracking (20)

AutoScaling and Drupal
AutoScaling and DrupalAutoScaling and Drupal
AutoScaling and Drupal
 
VPC by Default時代のアクセス制御
VPC by Default時代のアクセス制御VPC by Default時代のアクセス制御
VPC by Default時代のアクセス制御
 
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
AWS re:Invent re:Cap - 데이터 분석: Amazon EC2 C4 Instance + Amazon EBS - 김일호
 
StartPad Countdown 8 - Amazon Web Services and You
StartPad Countdown 8 - Amazon Web Services and YouStartPad Countdown 8 - Amazon Web Services and You
StartPad Countdown 8 - Amazon Web Services and You
 
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
Building a Scalable Digital Asset Management Platform in the Cloud (MED402) |...
 
Amazed by AWS Series #4
Amazed by AWS Series #4Amazed by AWS Series #4
Amazed by AWS Series #4
 
Running and Scaling Magento on AWS
Running and Scaling Magento on AWSRunning and Scaling Magento on AWS
Running and Scaling Magento on AWS
 
Itb session v_memcached
Itb session v_memcachedItb session v_memcached
Itb session v_memcached
 
OpenSlava Infrastructure Automation Patterns
OpenSlava   Infrastructure Automation PatternsOpenSlava   Infrastructure Automation Patterns
OpenSlava Infrastructure Automation Patterns
 
Building a Scalable Asset Management (DAM) Platform in the AWS
Building a Scalable Asset Management (DAM) Platform in the AWSBuilding a Scalable Asset Management (DAM) Platform in the AWS
Building a Scalable Asset Management (DAM) Platform in the AWS
 
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
대용량 데이타 쉽고 빠르게 분석하기 :: 김일호 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
Monitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesMonitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar Series
 
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
데이터 마이그레이션 AWS와 같이하기 - 김일호 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
AWS Webcast - What is Cloud Computing?
AWS Webcast - What is Cloud Computing?AWS Webcast - What is Cloud Computing?
AWS Webcast - What is Cloud Computing?
 
Camel on Cloud by Christina Lin
Camel on Cloud by Christina LinCamel on Cloud by Christina Lin
Camel on Cloud by Christina Lin
 
CI/CD on pure AWS
CI/CD on pure AWSCI/CD on pure AWS
CI/CD on pure AWS
 
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdfREPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
REPEAT_1_Deep_dive_on_new_features_in_Amazon_RDS_for_SQL_Server_DAT364-R1(1).pdf
 
Cloud Native Data Pipelines
Cloud Native Data PipelinesCloud Native Data Pipelines
Cloud Native Data Pipelines
 
(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS(BDT205) Your First Big Data Application On AWS
(BDT205) Your First Big Data Application On AWS
 
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
(CMP405) Containerizing Video: The Next Gen Video Transcoding Pipeline
 

Recently uploaded

Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 

Recently uploaded (20)

Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 

Scalable Event Tracking

Editor's Notes

  1. An event is a happening inside the SPiD core. Ie: Signup, Login, Logout, Verify email, Purchase, etc. Events are triggered to be able to Get insight into the user behavior. Measure conversion of our processes. We need events to be able to improve our software.
  2. Events are sent from the SPiD Core to our UDP logger. The UDP logger inserts all events into a SQS queue.
  3. DataPiper retrieves events from the main SQS queue. Events are filtered and inserted into Redshift, Mixpanel and other SQS queues.
  4. The UDP logger is written in Node.js for performance. We have an admin interface that monitors the server to be able to detect issues in an early stage. Why UDP? We use UDP to prevent latency inside the SPiD Core. This way we can send as many events as we like without having to think about latency. Package loss is no issue as long as the UDP server is located inside the same network as the core application.
  5. The DataPiper is also written in Node.js. We use Amazon CloudWatch to monitor the DataPiper performance. Incoming messages, messages in queue, messages in flight, etc. Based on these number we can fine tune the DataPiper. DataPiper flow: Retrieve data from the main SQS queue Filter data. Insert data into Mixpanel, Redshift or another SQS queue.
  6. Deployment of our servers on the Amazon cloud platform. How do we do it? What do we need to think about? Scalability We need to make sure our queues never pile up. Uptime Our queues needs to be up at all times. Luckily Amazon provides that with SQS. Our DataPiper needs to up all the time to keep our data flowing.
  7. Auto Scaling provides the key to this solution. Auto Scaling: Makes sure we always have the desired amount of servers running. Makes it possible to scale when traffic increases and then down scale afterwards.
  8. An Auto Scaling is actually an Auto Scaling Group: It provides the desired amount of EC2 instances based on your scaling policy. An Auto Scaling Group is tied to a Launch Configuration: AMI type : Type of predefined server image. Instance type : Hardware type. Storage : Storage size and type. Security group : Firewalls around this group of servers. User data : bash script run at launch, used to automate installation.
  9. When the Auto Scaling Group fires up a new server it’s done like this: AMI is booted with the desired instance type, storage and security group. User data script installs: S3cmd config from public S3 bucket. S3cmd tools. Puppet via npm.
  10. When the first step is done and you are able to connect to the private S3 bucket: User data script then downloads: The standalone puppet config (node less) from private S3 bucket. Then it executes the Puppet client (node less, no master server needed): Installing required packages (node.js, ppm, etc) Preparing software install Creating dirs and setting ownership Installing DataPiper Software, config, upstart, logrotate Starting DataPiper service.
  11. No ssh login. No manual labor. All is automated - Look, no hands :)
  12. How do we deploy new versions of our software? Software deployment can be a tedious process. We’re working hard to simplify this and minimize the risk of down time due to deployment.
  13. This is how it’s done: The deployment master prepares A new release of our software. A new config file. All is uploaded to our private S3 bucket. Before proceeding please wait a few minutes and enjoy a good cup of coffee. It can be a replication delay inside the S3 platform.
  14. Start the deployment of new instances: Number of desired instances are increased by the number of new instances you want to deploy with the new software version. One and one is good to be sure everything works smoothly.
  15. Auto Scaling fires up new instances with our new software and config files. This usually takes a couple of minutes.
  16. When these new instances are up, then you decrease the numbers of desired instances back to the original number. Auto scaling will destroy the old instances and you’re good to go with your new version.
  17. - How do we deploy new versions of out software?