SlideShare une entreprise Scribd logo
1  sur  33
How to be data-driven when you aren't Netflix
(or even if you are)
Charles Sonigo, Head of Product, Streamroot
DEMUXED - October 18, 2018
Who are we...
© 2018 Streamroot - All rights reserved
The leading peer-accelerated delivery solution for OTT video and device-side
performance optimization company
WHAT
✓ WebRTC-based peer-accelerated delivery
✓ Mid-stream client-side CDN switching
✓ eCDN for global businesses
WHY
✓ Greater scale
✓ Better QoS
✓ Lower spend
+20 Million
UNIQUE VIDEO
SESSIONS DAILY
+5 Billion
UNIQUE VIDEO
SESSIONS IN 2018
Who are we...
The largest and most trusted distributed delivery network for OTT video
© 2018 Streamroot - All rights reserved
1 The Challenge
Improving software when performance can only be measured in
production...
The Challenge: Axioms - Requirements
© 2018 Streamroot - All rights reserved
● KPIs highly dependent on environmental factors
● Controlled testing environments never capture real-
world complexity
● Intuition will be wrong
● Need to maintain team velocity and feature releases
● Need to be able to randomize, ideally at user level
Backend Logic
● Content caching
● Encoding experiments
● CDN load balancing
● Peer matching
The Challenge: use cases
© 2018 Streamroot - All rights reserved
Client-side logic
● UI
● ABR improvements
● Ads Workflows
2 How it All Began
How to build a data pipeline with only a few good men
(and women).
ANALYTICS PROCESSOR
Basic graphs
Custom dashboards for everyday
work
In-house advanced statistics
services
CLIENT METRICS
Performance & QoS
metric payloads sent to
HTTP endpoint
MESSAGE BROKER
& DATA
PROCESSORS
Receives and distributes
messages
Preprocessing for specific
analysis
ANALYTICS DB
Store and pre-aggregate
data.
Offers cross dimensions
drills, filters and more.
How it Started: Our Basic Data Lab
HTTP
endpoint
data
processors
© 2018 Streamroot - All rights reserved
Message Broker and Data Processors
Potential Upgrades Based on Your Needs
© 2018 Streamroot - All rights reserved
● Scalability and resilience:
○ Data collection services with Kubernetes autoscaling
○ Partitioned Kafka topics
○ Flink for distributed, resilient, stateful data processors
Hadoop with Avro
● Hadoop ecosystem for industrialised data processing
● Storage gain with Avro compression
● Robust schema evolution with backward compatibility
Potential Upgrades Based on Your Needs
Analytics DB and Processors
Zeppelin (or Jupyter) + PySpark:
● Limitless analysis capabilities
● Quick exploration/iterations on complex analysis
● Easy to share implementations
© 2018 Streamroot - All rights reserved
Many options are out there depending on your requirements: scale, features, open-source,
proprietary, Cloud, etc.
Message broker Data Processor Database BI/viz tools Custom analytics
Apache Kafka Flink Druid Superset Python
RabbitMQ Storm InfluxDB Grafana R
ActiveMQ Hive Hadoop Tableau
ZeroMQ Kafka Streams PostGresSQL QlikView
Amazon Kinesis Spark ElasticSearch Kibana
The tools are out there
© 2018 Streamroot - All rights reserved
3 The Scientific Method for AB
Testing
(without compromising on team velocity and feature releases)
© 2018 Streamroot - All rights reserved
AB Testing: Deployment
RELEASE TESTING WITH REVERSE PROXY
● Randomizing version of the code used by your users
● Used to roll out new releases progressively
DYNAMIC CONFIG INJECTION
● Server returns different
configuration files
● Inject parameters to fine-tune /
toggle new features on and off
AB Testing: Configuration Injection
© 2018 Streamroot - All rights reserved
100%
V2V2 Conf AB TestV2 ??
AB Testing: New version roll-out
V2 AA’ TestV2 CANARYV1
1% of traffic
New features: toggled off
50% V1 - 50% V2
New features: toggled off
100%
New features: toggled off
100% w/ 5% new
features
New features: turn on one-by-
one
100%
New features:
all ON
RELEASE W/ REVERSE PROXY
© 2018 Streamroot - All rights reserved
Canary release
● Only need to detect major regressions and errors.
● If any, rollback and fix.
100%
V2V2 Conf AB TestV2 ??
AB Testing: New version roll-out
V2 AA’ TestV2 CANARYV1
1% of traffic
New features: toggled off
50% V1 - 50% V2
New features: toggled off
100%
New features: toggled off
100% w/ 5% new
features
New features: turn on one-by-
one
100%
New features:
all ON
RELEASE W/ REVERSE PROXY
© 2018 Streamroot - All rights reserved
V2 AA’ Test
● Want to make sure V2 with features off behaves exactly live V1
● Critical step: any regression that slips through is very costly and hard to find later on
● If any, rollback and fix.
100%
V2V2 Conf AB TestV2 Release
AB Testing: New version roll-out
V2 AA’ TestV2 CANARYV1
1% of traffic
New features: toggled off
50% V1 - 50% V2
New features: toggled off
100%
New features: toggled off
100% w/ 5% new
features
New features: turn on one-by-
one
100%
New features:
all ON
FULL DEPLOYMENT
© 2018 Streamroot - All rights reserved
100%
V2V2 Conf AB TestV2 Release
AB Testing: New version roll-out
V2 AA’ TestV2 CANARYV1
1% of traffic
New features: toggled off
50% V1 - 50% V2
New features: toggled off
100%
New features: toggled off
100% w/ 5% new
features
New features: turn on one-by-
one
100%
New features:
all ON
CONFIGURATION
INJECTION
© 2018 Streamroot - All rights reserved
● Activate features one by one and analyse their impact
● Keep the good ones, rethink or tweak the bad ones
4 Beating the averages
Enhance, Enhance, Enhance!
Insert a graph that shows
outliers
© 2018 Streamroot - All rights reserved
101: Outliers
Some can be filtered out.
Some are symptoms of a
problem.
Stay vigilant!
P2P Data Exchange Protocol Samples Traffic offload %
TCP-like 15,772,543 65.54%
UDP-like 16,152,624 67.04%
UDP-like protocol is
obviously better!
© 2018 Streamroot - All rights reserved
102: Simpson & Confounding Factors...
… Or how aggregated results can give you a completely wrong idea.
P2P Data Exchange Protocol Samples Traffic offload %
TCP-like 15,772,543 65.54%
UDP-like 16,152,624 67.04%
P2P Data Exchange Protocol Type Samples Traffic offload %
TCP-like Live 13,004,140 62.10%
UDP-like Live 13,340,504 65.02%
TCP-like VOD 2,768,403 81.72%
UDP-like VOD 2,812,120 76.61%
Live: +2.92% for UDP-like
VOD: -5.11% for UDP-like
© 2018 Streamroot - All rights reserved
102: Simpson & Confounding Factors
© 2018 Streamroot - All rights reserved
What can you do to prevent it?
● You can’t... Stay vigilant!
● Always ask yourself if you have missed a lurking confounding factor.
● Know you data and cross check your results for each important dimension: live/VoD, low bitrate
vs. high bitrate, country / ISP, Devices, Browsers...
● Regularly check for over-represented groups in your audience and monitor them closely.
102: Simpson & Confounding Factors
103: Histograms
avg.
© 2018 Streamroot - All rights reserved
Splitting along
dimensions is critical.
It’s only natural to do the
same along your metrics.
© 2018 Streamroot - All rights reserved
201: Tackling noise
2 identical configurations →
The law of large numbers says
aggregated values will converge
...but when?
What is noise and what is an
actual effect of a change you
introduced?
© 2018 Streamroot - All rights reserved
201: Statistical Significance
Many possibilities based on the way you design your experiments
We use the Chi-Squared Test.
+ Low CPU cost
+ Can apply the test on any subgroups after preprocessing
+ Easy tweak to balance memory usage and precision
- Memory intensive
- Cardinality hurts fast
201: Chi-Squared Test
Test dependency of two variables: Label vs. Metric X
● If X and Label are truly independent (Null
Hypothesis), the Chi Squared distribution is known.
● Comparison of the observed Chi Squared distribution
versus the theoretical one gives us the probability
that the difference we see isn’t just noise.
© 2018 Streamroot - All rights reserved
201: Chi-Squared Visualized
Inputs:
● A metric with a
range of values
● 2 groups
● Some filters
© 2018 Streamroot - All rights reserved
201: Population movements or practical significance
1 1. Test Metadata:
● P Value
● Model Validity
● #Samples
● Total population
displacement
© 2018 Streamroot - All rights reserved
201: Population movements: practical significance
2
2. Axis
X: Buckets interval and
distribution of all samples
Y: Population movements
between the two groups
© 2018 Streamroot - All rights reserved
201: Impact on statistical significance
5 What’s Next for us?
● More statistical significance visuals
● User clusters based on how they interact with our tech
● ML for client configuration optimization
Thank you!
charles.sonigo@streamroot.io
Check out our engineering blog at
medium.com/streamroot-developers-blog

Contenu connexe

Tendances

Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Amazon Web Services
 
Next-gen Network Telemetry is Within Your Packets: In-band OAM
Next-gen Network Telemetry is Within Your Packets: In-band OAMNext-gen Network Telemetry is Within Your Packets: In-band OAM
Next-gen Network Telemetry is Within Your Packets: In-band OAMOpen Networking Summit
 
Bandwidth Requirements for Delivering UltraHD TV
Bandwidth Requirements for Delivering UltraHD TVBandwidth Requirements for Delivering UltraHD TV
Bandwidth Requirements for Delivering UltraHD TVSckipio
 
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...confluent
 
SEG 2015 HPC Trends for Seismic Computing
SEG 2015 HPC Trends for Seismic ComputingSEG 2015 HPC Trends for Seismic Computing
SEG 2015 HPC Trends for Seismic ComputingEric Collins
 
DPDK Acceleration with Arkville
DPDK Acceleration with ArkvilleDPDK Acceleration with Arkville
DPDK Acceleration with ArkvilleShepard Siegel
 
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...confluent
 
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote)
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote) FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote)
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote) Wim Vanderbauwhede
 
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?Why we built Kundera - The Polyglot Object Mapper for NoSQLs?
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?Vivek Shrivastava
 
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...Datacratic
 
Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringGain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringInfluxData
 
IPv6 deployment status in Bangladesh
IPv6 deployment status in BangladeshIPv6 deployment status in Bangladesh
IPv6 deployment status in BangladeshFakrul Alam
 
Curing the Kafka Blindness – Streams Messaging Manager
Curing the Kafka Blindness – Streams Messaging ManagerCuring the Kafka Blindness – Streams Messaging Manager
Curing the Kafka Blindness – Streams Messaging ManagerDataWorks Summit
 
OpenACC Monthly Highlights February 2019
OpenACC Monthly Highlights February 2019OpenACC Monthly Highlights February 2019
OpenACC Monthly Highlights February 2019NVIDIA
 
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...InfluxData
 
HOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real TimeHOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real Timeconfluent
 

Tendances (18)

FITCE 2007 Network Technology Trends Miguelpdl
FITCE 2007 Network Technology Trends MiguelpdlFITCE 2007 Network Technology Trends Miguelpdl
FITCE 2007 Network Technology Trends Miguelpdl
 
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
 
Next-gen Network Telemetry is Within Your Packets: In-band OAM
Next-gen Network Telemetry is Within Your Packets: In-band OAMNext-gen Network Telemetry is Within Your Packets: In-band OAM
Next-gen Network Telemetry is Within Your Packets: In-band OAM
 
Bandwidth Requirements for Delivering UltraHD TV
Bandwidth Requirements for Delivering UltraHD TVBandwidth Requirements for Delivering UltraHD TV
Bandwidth Requirements for Delivering UltraHD TV
 
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...
Replaying KStreams Apps Using State Snapshots (Nishchay Sinha & Yan Wang, Blo...
 
SEG 2015 HPC Trends for Seismic Computing
SEG 2015 HPC Trends for Seismic ComputingSEG 2015 HPC Trends for Seismic Computing
SEG 2015 HPC Trends for Seismic Computing
 
DPDK Acceleration with Arkville
DPDK Acceleration with ArkvilleDPDK Acceleration with Arkville
DPDK Acceleration with Arkville
 
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
 
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote)
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote) FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote)
FPGAs as Components in Heterogeneous HPC Systems (paraFPGA 2015 keynote)
 
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?Why we built Kundera - The Polyglot Object Mapper for NoSQLs?
Why we built Kundera - The Polyglot Object Mapper for NoSQLs?
 
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
 
HNSciCloud pilot phase - Andrea Chierici (INFN)
HNSciCloud pilot phase - Andrea Chierici (INFN)HNSciCloud pilot phase - Andrea Chierici (INFN)
HNSciCloud pilot phase - Andrea Chierici (INFN)
 
Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint MonitoringGain Deep Visibility into APIs and Integrations with Anypoint Monitoring
Gain Deep Visibility into APIs and Integrations with Anypoint Monitoring
 
IPv6 deployment status in Bangladesh
IPv6 deployment status in BangladeshIPv6 deployment status in Bangladesh
IPv6 deployment status in Bangladesh
 
Curing the Kafka Blindness – Streams Messaging Manager
Curing the Kafka Blindness – Streams Messaging ManagerCuring the Kafka Blindness – Streams Messaging Manager
Curing the Kafka Blindness – Streams Messaging Manager
 
OpenACC Monthly Highlights February 2019
OpenACC Monthly Highlights February 2019OpenACC Monthly Highlights February 2019
OpenACC Monthly Highlights February 2019
 
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...
Bhagvan Kommadi [Value Momentum] | TeleHealth Platform: DevOps-Based Progress...
 
HOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real TimeHOP! Airlines Jets to Real Time
HOP! Airlines Jets to Real Time
 

Similaire à Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix (or even if you are)

Advanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsAdvanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsRogue Wave Software
 
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin Inc
 
Industrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an StandardsIndustrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an StandardsJavier Povedano
 
IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal GemfireIMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal GemfireIn-Memory Computing Summit
 
Scale Your Load Balancer from 0 to 1 million TPS on Azure
Scale Your Load Balancer from 0 to 1 million TPS on AzureScale Your Load Balancer from 0 to 1 million TPS on Azure
Scale Your Load Balancer from 0 to 1 million TPS on AzureAvi Networks
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015Eduardo Pelegri-Llopart
 
From Disaster to Recovery: Preparing Your IT for the Unexpected
From Disaster to Recovery: Preparing Your IT for the UnexpectedFrom Disaster to Recovery: Preparing Your IT for the Unexpected
From Disaster to Recovery: Preparing Your IT for the UnexpectedDataCore Software
 
Approaches to Network Automation
Approaches to Network AutomationApproaches to Network Automation
Approaches to Network AutomationAPNIC
 
Intro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and LinkerdIntro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and LinkerdWeaveworks
 
ADVA Disaggregated NOS
ADVA Disaggregated NOSADVA Disaggregated NOS
ADVA Disaggregated NOSDan Dovolsky
 
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Amazon Web Services
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsconfluent
 
Open Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache GeodeOpen Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache GeodeApache Geode
 
An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)Anthony Baker
 
Pivotal - Advanced Analytics for Telecommunications
Pivotal - Advanced Analytics for Telecommunications Pivotal - Advanced Analytics for Telecommunications
Pivotal - Advanced Analytics for Telecommunications Hortonworks
 
Cheryl Wiebe - Advanced Analytics in the Industrial World
Cheryl Wiebe - Advanced Analytics in the Industrial WorldCheryl Wiebe - Advanced Analytics in the Industrial World
Cheryl Wiebe - Advanced Analytics in the Industrial WorldRehgan Avon
 
Doing Cloud Right! Five Keys to Becoming an Elite DevOps Performer
Doing Cloud Right! Five Keys to Becoming an Elite DevOps PerformerDoing Cloud Right! Five Keys to Becoming an Elite DevOps Performer
Doing Cloud Right! Five Keys to Becoming an Elite DevOps PerformerDevOps.com
 

Similaire à Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix (or even if you are) (20)

Advanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsAdvanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applications
 
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
Bitmovin LIVE Tech Talks: Analytics for Workflow Automation (ft. Touchstream ...
 
Industrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an StandardsIndustrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an Standards
 
IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal GemfireIMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal Gemfire
 
Scale Your Load Balancer from 0 to 1 million TPS on Azure
Scale Your Load Balancer from 0 to 1 million TPS on AzureScale Your Load Balancer from 0 to 1 million TPS on Azure
Scale Your Load Balancer from 0 to 1 million TPS on Azure
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015
 
From Disaster to Recovery: Preparing Your IT for the Unexpected
From Disaster to Recovery: Preparing Your IT for the UnexpectedFrom Disaster to Recovery: Preparing Your IT for the Unexpected
From Disaster to Recovery: Preparing Your IT for the Unexpected
 
Approaches to Network Automation
Approaches to Network AutomationApproaches to Network Automation
Approaches to Network Automation
 
Intro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and LinkerdIntro to GitOps with Weave GitOps, Flagger and Linkerd
Intro to GitOps with Weave GitOps, Flagger and Linkerd
 
Reliability at scale
Reliability at scale Reliability at scale
Reliability at scale
 
ADVA Disaggregated NOS
ADVA Disaggregated NOSADVA Disaggregated NOS
ADVA Disaggregated NOS
 
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Open Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache GeodeOpen Sourcing GemFire - Apache Geode
Open Sourcing GemFire - Apache Geode
 
An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)
 
Pivotal - Advanced Analytics for Telecommunications
Pivotal - Advanced Analytics for Telecommunications Pivotal - Advanced Analytics for Telecommunications
Pivotal - Advanced Analytics for Telecommunications
 
CS-Op Analytics
CS-Op AnalyticsCS-Op Analytics
CS-Op Analytics
 
Cheryl Wiebe - Advanced Analytics in the Industrial World
Cheryl Wiebe - Advanced Analytics in the Industrial WorldCheryl Wiebe - Advanced Analytics in the Industrial World
Cheryl Wiebe - Advanced Analytics in the Industrial World
 
Doing Cloud Right! Five Keys to Becoming an Elite DevOps Performer
Doing Cloud Right! Five Keys to Becoming an Elite DevOps PerformerDoing Cloud Right! Five Keys to Becoming an Elite DevOps Performer
Doing Cloud Right! Five Keys to Becoming an Elite DevOps Performer
 
Industrial IoT bootcamp
Industrial IoT bootcampIndustrial IoT bootcamp
Industrial IoT bootcamp
 

Dernier

➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...amitlee9823
 
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...amitlee9823
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Pooja Nehwal
 
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...gajnagarg
 
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...gajnagarg
 
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...gajnagarg
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...amitlee9823
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...amitlee9823
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...amitlee9823
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteedamy56318795
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...amitlee9823
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...only4webmaster01
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...gajnagarg
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Standamitlee9823
 

Dernier (20)

➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men  🔝Bangalore🔝   Esc...
➥🔝 7737669865 🔝▻ Bangalore Call-girls in Women Seeking Men 🔝Bangalore🔝 Esc...
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night StandCall Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Bellandur ☎ 7737669865 🥵 Book Your One night Stand
 
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men  🔝mahisagar🔝   Esc...
➥🔝 7737669865 🔝▻ mahisagar Call-girls in Women Seeking Men 🔝mahisagar🔝 Esc...
 
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
Thane Call Girls 7091864438 Call Girls in Thane Escort service book now -
 
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
Just Call Vip call girls kakinada Escorts ☎️9352988975 Two shot with one girl...
 
Anomaly detection and data imputation within time series
Anomaly detection and data imputation within time seriesAnomaly detection and data imputation within time series
Anomaly detection and data imputation within time series
 
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
Just Call Vip call girls Erode Escorts ☎️9352988975 Two shot with one girl (E...
 
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Rabindra Nagar  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Rabindra Nagar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls Bellary Escorts ☎️9352988975 Two shot with one girl ...
 
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men  🔝Sambalpur🔝   Esc...
➥🔝 7737669865 🔝▻ Sambalpur Call-girls in Women Seeking Men 🔝Sambalpur🔝 Esc...
 
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night StandCall Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Nandini Layout ☎ 7737669865 🥵 Book Your One night Stand
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
Vip Mumbai Call Girls Thane West Call On 9920725232 With Body to body massage...
 
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 9155563397 👗 Top Class Call Girl Service B...
 
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
Just Call Vip call girls roorkee Escorts ☎️9352988975 Two shot with one girl ...
 
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night StandCall Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In Doddaballapur Road ☎ 7737669865 🥵 Book Your One night Stand
 

Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix (or even if you are)

  • 1. How to be data-driven when you aren't Netflix (or even if you are) Charles Sonigo, Head of Product, Streamroot DEMUXED - October 18, 2018
  • 2. Who are we... © 2018 Streamroot - All rights reserved The leading peer-accelerated delivery solution for OTT video and device-side performance optimization company WHAT ✓ WebRTC-based peer-accelerated delivery ✓ Mid-stream client-side CDN switching ✓ eCDN for global businesses WHY ✓ Greater scale ✓ Better QoS ✓ Lower spend
  • 3. +20 Million UNIQUE VIDEO SESSIONS DAILY +5 Billion UNIQUE VIDEO SESSIONS IN 2018 Who are we... The largest and most trusted distributed delivery network for OTT video © 2018 Streamroot - All rights reserved
  • 4. 1 The Challenge Improving software when performance can only be measured in production...
  • 5. The Challenge: Axioms - Requirements © 2018 Streamroot - All rights reserved ● KPIs highly dependent on environmental factors ● Controlled testing environments never capture real- world complexity ● Intuition will be wrong ● Need to maintain team velocity and feature releases ● Need to be able to randomize, ideally at user level
  • 6. Backend Logic ● Content caching ● Encoding experiments ● CDN load balancing ● Peer matching The Challenge: use cases © 2018 Streamroot - All rights reserved Client-side logic ● UI ● ABR improvements ● Ads Workflows
  • 7. 2 How it All Began How to build a data pipeline with only a few good men (and women).
  • 8. ANALYTICS PROCESSOR Basic graphs Custom dashboards for everyday work In-house advanced statistics services CLIENT METRICS Performance & QoS metric payloads sent to HTTP endpoint MESSAGE BROKER & DATA PROCESSORS Receives and distributes messages Preprocessing for specific analysis ANALYTICS DB Store and pre-aggregate data. Offers cross dimensions drills, filters and more. How it Started: Our Basic Data Lab HTTP endpoint data processors © 2018 Streamroot - All rights reserved
  • 9. Message Broker and Data Processors Potential Upgrades Based on Your Needs © 2018 Streamroot - All rights reserved ● Scalability and resilience: ○ Data collection services with Kubernetes autoscaling ○ Partitioned Kafka topics ○ Flink for distributed, resilient, stateful data processors
  • 10. Hadoop with Avro ● Hadoop ecosystem for industrialised data processing ● Storage gain with Avro compression ● Robust schema evolution with backward compatibility Potential Upgrades Based on Your Needs Analytics DB and Processors Zeppelin (or Jupyter) + PySpark: ● Limitless analysis capabilities ● Quick exploration/iterations on complex analysis ● Easy to share implementations © 2018 Streamroot - All rights reserved
  • 11. Many options are out there depending on your requirements: scale, features, open-source, proprietary, Cloud, etc. Message broker Data Processor Database BI/viz tools Custom analytics Apache Kafka Flink Druid Superset Python RabbitMQ Storm InfluxDB Grafana R ActiveMQ Hive Hadoop Tableau ZeroMQ Kafka Streams PostGresSQL QlikView Amazon Kinesis Spark ElasticSearch Kibana The tools are out there © 2018 Streamroot - All rights reserved
  • 12. 3 The Scientific Method for AB Testing (without compromising on team velocity and feature releases)
  • 13. © 2018 Streamroot - All rights reserved AB Testing: Deployment RELEASE TESTING WITH REVERSE PROXY ● Randomizing version of the code used by your users ● Used to roll out new releases progressively
  • 14. DYNAMIC CONFIG INJECTION ● Server returns different configuration files ● Inject parameters to fine-tune / toggle new features on and off AB Testing: Configuration Injection © 2018 Streamroot - All rights reserved
  • 15. 100% V2V2 Conf AB TestV2 ?? AB Testing: New version roll-out V2 AA’ TestV2 CANARYV1 1% of traffic New features: toggled off 50% V1 - 50% V2 New features: toggled off 100% New features: toggled off 100% w/ 5% new features New features: turn on one-by- one 100% New features: all ON RELEASE W/ REVERSE PROXY © 2018 Streamroot - All rights reserved Canary release ● Only need to detect major regressions and errors. ● If any, rollback and fix.
  • 16. 100% V2V2 Conf AB TestV2 ?? AB Testing: New version roll-out V2 AA’ TestV2 CANARYV1 1% of traffic New features: toggled off 50% V1 - 50% V2 New features: toggled off 100% New features: toggled off 100% w/ 5% new features New features: turn on one-by- one 100% New features: all ON RELEASE W/ REVERSE PROXY © 2018 Streamroot - All rights reserved V2 AA’ Test ● Want to make sure V2 with features off behaves exactly live V1 ● Critical step: any regression that slips through is very costly and hard to find later on ● If any, rollback and fix.
  • 17. 100% V2V2 Conf AB TestV2 Release AB Testing: New version roll-out V2 AA’ TestV2 CANARYV1 1% of traffic New features: toggled off 50% V1 - 50% V2 New features: toggled off 100% New features: toggled off 100% w/ 5% new features New features: turn on one-by- one 100% New features: all ON FULL DEPLOYMENT © 2018 Streamroot - All rights reserved
  • 18. 100% V2V2 Conf AB TestV2 Release AB Testing: New version roll-out V2 AA’ TestV2 CANARYV1 1% of traffic New features: toggled off 50% V1 - 50% V2 New features: toggled off 100% New features: toggled off 100% w/ 5% new features New features: turn on one-by- one 100% New features: all ON CONFIGURATION INJECTION © 2018 Streamroot - All rights reserved ● Activate features one by one and analyse their impact ● Keep the good ones, rethink or tweak the bad ones
  • 19. 4 Beating the averages Enhance, Enhance, Enhance!
  • 20. Insert a graph that shows outliers © 2018 Streamroot - All rights reserved 101: Outliers Some can be filtered out. Some are symptoms of a problem. Stay vigilant!
  • 21. P2P Data Exchange Protocol Samples Traffic offload % TCP-like 15,772,543 65.54% UDP-like 16,152,624 67.04% UDP-like protocol is obviously better! © 2018 Streamroot - All rights reserved 102: Simpson & Confounding Factors... … Or how aggregated results can give you a completely wrong idea.
  • 22. P2P Data Exchange Protocol Samples Traffic offload % TCP-like 15,772,543 65.54% UDP-like 16,152,624 67.04% P2P Data Exchange Protocol Type Samples Traffic offload % TCP-like Live 13,004,140 62.10% UDP-like Live 13,340,504 65.02% TCP-like VOD 2,768,403 81.72% UDP-like VOD 2,812,120 76.61% Live: +2.92% for UDP-like VOD: -5.11% for UDP-like © 2018 Streamroot - All rights reserved 102: Simpson & Confounding Factors
  • 23. © 2018 Streamroot - All rights reserved What can you do to prevent it? ● You can’t... Stay vigilant! ● Always ask yourself if you have missed a lurking confounding factor. ● Know you data and cross check your results for each important dimension: live/VoD, low bitrate vs. high bitrate, country / ISP, Devices, Browsers... ● Regularly check for over-represented groups in your audience and monitor them closely. 102: Simpson & Confounding Factors
  • 24. 103: Histograms avg. © 2018 Streamroot - All rights reserved Splitting along dimensions is critical. It’s only natural to do the same along your metrics.
  • 25. © 2018 Streamroot - All rights reserved 201: Tackling noise 2 identical configurations → The law of large numbers says aggregated values will converge ...but when? What is noise and what is an actual effect of a change you introduced?
  • 26. © 2018 Streamroot - All rights reserved 201: Statistical Significance Many possibilities based on the way you design your experiments We use the Chi-Squared Test. + Low CPU cost + Can apply the test on any subgroups after preprocessing + Easy tweak to balance memory usage and precision - Memory intensive - Cardinality hurts fast
  • 27. 201: Chi-Squared Test Test dependency of two variables: Label vs. Metric X ● If X and Label are truly independent (Null Hypothesis), the Chi Squared distribution is known. ● Comparison of the observed Chi Squared distribution versus the theoretical one gives us the probability that the difference we see isn’t just noise.
  • 28. © 2018 Streamroot - All rights reserved 201: Chi-Squared Visualized Inputs: ● A metric with a range of values ● 2 groups ● Some filters
  • 29. © 2018 Streamroot - All rights reserved 201: Population movements or practical significance 1 1. Test Metadata: ● P Value ● Model Validity ● #Samples ● Total population displacement
  • 30. © 2018 Streamroot - All rights reserved 201: Population movements: practical significance 2 2. Axis X: Buckets interval and distribution of all samples Y: Population movements between the two groups
  • 31. © 2018 Streamroot - All rights reserved 201: Impact on statistical significance
  • 32. 5 What’s Next for us? ● More statistical significance visuals ● User clusters based on how they interact with our tech ● ML for client configuration optimization
  • 33. Thank you! charles.sonigo@streamroot.io Check out our engineering blog at medium.com/streamroot-developers-blog

Notes de l'éditeur

  1. medium.com/streamroot-developers-blog