SlideShare a Scribd company logo
CAP Theorem
Vikash Kodati
10/19/2016
CAP Theorem (also Brewer's theorem)
4/6/2016 T-MobileConfidential2
It is impossible for a distributed system to simultaneously provide all three of the
following guarantees: (Pick any two)
1. Consistency: All nodes should see the same data at the same time or reads
return latest written value by any client
2. Availability: Every request receives a response. The system allows operations all
the time and operations return quickly
3. Partition – Tolerance: the system continues to operate despite arbitrary
partitioning due to network failures
4/6/2016 T-MobileConfidential3
4/6/2016 T-MobileConfidential4
4/6/2016 T-MobileConfidential5
Why is Availability Important?
4/6/2016 T-MobileConfidential6
Availability = Reads / writes complete reliably and quickly.
• Data shows that a 500 ms increase in latency for operations at Amazon.com or at
Google.com can cause a 20% drop in revenue
• At Amazon , each added millisecond of latency implies a $6M yearly loss
• SLAs written by providers predominantly deal with latencies faced by clients
Why is Consistency Important?
4/6/2016 T-MobileConfidential7
Consistency = all nodes see same data at time, or reads return latest written value by
any client.
• When you access your bank or investment account via multiple clients, you want the
updates done from one client to be visible to other clients.
• When thousands of customers are looking to book a flight, all updates from any client
should be accessible by other clients.
Why is Partition - Tolerance Important?
4/6/2016 T-MobileConfidential8
Partitions can happen across datacenter when the network gets disconnected
• Internet router outages
• Under-sea cables cut
• DNS not working
• Partitions can also occur within a datacenter, e.g., a rack switch outage.
• Still we desire a system to continue functioning normally
DESIGN FOR FAILURE
6/13/2016 T-MobileConfidential9
Typical first year for a new cluster:
~0.5 overheating (power down most machines in <5 mins, ~1-2 days to recover)
~1 PDU failure (~500-1000 machines suddenly disappear, ~6 hours to come back)
~1 rack-move (plenty of warning, ~500-1000 machines powered down, ~6 hours)
~1 network rewiring (rolling ~5% of machines down over 2-day span)
~20 rack failures (40-80 machines instantly disappear, 1-6 hours to get back)
~5 racks go wonky (40-80 machines see 50% packet loss)
~8 network maintenances (4 might cause ~30-minute random connectivity losses)
~12 router reloads (takes out DNS and external vips for a couple minutes)
~3 router failures (have to immediately pull traffic for an hour)
~dozens of minor 30-second blips for dns
~1000 individual machine failures
~thousands of hard drive failures
slow disks, bad memory, misconfigured machines, flaky machines, etc.
Note: Data taken from Jeff Dean’s slides (Google)
CAP Theorem Fallout
4/6/2016 T-MobileConfidential10
• Since partition-tolerance is essential / inevitable in today’s cloud computing systems,
CAP theorem implies that a system has to choose between consistency and
availability.
• Cassandra (AP System, Sacrifice Consistency)
• Eventual (Weak) consistency , Availability and Partition –Tolerance.
• Traditional RDBMSs (CA System, Partitions can’t happen [single node])
• Strong consistency over availability under a partition.
NOSQL Landscape
6/13/2016 T-MobileConfidential11
Eventual Consistency
4/6/2016 T-MobileConfidential12
• If all writes stop (to a key), then all its values (replicas) will coverage eventually.
• If writes continues , then system always tries to keep converging.
• Moving “wave” of updated values lagging behind the latest values sent by
clients , but always trying to catch up.
• But works well when there a few periods of low writes – system converges quickly.
RDBMS vs. Key value stores
4/6/2016 T-MobileConfidential13
• While RDBMS provide ACID.
• Atomicity
• Consistency
• Isolation
• Durability
• Key – value stores like Cassandra provide BASE
• Basically Available Soft-state Eventual Consistency
• Prefers Availability over Consistency
CONCLUSION
4/6/2016 T-MobileConfidential14
• Business vs Engineering decisions
• Would you rather be down or show wrong prices/inventory
• Would you rather be slow or show wrong prices/inventory
• New Paradigm
• Industries trying trying to run on availability
• Model systems to mimic laws of Physics
• Once done, cant revert. Why: because we cannot go back in time
• Once done, we can correct (if needed). This is eventual consistency
• Telecommunication Industry Example
• Commissions team: Pay advances but chargeback later
THANK YOU & QA
6/13/2016 T-MobileConfidential15
Vikash Kodati
• Email: Vikash.Kodati@t-mobile.com
• Yammer: https://www.yammer.com/t-mobile.com/users/vikashkodati
• Github: https://github.com/vikashkodati
• LinkedIn: /in/vikashkodati
• Twitter: @vikashkodati
• Blog: https://tmobileusa.sharepoint.com/portals/hub/personal/vikashkodati
REFERENCES
6/13/2016 T-MobileConfidential16
http://mwhittaker.github.io/2014/08/16/illustrated-proof-cap-theorem/
https://pinboard.in/u:sids/t:fifthel2015
Mandelbroth Set
6/13/2016 T-MobileConfidential17
Mandelbroth Set
6/13/2016 T-MobileConfidential18

More Related Content

What's hot

Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)
Sri Prasanna
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed system
ishapadhy
 
6.distributed shared memory
6.distributed shared memory6.distributed shared memory
6.distributed shared memory
Gd Goenka University
 
1.intro. to distributed system
1.intro. to distributed system1.intro. to distributed system
1.intro. to distributed system
Gd Goenka University
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shaping
Vimal Dewangan
 
Chap 4
Chap 4Chap 4
Chap 4
suks_87
 
11. dfs
11. dfs11. dfs
Congestion control
Congestion controlCongestion control
Congestion control
Aman Jaiswal
 
DAS RAID NAS SAN
DAS RAID NAS SANDAS RAID NAS SAN
DAS RAID NAS SAN
Ghassen Smida
 
IEEE 802.11 Architecture and Services
IEEE 802.11 Architecture and ServicesIEEE 802.11 Architecture and Services
IEEE 802.11 Architecture and Services
Sayed Chhattan Shah
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating System
Tech_MX
 
operating system structure
operating system structureoperating system structure
operating system structure
Waseem Ud Din Farooqui
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed System
RKGhosh3
 
Real-Time Operating Systems
Real-Time Operating SystemsReal-Time Operating Systems
Real-Time Operating Systems
Praveen Penumathsa
 
REAL TIME OPERATING SYSTEM PART 1
REAL TIME OPERATING SYSTEM PART 1REAL TIME OPERATING SYSTEM PART 1
REAL TIME OPERATING SYSTEM PART 1
Embeddedcraft Craft
 
5. protocol layering
5. protocol layering5. protocol layering
5. protocol layering
JAIGANESH SEKAR
 
Synchronization in distributed computing
Synchronization in distributed computingSynchronization in distributed computing
Synchronization in distributed computing
SVijaylakshmi
 
TFTP - Trivial File Transfer Protocol
TFTP - Trivial File Transfer ProtocolTFTP - Trivial File Transfer Protocol
TFTP - Trivial File Transfer Protocol
Peter R. Egli
 
Basics of storage Technology
Basics of storage TechnologyBasics of storage Technology
Basics of storage Technology
Lopamudra Das
 
Transport layer
Transport layerTransport layer
Transport layer
reshmadayma
 

What's hot (20)

Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)Clock Synchronization (Distributed computing)
Clock Synchronization (Distributed computing)
 
System models in distributed system
System models in distributed systemSystem models in distributed system
System models in distributed system
 
6.distributed shared memory
6.distributed shared memory6.distributed shared memory
6.distributed shared memory
 
1.intro. to distributed system
1.intro. to distributed system1.intro. to distributed system
1.intro. to distributed system
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shaping
 
Chap 4
Chap 4Chap 4
Chap 4
 
11. dfs
11. dfs11. dfs
11. dfs
 
Congestion control
Congestion controlCongestion control
Congestion control
 
DAS RAID NAS SAN
DAS RAID NAS SANDAS RAID NAS SAN
DAS RAID NAS SAN
 
IEEE 802.11 Architecture and Services
IEEE 802.11 Architecture and ServicesIEEE 802.11 Architecture and Services
IEEE 802.11 Architecture and Services
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating System
 
operating system structure
operating system structureoperating system structure
operating system structure
 
Introduction to Distributed System
Introduction to Distributed SystemIntroduction to Distributed System
Introduction to Distributed System
 
Real-Time Operating Systems
Real-Time Operating SystemsReal-Time Operating Systems
Real-Time Operating Systems
 
REAL TIME OPERATING SYSTEM PART 1
REAL TIME OPERATING SYSTEM PART 1REAL TIME OPERATING SYSTEM PART 1
REAL TIME OPERATING SYSTEM PART 1
 
5. protocol layering
5. protocol layering5. protocol layering
5. protocol layering
 
Synchronization in distributed computing
Synchronization in distributed computingSynchronization in distributed computing
Synchronization in distributed computing
 
TFTP - Trivial File Transfer Protocol
TFTP - Trivial File Transfer ProtocolTFTP - Trivial File Transfer Protocol
TFTP - Trivial File Transfer Protocol
 
Basics of storage Technology
Basics of storage TechnologyBasics of storage Technology
Basics of storage Technology
 
Transport layer
Transport layerTransport layer
Transport layer
 

Viewers also liked

MITx 6.002
MITx 6.002MITx 6.002
MITx 6.002
Avinash kumar
 
International Higher Education in Facts and Figures 2016
International Higher Education in Facts and Figures 2016International Higher Education in Facts and Figures 2016
International Higher Education in Facts and Figures 2016
Cléo Fatoorehchi
 
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
Jisc
 
Earth by Mr.rajapakse(science teacher)
Earth  by Mr.rajapakse(science teacher)Earth  by Mr.rajapakse(science teacher)
Earth by Mr.rajapakse(science teacher)
Anil prasanna
 
Invited Speech at All Island Sweet Manufacturers - AGM 2015
Invited Speech at All Island Sweet Manufacturers - AGM 2015Invited Speech at All Island Sweet Manufacturers - AGM 2015
Invited Speech at All Island Sweet Manufacturers - AGM 2015
Panchama Themiya Pannilarathne
 
bhel summer training block 1& 4report
bhel summer training block 1& 4reportbhel summer training block 1& 4report
bhel summer training block 1& 4report
Avinash kumar
 
What Is A Game Engine
What Is A Game EngineWhat Is A Game Engine
What Is A Game Engine
Seth Sivak
 

Viewers also liked (8)

test
testtest
test
 
MITx 6.002
MITx 6.002MITx 6.002
MITx 6.002
 
International Higher Education in Facts and Figures 2016
International Higher Education in Facts and Figures 2016International Higher Education in Facts and Figures 2016
International Higher Education in Facts and Figures 2016
 
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
Connect more with peers and practice: Pecha Kucha sessions - Nottingham Unive...
 
Earth by Mr.rajapakse(science teacher)
Earth  by Mr.rajapakse(science teacher)Earth  by Mr.rajapakse(science teacher)
Earth by Mr.rajapakse(science teacher)
 
Invited Speech at All Island Sweet Manufacturers - AGM 2015
Invited Speech at All Island Sweet Manufacturers - AGM 2015Invited Speech at All Island Sweet Manufacturers - AGM 2015
Invited Speech at All Island Sweet Manufacturers - AGM 2015
 
bhel summer training block 1& 4report
bhel summer training block 1& 4reportbhel summer training block 1& 4report
bhel summer training block 1& 4report
 
What Is A Game Engine
What Is A Game EngineWhat Is A Game Engine
What Is A Game Engine
 

Similar to CAP Theorem

Circuit Breaker Pattern
Circuit Breaker PatternCircuit Breaker Pattern
Circuit Breaker Pattern
Vikash Kodati
 
No sql (not only sql)
No sql                 (not only sql)No sql                 (not only sql)
No sql (not only sql)
Priyodarshini Dhar
 
Haystack + DASH7 Security
Haystack + DASH7 SecurityHaystack + DASH7 Security
Haystack + DASH7 Security
Haystack Technologies
 
Highly available, scalable and secure data with Cassandra and DataStax Enterp...
Highly available, scalable and secure data with Cassandra and DataStax Enterp...Highly available, scalable and secure data with Cassandra and DataStax Enterp...
Highly available, scalable and secure data with Cassandra and DataStax Enterp...
Johnny Miller
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Toronto-Oracle-Users-Group
 
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
javier ramirez
 
Everything you always wanted to know about highly available distributed datab...
Everything you always wanted to know about highly available distributed datab...Everything you always wanted to know about highly available distributed datab...
Everything you always wanted to know about highly available distributed datab...
Codemotion
 
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
DataStax Academy
 
NoSQL Evolution
NoSQL EvolutionNoSQL Evolution
NoSQL Evolution
Abdul Manaf
 
Highly available distributed databases, how they work, javier ramirez at teowaki
Highly available distributed databases, how they work, javier ramirez at teowakiHighly available distributed databases, how they work, javier ramirez at teowaki
Highly available distributed databases, how they work, javier ramirez at teowaki
javier ramirez
 
Petabytes and Nanoseconds
Petabytes and NanosecondsPetabytes and Nanoseconds
Petabytes and Nanoseconds
Robert Greiner
 
Consistency in Distributed Systems, Part 2
Consistency in Distributed Systems, Part 2Consistency in Distributed Systems, Part 2
Consistency in Distributed Systems, Part 2
DATAVERSITY
 
No sql databases
No sql databases No sql databases
No sql databases
Ankit Dubey
 
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Clustrix
 
Cassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra CommunityCassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra Community
Hiromitsu Komatsu
 
Big Data Streams Architectures. Why? What? How?
Big Data Streams Architectures. Why? What? How?Big Data Streams Architectures. Why? What? How?
Big Data Streams Architectures. Why? What? How?
Anton Nazaruk
 
Always On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on CassandraAlways On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on Cassandra
Robbie Strickland
 
Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...
javier ramirez
 
6 Requirements of QoS Webinar
6 Requirements of QoS Webinar6 Requirements of QoS Webinar
6 Requirements of QoS Webinar
NetApp
 
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 CAP Theorem (20)

Circuit Breaker Pattern
Circuit Breaker PatternCircuit Breaker Pattern
Circuit Breaker Pattern
 
No sql (not only sql)
No sql                 (not only sql)No sql                 (not only sql)
No sql (not only sql)
 
Haystack + DASH7 Security
Haystack + DASH7 SecurityHaystack + DASH7 Security
Haystack + DASH7 Security
 
Highly available, scalable and secure data with Cassandra and DataStax Enterp...
Highly available, scalable and secure data with Cassandra and DataStax Enterp...Highly available, scalable and secure data with Cassandra and DataStax Enterp...
Highly available, scalable and secure data with Cassandra and DataStax Enterp...
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
 
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
Basics of the Highly Available Distributed Databases - teowaki - javier ramir...
 
Everything you always wanted to know about highly available distributed datab...
Everything you always wanted to know about highly available distributed datab...Everything you always wanted to know about highly available distributed datab...
Everything you always wanted to know about highly available distributed datab...
 
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
Tales From The Front: An Architecture For Multi-Data Center Scalable Applicat...
 
NoSQL Evolution
NoSQL EvolutionNoSQL Evolution
NoSQL Evolution
 
Highly available distributed databases, how they work, javier ramirez at teowaki
Highly available distributed databases, how they work, javier ramirez at teowakiHighly available distributed databases, how they work, javier ramirez at teowaki
Highly available distributed databases, how they work, javier ramirez at teowaki
 
Petabytes and Nanoseconds
Petabytes and NanosecondsPetabytes and Nanoseconds
Petabytes and Nanoseconds
 
Consistency in Distributed Systems, Part 2
Consistency in Distributed Systems, Part 2Consistency in Distributed Systems, Part 2
Consistency in Distributed Systems, Part 2
 
No sql databases
No sql databases No sql databases
No sql databases
 
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
Tech Talk Series, Part 2: Why is sharding not smart to do in MySQL?
 
Cassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra CommunityCassandra CLuster Management by Japan Cassandra Community
Cassandra CLuster Management by Japan Cassandra Community
 
Big Data Streams Architectures. Why? What? How?
Big Data Streams Architectures. Why? What? How?Big Data Streams Architectures. Why? What? How?
Big Data Streams Architectures. Why? What? How?
 
Always On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on CassandraAlways On: Building Highly Available Applications on Cassandra
Always On: Building Highly Available Applications on Cassandra
 
Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...Everything you always wanted to know about Distributed databases, at devoxx l...
Everything you always wanted to know about Distributed databases, at devoxx l...
 
6 Requirements of QoS Webinar
6 Requirements of QoS Webinar6 Requirements of QoS Webinar
6 Requirements of QoS Webinar
 
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
 

CAP Theorem

  • 2. CAP Theorem (also Brewer's theorem) 4/6/2016 T-MobileConfidential2 It is impossible for a distributed system to simultaneously provide all three of the following guarantees: (Pick any two) 1. Consistency: All nodes should see the same data at the same time or reads return latest written value by any client 2. Availability: Every request receives a response. The system allows operations all the time and operations return quickly 3. Partition – Tolerance: the system continues to operate despite arbitrary partitioning due to network failures
  • 6. Why is Availability Important? 4/6/2016 T-MobileConfidential6 Availability = Reads / writes complete reliably and quickly. • Data shows that a 500 ms increase in latency for operations at Amazon.com or at Google.com can cause a 20% drop in revenue • At Amazon , each added millisecond of latency implies a $6M yearly loss • SLAs written by providers predominantly deal with latencies faced by clients
  • 7. Why is Consistency Important? 4/6/2016 T-MobileConfidential7 Consistency = all nodes see same data at time, or reads return latest written value by any client. • When you access your bank or investment account via multiple clients, you want the updates done from one client to be visible to other clients. • When thousands of customers are looking to book a flight, all updates from any client should be accessible by other clients.
  • 8. Why is Partition - Tolerance Important? 4/6/2016 T-MobileConfidential8 Partitions can happen across datacenter when the network gets disconnected • Internet router outages • Under-sea cables cut • DNS not working • Partitions can also occur within a datacenter, e.g., a rack switch outage. • Still we desire a system to continue functioning normally
  • 9. DESIGN FOR FAILURE 6/13/2016 T-MobileConfidential9 Typical first year for a new cluster: ~0.5 overheating (power down most machines in <5 mins, ~1-2 days to recover) ~1 PDU failure (~500-1000 machines suddenly disappear, ~6 hours to come back) ~1 rack-move (plenty of warning, ~500-1000 machines powered down, ~6 hours) ~1 network rewiring (rolling ~5% of machines down over 2-day span) ~20 rack failures (40-80 machines instantly disappear, 1-6 hours to get back) ~5 racks go wonky (40-80 machines see 50% packet loss) ~8 network maintenances (4 might cause ~30-minute random connectivity losses) ~12 router reloads (takes out DNS and external vips for a couple minutes) ~3 router failures (have to immediately pull traffic for an hour) ~dozens of minor 30-second blips for dns ~1000 individual machine failures ~thousands of hard drive failures slow disks, bad memory, misconfigured machines, flaky machines, etc. Note: Data taken from Jeff Dean’s slides (Google)
  • 10. CAP Theorem Fallout 4/6/2016 T-MobileConfidential10 • Since partition-tolerance is essential / inevitable in today’s cloud computing systems, CAP theorem implies that a system has to choose between consistency and availability. • Cassandra (AP System, Sacrifice Consistency) • Eventual (Weak) consistency , Availability and Partition –Tolerance. • Traditional RDBMSs (CA System, Partitions can’t happen [single node]) • Strong consistency over availability under a partition.
  • 12. Eventual Consistency 4/6/2016 T-MobileConfidential12 • If all writes stop (to a key), then all its values (replicas) will coverage eventually. • If writes continues , then system always tries to keep converging. • Moving “wave” of updated values lagging behind the latest values sent by clients , but always trying to catch up. • But works well when there a few periods of low writes – system converges quickly.
  • 13. RDBMS vs. Key value stores 4/6/2016 T-MobileConfidential13 • While RDBMS provide ACID. • Atomicity • Consistency • Isolation • Durability • Key – value stores like Cassandra provide BASE • Basically Available Soft-state Eventual Consistency • Prefers Availability over Consistency
  • 14. CONCLUSION 4/6/2016 T-MobileConfidential14 • Business vs Engineering decisions • Would you rather be down or show wrong prices/inventory • Would you rather be slow or show wrong prices/inventory • New Paradigm • Industries trying trying to run on availability • Model systems to mimic laws of Physics • Once done, cant revert. Why: because we cannot go back in time • Once done, we can correct (if needed). This is eventual consistency • Telecommunication Industry Example • Commissions team: Pay advances but chargeback later
  • 15. THANK YOU & QA 6/13/2016 T-MobileConfidential15 Vikash Kodati • Email: Vikash.Kodati@t-mobile.com • Yammer: https://www.yammer.com/t-mobile.com/users/vikashkodati • Github: https://github.com/vikashkodati • LinkedIn: /in/vikashkodati • Twitter: @vikashkodati • Blog: https://tmobileusa.sharepoint.com/portals/hub/personal/vikashkodati

Editor's Notes

  1. Encourage interactive session Informal discussion Eat lunch My Goal is to keep us all on the same page at a conceptual level. Please stop me and ask questions
  2. Again a set of statements.
  3. Netflix randomly brings down nodes and simulate failure to check resiliency (Chaos Monkey)
  4. Again a set of statements.
  5. Talk about eventual consistency This concept is also known as BASE (as opposed to ACID) – Basically Available, Soft State, Eventually Consistent ACID (Atomicity, Consistency, Isolation, Durability)
  6. Again a set of statements.
  7. Again a set of statements.
  8. Z_(n+1) = (Z_n)^2 + C Beautiful fractal, In complex plane Recursive quadratic equation (self referential) Analogy for zoom in zoom out (various levels of abstraction) How there exists a universe at every abstraction level and the same thing repeats over and over ad infinitum. Characteristic: It is bounded. [-2, 2]
  9. There exists a universe at every abstraction level and the same thing repeats over and over ad infinitum. Characteristic: It is bounded. [-2, 2]