SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
CSS LABS




           Distributed Key-Value Stores
                    Featuring Riak
CSS LABS
                       Hi, i am qiak   Hi, i am riak   Hi, i am siak




     Hi, i am piak




                                                                       Hi, i am tiak



                     Story of a 5 Node Cluster


          Once upon time there were five nodes...
                                           ... and they formed a Ring
CSS LABS
                   Qiak, I will
                                  All is well!   I am hit!
                   Take care.



     Too drunk!




                                                             Siak! I amthere!




                  Story of a 5 Node Cluster


        They together kept a lot of data...
                   ... some shared, some not ...
                         ... they were always willing to cover up
CSS LABS                                                                          Hi, i am viak!
                                                                  Guys! This is
                                         Great to   Ah! did you
                    Well, hello!                                     viak.
                                        have you!     know?




       Hi Viak!




                  Story of a 5 Node Cluster

       They were welcoming...

                                   ... they were together called Riak!
CSS LABS




                     Riak Cluster
                        The Features



       * Decentralized        * Erlang Advantage
       * Key-Value Store      * RESTful API: jiak
       * Document Oriented    * Map-Reduce
CSS LABS




                     Riak Cluster
                        The Features



       * Decentralized        * No master
                              * Node Independence
                              * Failure Tranperancy
CSS LABS




                     Riak Cluster
                        The Features



                              * NoSQL
       * Key-Value Store      * Memory Footprint
                              * Logical data
CSS LABS




                    Riak Cluster
                       The Features



                             * No Tables
                             * Field Flexibilty
       * Document Oriented
                             * Extensible
CSS LABS




                      Riak Cluster
                         The Features



       * Designed to Distribute   * Erlang Advantage

       * Concurrent Processes
       * No Shared State
CSS LABS




                      Riak Cluster
                         The Features



       * In Thing
       * Small Learning Curve   * RESTful API: jiak

       * Web 2.0
CSS LABS




                      Riak Cluster
                         The Features



       * Already Key-Value
       * Huge Data
                               * Map-Reduce
       * Clustered
CSS LABS




                            Riak Cluster
                               The Concepts

                A.C.I.D.*                     C.A.P.+




* Atomicity
  Consistency                                           +
                                                            Consistency
  Isolation                                                 Availability
  Durability                                                Partition Tolerance
CSS LABS




           Riak Cluster
              The Concepts
CSS LABS
Keys map onto points, on                     E           B's Key range:
 the ring, determined by                                    RangeEB
   some hash function




                    C

                                                     B



                           Riak Cluster
                              The Concepts


                                                         A's Key range:
                                                            RangeBA

                                                 A
                           D
CSS LABS
Keys map onto points, on                     E           B's Key range.
 the ring, determined by                                    RangeEB
   some hash function


                                B Crashes, now
                                  the range?
                                   RangeEA
                    C

                                                     B



                           Riak Cluster
                              The Concepts


                                                         A's Key range.
                                                            RangeBA

                                                 A
                           D
CSS LABS
Keys map onto points, on                           E            B's Key range:
 the ring, determined by                                           RangeEB
   some hash function




                    C

                                                            B



 Replicas of the           Riak Cluster
                              The Concepts
   data are                The Key is hashed onto the
  maintained.                   ring, in RangeBA                A's Key range:
                             Hence data stored in A                RangeBA

                                                        A
                           D
CSS LABS
Keys map onto points, on                            E           B's Key range:
 the ring, determined by                                           RangeEB
   some hash function




                    C      New Node F, Splits the
                                 range.
                            RangeDF & RangeFC               B
  Drops the
  replica of
   RangeBA
                           Riak Cluster
                              The Concepts

                    F      The Key is hashed onto the
                                ring, in RangeBA                A's Key range:
                             Hence data stored in A                RangeBA
  Replica of
 RangeBA is                                             A
 moved here                D
CSS LABS
N=3                              E




           C

                                         B



               Riak Cluster
                  The Concepts

           F



                                     A
               D
CSS LABS
W=2                              E




           C

                                         B



               Riak Cluster
                  The Concepts

           F



                                     A
               D
CSS LABS
R=2                              E




           C

                                         B



               Riak Cluster
                  The Concepts

           F



                                     A
               D
CSS LABS




           DocV0

                   Riak Cluster
                      The Concepts
CSS LABS




           DocV0                     DocV0

                   Riak Cluster
                      The Concepts
CSS LABS




           DocV1
            DocV1                     DocV0

                    Riak Cluster
                       The Concepts
CSS LABS




           DocV1                     DocV1
                                      DocV0

                   Riak Cluster
                      The Concepts
CSS LABS




       DocV1a
        DocV0                     DocV1b
                                   DocV0

                Riak Cluster
                   The Concepts
CSS LABS




   DocV1b   DocV1a

                     Riak Cluster
                        The Concepts
CSS LABS




           Riak Cluster
              Operating on it.
CSS LABS




                                 ?
           Riak Cluster
              The Competition.
CSS LABS




                       Riak Cluster
                          The Competition.




           Cassandra                         CouchDB

           Voldemort                         Scalaris
CSS LABS




                          ?
           Riak Cluster
              Use cases
CSS LABS




                         Riak Cluster
                            Use cases




       Log Aggregation                  Session Store

           Photo Store                   Tag Clouds
CSS LABS




           Thank You!

Contenu connexe

En vedette

Introducing Riak
Introducing RiakIntroducing Riak
Introducing RiakKevin Smith
 
Introduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingIntroduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingSean Cribbs
 
Riak Operations
Riak OperationsRiak Operations
Riak Operationsgschofield
 
Riak in Ten Minutes
Riak in Ten MinutesRiak in Ten Minutes
Riak in Ten MinutesJon Meredith
 
Riak (Øredev nosql day)
Riak (Øredev nosql day)Riak (Øredev nosql day)
Riak (Øredev nosql day)Sean Cribbs
 
Riak Training Session — Surge 2011
Riak Training Session — Surge 2011Riak Training Session — Surge 2011
Riak Training Session — Surge 2011DstroyAllModels
 

En vedette (6)

Introducing Riak
Introducing RiakIntroducing Riak
Introducing Riak
 
Introduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingIntroduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf Training
 
Riak Operations
Riak OperationsRiak Operations
Riak Operations
 
Riak in Ten Minutes
Riak in Ten MinutesRiak in Ten Minutes
Riak in Ten Minutes
 
Riak (Øredev nosql day)
Riak (Øredev nosql day)Riak (Øredev nosql day)
Riak (Øredev nosql day)
 
Riak Training Session — Surge 2011
Riak Training Session — Surge 2011Riak Training Session — Surge 2011
Riak Training Session — Surge 2011
 

Similaire à Distributed Key-Value Stores- Featuring Riak

Philly DB MapR M7 - March 2013
Philly DB MapR M7 - March 2013Philly DB MapR M7 - March 2013
Philly DB MapR M7 - March 2013MapR Technologies
 
PhillyDB Hbase and MapR M7 - March 2013
PhillyDB Hbase and MapR M7 - March 2013PhillyDB Hbase and MapR M7 - March 2013
PhillyDB Hbase and MapR M7 - March 2013PhillyDB
 
Spring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataSpring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataRoger Xia
 
Accelerating NoSQL
Accelerating NoSQLAccelerating NoSQL
Accelerating NoSQLsunnygleason
 
MyCassandra (Full English Version)
MyCassandra (Full English Version)MyCassandra (Full English Version)
MyCassandra (Full English Version)Shun Nakamura
 
Adding Riak to your NoSQL Bag of Tricks
Adding Riak to your NoSQL Bag of TricksAdding Riak to your NoSQL Bag of Tricks
Adding Riak to your NoSQL Bag of Trickssiculars
 
Yes sql08 inmemorydb
Yes sql08 inmemorydbYes sql08 inmemorydb
Yes sql08 inmemorydbDaniel Austin
 
Polyglot Plugin Programming
Polyglot Plugin ProgrammingPolyglot Plugin Programming
Polyglot Plugin ProgrammingAtlassian
 
Riak CS in Cloudstack
Riak CS in CloudstackRiak CS in Cloudstack
Riak CS in CloudstackShapeBlue
 
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting Strategy
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting StrategyReducing Cache Misses in Hash Join Probing Phase by Pre-sorting Strategy
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting StrategyJaemyung Kim
 
第17回Cassandra勉強会: MyCassandra
第17回Cassandra勉強会: MyCassandra第17回Cassandra勉強会: MyCassandra
第17回Cassandra勉強会: MyCassandraShun Nakamura
 

Similaire à Distributed Key-Value Stores- Featuring Riak (12)

NoSQL @ Qbranch -2010-04-15
NoSQL @ Qbranch -2010-04-15NoSQL @ Qbranch -2010-04-15
NoSQL @ Qbranch -2010-04-15
 
Philly DB MapR M7 - March 2013
Philly DB MapR M7 - March 2013Philly DB MapR M7 - March 2013
Philly DB MapR M7 - March 2013
 
PhillyDB Hbase and MapR M7 - March 2013
PhillyDB Hbase and MapR M7 - March 2013PhillyDB Hbase and MapR M7 - March 2013
PhillyDB Hbase and MapR M7 - March 2013
 
Spring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_dataSpring one2gx2010 spring-nonrelational_data
Spring one2gx2010 spring-nonrelational_data
 
Accelerating NoSQL
Accelerating NoSQLAccelerating NoSQL
Accelerating NoSQL
 
MyCassandra (Full English Version)
MyCassandra (Full English Version)MyCassandra (Full English Version)
MyCassandra (Full English Version)
 
Adding Riak to your NoSQL Bag of Tricks
Adding Riak to your NoSQL Bag of TricksAdding Riak to your NoSQL Bag of Tricks
Adding Riak to your NoSQL Bag of Tricks
 
Yes sql08 inmemorydb
Yes sql08 inmemorydbYes sql08 inmemorydb
Yes sql08 inmemorydb
 
Polyglot Plugin Programming
Polyglot Plugin ProgrammingPolyglot Plugin Programming
Polyglot Plugin Programming
 
Riak CS in Cloudstack
Riak CS in CloudstackRiak CS in Cloudstack
Riak CS in Cloudstack
 
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting Strategy
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting StrategyReducing Cache Misses in Hash Join Probing Phase by Pre-sorting Strategy
Reducing Cache Misses in Hash Join Probing Phase by Pre-sorting Strategy
 
第17回Cassandra勉強会: MyCassandra
第17回Cassandra勉強会: MyCassandra第17回Cassandra勉強会: MyCassandra
第17回Cassandra勉強会: MyCassandra
 

Plus de samof76

Supervisord, The Process Manager
Supervisord, The Process ManagerSupervisord, The Process Manager
Supervisord, The Process Managersamof76
 
Python Subprocess
Python SubprocessPython Subprocess
Python Subprocesssamof76
 
Process Management using Circus
Process Management using CircusProcess Management using Circus
Process Management using Circussamof76
 
Lxc- Linux Containers
Lxc- Linux ContainersLxc- Linux Containers
Lxc- Linux Containerssamof76
 
Git.intro
Git.introGit.intro
Git.introsamof76
 
AWS Use Cases
AWS Use CasesAWS Use Cases
AWS Use Casessamof76
 
Cloud- IaaS in Perspective AWS
Cloud- IaaS in Perspective AWSCloud- IaaS in Perspective AWS
Cloud- IaaS in Perspective AWSsamof76
 
Open Source 2.0
Open Source 2.0Open Source 2.0
Open Source 2.0samof76
 

Plus de samof76 (10)

Supervisord, The Process Manager
Supervisord, The Process ManagerSupervisord, The Process Manager
Supervisord, The Process Manager
 
Python Subprocess
Python SubprocessPython Subprocess
Python Subprocess
 
Proces
ProcesProces
Proces
 
Process Management using Circus
Process Management using CircusProcess Management using Circus
Process Management using Circus
 
Lxc- Linux Containers
Lxc- Linux ContainersLxc- Linux Containers
Lxc- Linux Containers
 
Git.intro
Git.introGit.intro
Git.intro
 
AWS Use Cases
AWS Use CasesAWS Use Cases
AWS Use Cases
 
Cloud
CloudCloud
Cloud
 
Cloud- IaaS in Perspective AWS
Cloud- IaaS in Perspective AWSCloud- IaaS in Perspective AWS
Cloud- IaaS in Perspective AWS
 
Open Source 2.0
Open Source 2.0Open Source 2.0
Open Source 2.0
 

Dernier

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Dernier (20)

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

Distributed Key-Value Stores- Featuring Riak

  • 1. CSS LABS Distributed Key-Value Stores Featuring Riak
  • 2. CSS LABS Hi, i am qiak Hi, i am riak Hi, i am siak Hi, i am piak Hi, i am tiak Story of a 5 Node Cluster Once upon time there were five nodes... ... and they formed a Ring
  • 3. CSS LABS Qiak, I will All is well! I am hit! Take care. Too drunk! Siak! I amthere! Story of a 5 Node Cluster They together kept a lot of data... ... some shared, some not ... ... they were always willing to cover up
  • 4. CSS LABS Hi, i am viak! Guys! This is Great to Ah! did you Well, hello! viak. have you! know? Hi Viak! Story of a 5 Node Cluster They were welcoming... ... they were together called Riak!
  • 5. CSS LABS Riak Cluster The Features * Decentralized * Erlang Advantage * Key-Value Store * RESTful API: jiak * Document Oriented * Map-Reduce
  • 6. CSS LABS Riak Cluster The Features * Decentralized * No master * Node Independence * Failure Tranperancy
  • 7. CSS LABS Riak Cluster The Features * NoSQL * Key-Value Store * Memory Footprint * Logical data
  • 8. CSS LABS Riak Cluster The Features * No Tables * Field Flexibilty * Document Oriented * Extensible
  • 9. CSS LABS Riak Cluster The Features * Designed to Distribute * Erlang Advantage * Concurrent Processes * No Shared State
  • 10. CSS LABS Riak Cluster The Features * In Thing * Small Learning Curve * RESTful API: jiak * Web 2.0
  • 11. CSS LABS Riak Cluster The Features * Already Key-Value * Huge Data * Map-Reduce * Clustered
  • 12. CSS LABS Riak Cluster The Concepts A.C.I.D.* C.A.P.+ * Atomicity Consistency + Consistency Isolation Availability Durability Partition Tolerance
  • 13. CSS LABS Riak Cluster The Concepts
  • 14. CSS LABS Keys map onto points, on E B's Key range: the ring, determined by RangeEB some hash function C B Riak Cluster The Concepts A's Key range: RangeBA A D
  • 15. CSS LABS Keys map onto points, on E B's Key range. the ring, determined by RangeEB some hash function B Crashes, now the range? RangeEA C B Riak Cluster The Concepts A's Key range. RangeBA A D
  • 16. CSS LABS Keys map onto points, on E B's Key range: the ring, determined by RangeEB some hash function C B Replicas of the Riak Cluster The Concepts data are The Key is hashed onto the maintained. ring, in RangeBA A's Key range: Hence data stored in A RangeBA A D
  • 17. CSS LABS Keys map onto points, on E B's Key range: the ring, determined by RangeEB some hash function C New Node F, Splits the range. RangeDF & RangeFC B Drops the replica of RangeBA Riak Cluster The Concepts F The Key is hashed onto the ring, in RangeBA A's Key range: Hence data stored in A RangeBA Replica of RangeBA is A moved here D
  • 18. CSS LABS N=3 E C B Riak Cluster The Concepts F A D
  • 19. CSS LABS W=2 E C B Riak Cluster The Concepts F A D
  • 20. CSS LABS R=2 E C B Riak Cluster The Concepts F A D
  • 21. CSS LABS DocV0 Riak Cluster The Concepts
  • 22. CSS LABS DocV0 DocV0 Riak Cluster The Concepts
  • 23. CSS LABS DocV1 DocV1 DocV0 Riak Cluster The Concepts
  • 24. CSS LABS DocV1 DocV1 DocV0 Riak Cluster The Concepts
  • 25. CSS LABS DocV1a DocV0 DocV1b DocV0 Riak Cluster The Concepts
  • 26. CSS LABS DocV1b DocV1a Riak Cluster The Concepts
  • 27. CSS LABS Riak Cluster Operating on it.
  • 28. CSS LABS ? Riak Cluster The Competition.
  • 29. CSS LABS Riak Cluster The Competition. Cassandra CouchDB Voldemort Scalaris
  • 30. CSS LABS ? Riak Cluster Use cases
  • 31. CSS LABS Riak Cluster Use cases Log Aggregation Session Store Photo Store Tag Clouds
  • 32. CSS LABS Thank You!