SlideShare a Scribd company logo
HELLO DEVDAY




PDX 2010
Justin Marney
           HELLO DEVDAY



PDX 2010
Viget Labs
           Justin Marney
           HELLO DEVDAY


PDX 2010
GMU BCS ‘06
           Viget Labs
           Justin Marney
           HELLO DEVDAY
PDX 2010
Ruby ‘07
           GMU BCS ‘06
           Viget Labs
           Justin Marney
PDX 2010
Viget ‘08
           Ruby ‘07
           GMU BCS ‘06
           Viget Labs
PDX 2010
PDX 2010
PDX 2010
DISTRIBUTING
           YOUR DATA



PDX 2010
WHY?
           DISTRIBUTING
           YOUR DATA


PDX 2010
web applications are judged
           by their level of availability

           WHY?
           DISTRIBUTING
           YOUR DATA
PDX 2010
ability to continue operating
           during failure scenarios
           web applications are judged
           by their level of availability

           WHY?
           DISTRIBUTING
PDX 2010
           YOUR DATA
ability to manage availability
           during failure scenarios
           ability to continue operating
           during failure scenarios
           web applications are judged
           by their level of availability

           WHY?
PDX 2010
increase throughput
           ability to manage availability
           during node failure
           ability to continue operating
           during failure scenarios
           web applications are judged
           by their level of availability


PDX 2010
           WHY?
increase durability
           increase throughput
           ability to manage availability
           during node failure
           ability to continue operating
           during failure scenarios
           web applications are judged
           by their level of availability
PDX 2010
increase scalability
           increase durability
           increase throughput
           ability to manage availability
           during node failure
           ability to continue operating
           during failure scenarios

PDX 2010
SCALABILITY
           "I can add twice as much X
           and get twice as much Y."
           X = processor, RAM, disks,
           servers, bandwidth
           Y = throughput, storage
           space, uptime

PDX 2010
SCALABILITY
           scalability is a ratio.
           2:2 = linear scalability ratio
           scalability ratio allows you
           to predict how much it will
           cost you to grow.


PDX 2010
SCALABILITY
           UP/DOWN/VERTICAL/
           HORIZONTAL/L/R/L/R/A/
           B/START




PDX 2010
SCALABILITY
           UP
           grow your infrastructure
           multiple data centers
           higher bandwidth
           faster machines




PDX 2010
SCALABILITY
           DOWN
           shrink your infrastructure
           mobile
           set-top
           laptop




PDX 2010
SCALABILITY
           VERTICAL
           add to a single node
           CPU
           RAM
           RAID




PDX 2010
SCALABILITY
           HORIZONTAL
           add more nodes
           distribute the load
           commodity cost
           limited only by capital




PDX 2010
@gary_hustwit: Dear
           Twitter: when a World Cup
           match is at the 90th
           minute, you might want to
           turn on a few more servers.




PDX 2010
ASYNCHRONOUS
     A distributed transaction is bound
     by availability of all nodes.




PDX 2010
ASYNCHRONOUS
     A distributed transaction is bound
     by availability of all nodes.

     (.99^1) = .99
     (.99^2) = .98
     (.99^3) = .97

PDX 2010
ASYNCHRONOUS
     Asynchronous systems operate
     without the concept of global state.
     The concurrency model more
     accurately reflects the real world.




PDX 2010
ASYNCHRONOUS
     Asynchronous systems operate
     without the concept of global state.
     The concurrency model more
     accurately reflects the real world.
     What about my ACID!?


PDX 2010
ACID
     Atomic
     Series of database operations either all occur, or nothing occurs.


     Consistent
     Transaction does not violate any integrity constraints during execution.


     Isolated
     Cannot access data that is modified during an incomplete transaction.


     Durable
     Transactions that have committed will survive permanently.

PDX 2010
ACID
     Defines a set of characteristics that
     aim to ensure consistency.
     What happens when we realize that
     in order scale we need to distribute
     our data and handle asynchronous
     operations?


PDX 2010
ACID
     Without global state, no Atomicity.
     Without a linear timeline, no
     transactions and no Isolation.
     The canonical location of data
     might not exist, therefore no D.


PDX 2010
Without A, I, or D, Consistency in
     terms of entity integrity is no longer
     guaranteed.




PDX 2010
CAP Theorem
     Eric Brewer @ 2000 Principles of
     Distributed Computing (PODC).
     Seth Gilbert and Nancy Lynch
     published a formal proof in 2002.




PDX 2010
CAP Acronym
     Consistency: Multiple values for the
     same piece of data are not allowed.
     Availability: If a non-failing node can
     be reached the system functions.
     Partition-Tolerance: Regardless of
     packet loss, if a non-failing node is
     reached the system functions.
PDX 2010
CAP Theorem

     Consistency, Availability, Partition-
     Tolerance: Choose One...




PDX 2010
CAP Theorem
     Single node systems bound by CAP.
     100% Partition-tolerant
     100% Consistent
     No Availability Guarantee




PDX 2010
CAP Theorem
     Multi-node systems bound by CAP.
     CA : DT, 2PC, ACID
     CP : Quorum, distributed databases
     AP : Dynamo, no ACID



PDX 2010
CAP Theorem
     CAP doesn't say AP systems are
     the solution to your problem.
     Not an absolute decision.
     Most systems are a hybrid of CA,
     CP, & AP.


PDX 2010
CAP Theorem
     Understand the trade-offs and use
     that understanding to build a
     system that fails predictably.
     Enables you to build a system that
     degrades gracefully during a failure.



PDX 2010
BASE
     Dan Pritchett
     BASE: An ACID Alternative
     Associate for Computing Machinery
     Queue, 2008



PDX 2010
BASE
     BASE: An ACID Alternative
     Basically Available
     Soft State
     Eventually Consistent




PDX 2010
BASE
     BASE: An ACID Alternative
     Basically Available
     Soft State
     Eventually Consistent




PDX 2010
Eventually Consistent
     Rename to Managed Consistency.
     Does not mean probable or hopeful
     or indefinite time in the future.
     Describes what happens during a
     failure.



PDX 2010
Eventually Consistent
     During certain scenarios a decision
     must be made to either return
     inconsistent data or deny a request.
     EC allows you control the level of
     consistency vs. availability in your
     application.


PDX 2010
Eventually Consistent
     In order to achieve availability in an
     asynchronous system, accept that
     failures are going to happen.
     Understand failure points and know
     what you are willing to give up in
     order to achieve availability.


PDX 2010
How can we model the operations
     we perform on our data to be
     asynchronous & EC?




PDX 2010
Model system as a network of
     independent components.
     Partition components along
     functional boundaries.
     Don't interact with your data as one
     big global state.


PDX 2010
This doesn't meant every part of
     your system must operate this way!
     Use ACID 2.0 to help identify and
     architect components than can.



PDX 2010
ACID 2.0
     Associative
     Order of operations does not change the result.


     Commutative
     Operations can be aggregated in any order.


     Idempotent
     Operation can be applied multiple times without changing the result.


     Distributed
     Operations are distributed and processed asynchronously.

PDX 2010
OPS BROS
     Incremental scalability
     Homogeneous node responsibilities
     Heterogeneous node capabilities




PDX 2010
LINKS
     Base: An ACID Alternative
     Into the Clouds on New Acid
     Brewer's CAP theorem
     Embracing Concurrency At Scale
     Amazon's Dynamo

PDX 2010
ME
     http://sorescode.com
     http://github.com/gotascii
     http://spkr8.com/s/1
     @vigemarn



PDX 2010

More Related Content

Viewers also liked

Lily and the Monome
Lily and the MonomeLily and the Monome
Lily and the Monome
Justin Marney
 
Wearhacks keynote-2015
Wearhacks keynote-2015Wearhacks keynote-2015
Wearhacks keynote-2015
Joanna Berzowska
 
Evaluating Paradigms
Evaluating ParadigmsEvaluating Paradigms
Evaluating Paradigms
Riva-Melissa Tez
 
Searchlogic
SearchlogicSearchlogic
Searchlogic
Justin Marney
 
The Computational condition
The Computational conditionThe Computational condition
The Computational condition
Venkatesh Rao
 
Cognitive biases - a visual study guide
Cognitive biases - a visual study guideCognitive biases - a visual study guide
Cognitive biases - a visual study guide
Eric Fernandez
 
Workshop protodeck (french)
Workshop protodeck (french)Workshop protodeck (french)
Workshop protodeck (french)Julien Bayle
 
SlideShare 101
SlideShare 101SlideShare 101
SlideShare 101
Amit Ranjan
 
Culture
CultureCulture
Culture
Reed Hastings
 

Viewers also liked (9)

Lily and the Monome
Lily and the MonomeLily and the Monome
Lily and the Monome
 
Wearhacks keynote-2015
Wearhacks keynote-2015Wearhacks keynote-2015
Wearhacks keynote-2015
 
Evaluating Paradigms
Evaluating ParadigmsEvaluating Paradigms
Evaluating Paradigms
 
Searchlogic
SearchlogicSearchlogic
Searchlogic
 
The Computational condition
The Computational conditionThe Computational condition
The Computational condition
 
Cognitive biases - a visual study guide
Cognitive biases - a visual study guideCognitive biases - a visual study guide
Cognitive biases - a visual study guide
 
Workshop protodeck (french)
Workshop protodeck (french)Workshop protodeck (french)
Workshop protodeck (french)
 
SlideShare 101
SlideShare 101SlideShare 101
SlideShare 101
 
Culture
CultureCulture
Culture
 

Similar to Distributing Your Data

Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
Kristoffer Sheather
 
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open ShiftMicrosoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
Travis Wright
 
Multicloud as the Next Generation of Cloud Infrastructure
Multicloud as the Next Generation of Cloud Infrastructure Multicloud as the Next Generation of Cloud Infrastructure
Multicloud as the Next Generation of Cloud Infrastructure
Brad Eckert
 
Presentation cisco plus tech datacenter virtualisering
Presentation   cisco plus tech datacenter virtualiseringPresentation   cisco plus tech datacenter virtualisering
Presentation cisco plus tech datacenter virtualisering
xKinAnx
 
End-to-End Data Center Virtualization
End-to-End Data Center VirtualizationEnd-to-End Data Center Virtualization
End-to-End Data Center Virtualization
Cisco Canada
 
Red Hat Software Defined Storage
Red Hat Software Defined StorageRed Hat Software Defined Storage
Red Hat Software Defined Storage
DLT Solutions
 
Cisco storage networking protect scale-simplify_dec_2016
Cisco storage networking   protect scale-simplify_dec_2016Cisco storage networking   protect scale-simplify_dec_2016
Cisco storage networking protect scale-simplify_dec_2016
Tony Antony
 
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
Cisco Canada
 
OMG DDS Interoperability Demo 2009
OMG DDS Interoperability Demo 2009OMG DDS Interoperability Demo 2009
OMG DDS Interoperability Demo 2009
Gerardo Pardo-Castellote
 
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPODHPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
inside-BigData.com
 
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCSPROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
Proact Netherlands B.V.
 
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backboneT12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
Fujitsu India
 
Citi Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid CloudCiti Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid Cloud
confluent
 
Best Data Center Service Provider in India - Best Hybrid Cloud Hosting Servi...
Best Data Center Service Provider in India -  Best Hybrid Cloud Hosting Servi...Best Data Center Service Provider in India -  Best Hybrid Cloud Hosting Servi...
Best Data Center Service Provider in India - Best Hybrid Cloud Hosting Servi...
NetData Vault
 
Bringing Cloud Scale Efficiency to Communication Services Providers through R...
Bringing Cloud Scale Efficiency to Communication Services Providers through R...Bringing Cloud Scale Efficiency to Communication Services Providers through R...
Bringing Cloud Scale Efficiency to Communication Services Providers through R...
Radisys Corporation
 
Cisco data center training for ibm
Cisco data center training for ibmCisco data center training for ibm
Cisco data center training for ibm
Christian Silva Espinoza
 
Brocade powering communications & collaboration
Brocade powering communications & collaborationBrocade powering communications & collaboration
Brocade powering communications & collaboration
Unified Communications Online
 
The Path to SDN - How to Ensure a Successful SDN Evolution
The Path to SDN - How to Ensure a Successful SDN EvolutionThe Path to SDN - How to Ensure a Successful SDN Evolution
The Path to SDN - How to Ensure a Successful SDN Evolution
Juniper Networks
 
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
PROIDEA
 
MIG 5th Data Centre Summit 2016 PTS Presentation v1
MIG 5th Data Centre Summit 2016 PTS Presentation v1MIG 5th Data Centre Summit 2016 PTS Presentation v1
MIG 5th Data Centre Summit 2016 PTS Presentation v1
blewington
 

Similar to Distributing Your Data (20)

Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
Scaling Your SDDC Network: Building a Highly Scalable SDDC Infrastructure wit...
 
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open ShiftMicrosoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
Microsoft Ignite 2017 - SQL Server on Kubernetes, Swarm, and Open Shift
 
Multicloud as the Next Generation of Cloud Infrastructure
Multicloud as the Next Generation of Cloud Infrastructure Multicloud as the Next Generation of Cloud Infrastructure
Multicloud as the Next Generation of Cloud Infrastructure
 
Presentation cisco plus tech datacenter virtualisering
Presentation   cisco plus tech datacenter virtualiseringPresentation   cisco plus tech datacenter virtualisering
Presentation cisco plus tech datacenter virtualisering
 
End-to-End Data Center Virtualization
End-to-End Data Center VirtualizationEnd-to-End Data Center Virtualization
End-to-End Data Center Virtualization
 
Red Hat Software Defined Storage
Red Hat Software Defined StorageRed Hat Software Defined Storage
Red Hat Software Defined Storage
 
Cisco storage networking protect scale-simplify_dec_2016
Cisco storage networking   protect scale-simplify_dec_2016Cisco storage networking   protect scale-simplify_dec_2016
Cisco storage networking protect scale-simplify_dec_2016
 
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
The Hitch-Hikers Guide to Data Centre Virtualization and Workload Consolidation:
 
OMG DDS Interoperability Demo 2009
OMG DDS Interoperability Demo 2009OMG DDS Interoperability Demo 2009
OMG DDS Interoperability Demo 2009
 
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPODHPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
HPC at Scale Enabled by DDN A3i and NVIDIA SuperPOD
 
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCSPROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
PROACT SYNC 2013 - Breakout - End to End uitleg over Cisco UCS
 
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backboneT12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
T12.Fujitsu World Tour India 2016-Your Datacenter‘s backbone
 
Citi Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid CloudCiti Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid Cloud
 
Best Data Center Service Provider in India - Best Hybrid Cloud Hosting Servi...
Best Data Center Service Provider in India -  Best Hybrid Cloud Hosting Servi...Best Data Center Service Provider in India -  Best Hybrid Cloud Hosting Servi...
Best Data Center Service Provider in India - Best Hybrid Cloud Hosting Servi...
 
Bringing Cloud Scale Efficiency to Communication Services Providers through R...
Bringing Cloud Scale Efficiency to Communication Services Providers through R...Bringing Cloud Scale Efficiency to Communication Services Providers through R...
Bringing Cloud Scale Efficiency to Communication Services Providers through R...
 
Cisco data center training for ibm
Cisco data center training for ibmCisco data center training for ibm
Cisco data center training for ibm
 
Brocade powering communications & collaboration
Brocade powering communications & collaborationBrocade powering communications & collaboration
Brocade powering communications & collaboration
 
The Path to SDN - How to Ensure a Successful SDN Evolution
The Path to SDN - How to Ensure a Successful SDN EvolutionThe Path to SDN - How to Ensure a Successful SDN Evolution
The Path to SDN - How to Ensure a Successful SDN Evolution
 
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
PLNOG 9: Marcin Strzyżewski, Marcin Wawrzyński - Videoscape Distribution Suite
 
MIG 5th Data Centre Summit 2016 PTS Presentation v1
MIG 5th Data Centre Summit 2016 PTS Presentation v1MIG 5th Data Centre Summit 2016 PTS Presentation v1
MIG 5th Data Centre Summit 2016 PTS Presentation v1
 

Recently uploaded

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
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
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
Data Hops
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
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
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
maazsz111
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
Shinana2
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
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
 

Recently uploaded (20)

Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
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
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3FREE A4 Cyber Security Awareness  Posters-Social Engineering part 3
FREE A4 Cyber Security Awareness Posters-Social Engineering part 3
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
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
 
SAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloudSAP S/4 HANA sourcing and procurement to Public cloud
SAP S/4 HANA sourcing and procurement to Public cloud
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
dbms calicut university B. sc Cs 4th sem.pdf
dbms  calicut university B. sc Cs 4th sem.pdfdbms  calicut university B. sc Cs 4th sem.pdf
dbms calicut university B. sc Cs 4th sem.pdf
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 

Distributing Your Data

  • 2. Justin Marney HELLO DEVDAY PDX 2010
  • 3. Viget Labs Justin Marney HELLO DEVDAY PDX 2010
  • 4. GMU BCS ‘06 Viget Labs Justin Marney HELLO DEVDAY PDX 2010
  • 5. Ruby ‘07 GMU BCS ‘06 Viget Labs Justin Marney PDX 2010
  • 6. Viget ‘08 Ruby ‘07 GMU BCS ‘06 Viget Labs PDX 2010
  • 9. DISTRIBUTING YOUR DATA PDX 2010
  • 10. WHY? DISTRIBUTING YOUR DATA PDX 2010
  • 11. web applications are judged by their level of availability WHY? DISTRIBUTING YOUR DATA PDX 2010
  • 12. ability to continue operating during failure scenarios web applications are judged by their level of availability WHY? DISTRIBUTING PDX 2010 YOUR DATA
  • 13. ability to manage availability during failure scenarios ability to continue operating during failure scenarios web applications are judged by their level of availability WHY? PDX 2010
  • 14. increase throughput ability to manage availability during node failure ability to continue operating during failure scenarios web applications are judged by their level of availability PDX 2010 WHY?
  • 15. increase durability increase throughput ability to manage availability during node failure ability to continue operating during failure scenarios web applications are judged by their level of availability PDX 2010
  • 16. increase scalability increase durability increase throughput ability to manage availability during node failure ability to continue operating during failure scenarios PDX 2010
  • 17. SCALABILITY "I can add twice as much X and get twice as much Y." X = processor, RAM, disks, servers, bandwidth Y = throughput, storage space, uptime PDX 2010
  • 18. SCALABILITY scalability is a ratio. 2:2 = linear scalability ratio scalability ratio allows you to predict how much it will cost you to grow. PDX 2010
  • 19. SCALABILITY UP/DOWN/VERTICAL/ HORIZONTAL/L/R/L/R/A/ B/START PDX 2010
  • 20. SCALABILITY UP grow your infrastructure multiple data centers higher bandwidth faster machines PDX 2010
  • 21. SCALABILITY DOWN shrink your infrastructure mobile set-top laptop PDX 2010
  • 22. SCALABILITY VERTICAL add to a single node CPU RAM RAID PDX 2010
  • 23. SCALABILITY HORIZONTAL add more nodes distribute the load commodity cost limited only by capital PDX 2010
  • 24. @gary_hustwit: Dear Twitter: when a World Cup match is at the 90th minute, you might want to turn on a few more servers. PDX 2010
  • 25. ASYNCHRONOUS A distributed transaction is bound by availability of all nodes. PDX 2010
  • 26. ASYNCHRONOUS A distributed transaction is bound by availability of all nodes. (.99^1) = .99 (.99^2) = .98 (.99^3) = .97 PDX 2010
  • 27. ASYNCHRONOUS Asynchronous systems operate without the concept of global state. The concurrency model more accurately reflects the real world. PDX 2010
  • 28. ASYNCHRONOUS Asynchronous systems operate without the concept of global state. The concurrency model more accurately reflects the real world. What about my ACID!? PDX 2010
  • 29. ACID Atomic Series of database operations either all occur, or nothing occurs. Consistent Transaction does not violate any integrity constraints during execution. Isolated Cannot access data that is modified during an incomplete transaction. Durable Transactions that have committed will survive permanently. PDX 2010
  • 30. ACID Defines a set of characteristics that aim to ensure consistency. What happens when we realize that in order scale we need to distribute our data and handle asynchronous operations? PDX 2010
  • 31. ACID Without global state, no Atomicity. Without a linear timeline, no transactions and no Isolation. The canonical location of data might not exist, therefore no D. PDX 2010
  • 32. Without A, I, or D, Consistency in terms of entity integrity is no longer guaranteed. PDX 2010
  • 33. CAP Theorem Eric Brewer @ 2000 Principles of Distributed Computing (PODC). Seth Gilbert and Nancy Lynch published a formal proof in 2002. PDX 2010
  • 34. CAP Acronym Consistency: Multiple values for the same piece of data are not allowed. Availability: If a non-failing node can be reached the system functions. Partition-Tolerance: Regardless of packet loss, if a non-failing node is reached the system functions. PDX 2010
  • 35. CAP Theorem Consistency, Availability, Partition- Tolerance: Choose One... PDX 2010
  • 36. CAP Theorem Single node systems bound by CAP. 100% Partition-tolerant 100% Consistent No Availability Guarantee PDX 2010
  • 37. CAP Theorem Multi-node systems bound by CAP. CA : DT, 2PC, ACID CP : Quorum, distributed databases AP : Dynamo, no ACID PDX 2010
  • 38. CAP Theorem CAP doesn't say AP systems are the solution to your problem. Not an absolute decision. Most systems are a hybrid of CA, CP, & AP. PDX 2010
  • 39. CAP Theorem Understand the trade-offs and use that understanding to build a system that fails predictably. Enables you to build a system that degrades gracefully during a failure. PDX 2010
  • 40. BASE Dan Pritchett BASE: An ACID Alternative Associate for Computing Machinery Queue, 2008 PDX 2010
  • 41. BASE BASE: An ACID Alternative Basically Available Soft State Eventually Consistent PDX 2010
  • 42. BASE BASE: An ACID Alternative Basically Available Soft State Eventually Consistent PDX 2010
  • 43. Eventually Consistent Rename to Managed Consistency. Does not mean probable or hopeful or indefinite time in the future. Describes what happens during a failure. PDX 2010
  • 44. Eventually Consistent During certain scenarios a decision must be made to either return inconsistent data or deny a request. EC allows you control the level of consistency vs. availability in your application. PDX 2010
  • 45. Eventually Consistent In order to achieve availability in an asynchronous system, accept that failures are going to happen. Understand failure points and know what you are willing to give up in order to achieve availability. PDX 2010
  • 46. How can we model the operations we perform on our data to be asynchronous & EC? PDX 2010
  • 47. Model system as a network of independent components. Partition components along functional boundaries. Don't interact with your data as one big global state. PDX 2010
  • 48. This doesn't meant every part of your system must operate this way! Use ACID 2.0 to help identify and architect components than can. PDX 2010
  • 49. ACID 2.0 Associative Order of operations does not change the result. Commutative Operations can be aggregated in any order. Idempotent Operation can be applied multiple times without changing the result. Distributed Operations are distributed and processed asynchronously. PDX 2010
  • 50. OPS BROS Incremental scalability Homogeneous node responsibilities Heterogeneous node capabilities PDX 2010
  • 51. LINKS Base: An ACID Alternative Into the Clouds on New Acid Brewer's CAP theorem Embracing Concurrency At Scale Amazon's Dynamo PDX 2010
  • 52. ME http://sorescode.com http://github.com/gotascii http://spkr8.com/s/1 @vigemarn PDX 2010