SlideShare a Scribd company logo
1 of 52
N✮SQL
                Data-Storage jenseits von SQL




                Jonathan Weiss, 20.03.2010
                Peritor GmbH


Saturday, March 20, 2010
Wer?


    Ruby-Entwickler
    Open-Source-Contributor (http://github.com/jweiss)
    @jweiss




                                                         2

Saturday, March 20, 2010
N✮SQL-Datenbanken?


    Built for the Web
    Skalierbar
    Performant
    Flexibles Datenschema




                            3

Saturday, March 20, 2010
Riak           BigTable
                    Lotus Notes                   Amazon S3
                                                    Memcached
                             Redis
                                                     Cassandra
                   MongoDB
                           Dynamo                   Dynomite
                                                    CouchDB
  Amazon SimpleDB
                                                  Excel ;)
                            Tokyo Tyrant         Neo4j
                           Project Voldemort   HBase

                                                                 4

Saturday, March 20, 2010
Der Status-Quo


    Relationale Datenstrukturen
    SQL
    Transaktionssicherheit
    Locking




                                  5

Saturday, March 20, 2010
Das Problem




                           6

Saturday, March 20, 2010
Das Problem




                           7

Saturday, March 20, 2010
Die Lösung



                    ”Simplicity is prerequisite for
                    reliability“
                    — Edsger W. Dijkstra




                                                      8

Saturday, March 20, 2010
Die Lösung




                           key => “value”



                                            9

Saturday, March 20, 2010
Dokumente




                           10

Saturday, March 20, 2010
Dokumente




                           10

Saturday, March 20, 2010
Dokumente




                           10

Saturday, March 20, 2010
Dokumente




                           10

Saturday, March 20, 2010
Integrität




                           11

Saturday, March 20, 2010
Eventual Consistency




                           12

Saturday, March 20, 2010
Append-Only




                           13

Saturday, March 20, 2010
Append-Only




                           Update




                                    14

Saturday, March 20, 2010
Append-Only




                           Update




                                    15

Saturday, March 20, 2010
Skalierbarkeit




                           16

Saturday, March 20, 2010
Tools




                           17

Saturday, March 20, 2010
Tools

                                 Riak           BigTable
                    Lotus Notes                   Amazon S3
                                                    Memcached
                             Redis
                                                     Cassandra
                   MongoDB
                           Dynamo                   Dynomite
                                                    CouchDB
  Amazon SimpleDB
                                                  Excel ;)
                            Tokyo Tyrant         Neo4j
                           Project Voldemort   HBase

                                                                 18

Saturday, March 20, 2010
Tools

                                 Riak           BigTable
                    Lotus Notes                   Amazon S3
                                                    Memcached
                             Redis
                                                     Cassandra
                   MongoDB
                           Dynamo                   Dynomite
                                                    CouchDB
  Amazon SimpleDB
                                                  Excel ;)
                            Tokyo Tyrant         Neo4j
                           Project Voldemort   HBase

                                                                 19

Saturday, March 20, 2010
Redis



    Simpler Key-Value-Store
    Speichert Strings, Listen und Sets
    Persistenz über Snapshots oder Append-Logs




                                                 20

Saturday, March 20, 2010
Redis




                           21

Saturday, March 20, 2010
Redis

        set foo 4
        1000
        +OK




                           22

Saturday, March 20, 2010
Redis

        set foo 4
                           Request
        1000
        +OK                Response




                                      22

Saturday, March 20, 2010
Scaling



    Master-Slave
     mittels Snapshots


    Multiple Master
     mittels Hash Ring




                           23

Saturday, March 20, 2010
Einsatz-Szenarien



    Persistenter Cache
    Session-Store
    Realtime-Data: Monitoring, Trading, ...
    Shared State




                                              24

Saturday, March 20, 2010
CouchDB
                                relax
                                        25

Saturday, March 20, 2010
CouchDB




    Dokument-orientiert




                           26

Saturday, March 20, 2010
”CouchDB is built of the Web“
                           — Jacob Kaplan-Moss




                                                           27

Saturday, March 20, 2010
CouchDB Document


              {
                  "_id": "BCCD12CBB",
                  "_rev": "1-AB764C",
                  "type": "person",
                  "name": "Darth Vader",
                  "age": 63,
                  "headware": ["Helmet", "Sombrero"],
                  "dark_side": true
              }

                                                        28

Saturday, March 20, 2010
CouchDB Document


              {
                  "_id": "BCCD12CBB",
                  "_rev": "1-AB764C",
                  "type": "person",
                  "name": "Darth Vader",
                  "age": 63,
                  "headware": ["Helmet", "Sombrero"],
                  "dark_side": true
              }

                                                        29

Saturday, March 20, 2010
CouchDB Document


              {
                  "_id": "BCCD12CBB",
                  "_rev": "1-AB764C",
                  "type": "person",
                  "name": "Darth Vader",
                  "age": 63,
                  "headware": ["Helmet", "Sombrero"],
                  "dark_side": true
              }

                                                        30

Saturday, March 20, 2010
CouchDB - CRUD
    Erstellen/Aktualisieren:
    PUT /starwars/BCCD12CBB


    Lesen:
    GET /starwars/BCCD12CBB


    Löschen:
    DELETE /starwars/BCCD12CBB

                                 31

Saturday, March 20, 2010
CouchDB




    Wie komme ich an meine Daten?




                                    32

Saturday, March 20, 2010
CouchDB




                           Views!


                                    33

Saturday, March 20, 2010
CouchDB


          function(doc) {
            if (doc.headware) {
              for (var hat in doc.headware) {
                emit(hat, 1);
              }
            }
          }

                                                34

Saturday, March 20, 2010
CouchDB



                  function(keys, values, rereduce) {
                    return sum(values);
                  }




                                                       35

Saturday, March 20, 2010
Libraries


    SimplyStored: Ruby wrapper         Models
                                       Associations
                                       Callbacks
                                       Validations
                                       Dynamic finder
                                       S3 attachments
                                       Paranoid delete



    http://github.com/peritor/simply_stored

                                                         36

Saturday, March 20, 2010
Libraries




                           37

Saturday, March 20, 2010
B-Tree




                           38

Saturday, March 20, 2010
Crash-Proof




                           39

Saturday, March 20, 2010
Offline by default




                           40

Saturday, March 20, 2010
Replication




                           41

Saturday, March 20, 2010
CouchDB




    POST /_replication




                           42

Saturday, March 20, 2010
Und?




    Daten sind wieder König




                              43

Saturday, March 20, 2010
Aber!




    Kein goldener Hammer




                           44

Saturday, March 20, 2010
45

Saturday, March 20, 2010
46

Saturday, March 20, 2010
Peritor




               Cloud-Management und -Deployment made easy
                           http://scalarium.com


                                                            47

Saturday, March 20, 2010
Peritor GmbH
                Blücherstr. 22, Hof III Aufgang 6
                10961 Berlin
                Tel.: +49 (0)30 69 20 09 84 0
                Fax: +49 (0)30 69 20 09 84 9
                Internet: www.peritor.com
                E-Mail: info@peritor.com



                © Peritor GmbH - Alle Rechte Vorbehalten

Saturday, March 20, 2010

More Related Content

Similar to NoSQL - Post-Relational Databases - BarCamp Ruhr3

Ruby on CouchDB - SimplyStored and RockingChair
Ruby on CouchDB - SimplyStored and RockingChairRuby on CouchDB - SimplyStored and RockingChair
Ruby on CouchDB - SimplyStored and RockingChairJonathan Weiss
 
Building real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsBuilding real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsbetabeers
 
MongoDB at FrozenRails
MongoDB at FrozenRailsMongoDB at FrozenRails
MongoDB at FrozenRailsMike Dirolf
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDBMike Dirolf
 
Thinking in documents
Thinking in documentsThinking in documents
Thinking in documentsCésar Rodas
 
Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices ThoughtWorks
 
Scaling GIS Data in Non-relational Data Stores
Scaling GIS Data in Non-relational Data StoresScaling GIS Data in Non-relational Data Stores
Scaling GIS Data in Non-relational Data StoresMike Malone
 
Beam PHP2012 Workshops: The Cloud
Beam PHP2012 Workshops: The CloudBeam PHP2012 Workshops: The Cloud
Beam PHP2012 Workshops: The CloudJames Dunmore
 
Intro to mongodb mongouk jun2010
Intro to mongodb mongouk jun2010Intro to mongodb mongouk jun2010
Intro to mongodb mongouk jun2010Skills Matter
 
Intro to NoSQL and MongoDB
 Intro to NoSQL and MongoDB Intro to NoSQL and MongoDB
Intro to NoSQL and MongoDBMongoDB
 
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...boychatmate1
 
Chris Lea - What does NoSQL Mean for You
Chris Lea - What does NoSQL Mean for YouChris Lea - What does NoSQL Mean for You
Chris Lea - What does NoSQL Mean for YouCarsonified Team
 
AmebaPico 裏側の技術やAWSの利用について
AmebaPico 裏側の技術やAWSの利用についてAmebaPico 裏側の技術やAWSの利用について
AmebaPico 裏側の技術やAWSの利用についてKohei Morino
 

Similar to NoSQL - Post-Relational Databases - BarCamp Ruhr3 (15)

Ruby on CouchDB - SimplyStored and RockingChair
Ruby on CouchDB - SimplyStored and RockingChairRuby on CouchDB - SimplyStored and RockingChair
Ruby on CouchDB - SimplyStored and RockingChair
 
Building real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.jsBuilding real time apps with node.js, socket.io, knockout.js
Building real time apps with node.js, socket.io, knockout.js
 
Web 2.0 Futures
Web 2.0 FuturesWeb 2.0 Futures
Web 2.0 Futures
 
MongoDB at FrozenRails
MongoDB at FrozenRailsMongoDB at FrozenRails
MongoDB at FrozenRails
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Thinking in documents
Thinking in documentsThinking in documents
Thinking in documents
 
Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices
 
noSQL @ QCon SP
noSQL @ QCon SPnoSQL @ QCon SP
noSQL @ QCon SP
 
Scaling GIS Data in Non-relational Data Stores
Scaling GIS Data in Non-relational Data StoresScaling GIS Data in Non-relational Data Stores
Scaling GIS Data in Non-relational Data Stores
 
Beam PHP2012 Workshops: The Cloud
Beam PHP2012 Workshops: The CloudBeam PHP2012 Workshops: The Cloud
Beam PHP2012 Workshops: The Cloud
 
Intro to mongodb mongouk jun2010
Intro to mongodb mongouk jun2010Intro to mongodb mongouk jun2010
Intro to mongodb mongouk jun2010
 
Intro to NoSQL and MongoDB
 Intro to NoSQL and MongoDB Intro to NoSQL and MongoDB
Intro to NoSQL and MongoDB
 
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...
Introduction to Mongo DB-open-­‐source, high-­‐performance, document-­‐orient...
 
Chris Lea - What does NoSQL Mean for You
Chris Lea - What does NoSQL Mean for YouChris Lea - What does NoSQL Mean for You
Chris Lea - What does NoSQL Mean for You
 
AmebaPico 裏側の技術やAWSの利用について
AmebaPico 裏側の技術やAWSの利用についてAmebaPico 裏側の技術やAWSの利用について
AmebaPico 裏側の技術やAWSの利用について
 

More from Jonathan Weiss

Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorksJonathan Weiss
 
ChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The HoodChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The HoodJonathan Weiss
 
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014Jonathan Weiss
 
DevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloudDevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloudJonathan Weiss
 
Introduction to Backbone.js
Introduction to Backbone.jsIntroduction to Backbone.js
Introduction to Backbone.jsJonathan Weiss
 
Build your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveBuild your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveJonathan Weiss
 
NoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBNoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBJonathan Weiss
 
Amazon EC2 in der Praxis
Amazon EC2 in der PraxisAmazon EC2 in der Praxis
Amazon EC2 in der PraxisJonathan Weiss
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with ChefJonathan Weiss
 
Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2Jonathan Weiss
 
CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010Jonathan Weiss
 
CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010Jonathan Weiss
 
BarCamp Nürnberg - Infrastructure As A Service
BarCamp Nürnberg - Infrastructure As A ServiceBarCamp Nürnberg - Infrastructure As A Service
BarCamp Nürnberg - Infrastructure As A ServiceJonathan Weiss
 
Refactoring Rails Applications
Refactoring Rails ApplicationsRefactoring Rails Applications
Refactoring Rails ApplicationsJonathan Weiss
 
Cloud Computing In Der Praxis
Cloud Computing In Der PraxisCloud Computing In Der Praxis
Cloud Computing In Der PraxisJonathan Weiss
 

More from Jonathan Weiss (20)

Docker on AWS OpsWorks
Docker on AWS OpsWorksDocker on AWS OpsWorks
Docker on AWS OpsWorks
 
ChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The HoodChefConf 2014 - AWS OpsWorks Under The Hood
ChefConf 2014 - AWS OpsWorks Under The Hood
 
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
AWS OpsWorks & Chef at the Hamburg Chef User Group 2014
 
DevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloudDevOpsDays Amsterdam - Observations in the cloud
DevOpsDays Amsterdam - Observations in the cloud
 
Amazon SWF and Gordon
Amazon SWF and GordonAmazon SWF and Gordon
Amazon SWF and Gordon
 
Introduction to Backbone.js
Introduction to Backbone.jsIntroduction to Backbone.js
Introduction to Backbone.js
 
Scalarium and CouchDB
Scalarium and CouchDBScalarium and CouchDB
Scalarium and CouchDB
 
Build your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveBuild your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollective
 
NoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDBNoSQL - An introduction to CouchDB
NoSQL - An introduction to CouchDB
 
Amazon EC2 in der Praxis
Amazon EC2 in der PraxisAmazon EC2 in der Praxis
Amazon EC2 in der Praxis
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
CouchDB on Rails
CouchDB on RailsCouchDB on Rails
CouchDB on Rails
 
Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2Rails in the Cloud - Experiences from running on EC2
Rails in the Cloud - Experiences from running on EC2
 
CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010CouchDB on Rails - RailsWayCon 2010
CouchDB on Rails - RailsWayCon 2010
 
CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010CouchDB on Rails - FrozenRails 2010
CouchDB on Rails - FrozenRails 2010
 
BarCamp Nürnberg - Infrastructure As A Service
BarCamp Nürnberg - Infrastructure As A ServiceBarCamp Nürnberg - Infrastructure As A Service
BarCamp Nürnberg - Infrastructure As A Service
 
Rails Security
Rails SecurityRails Security
Rails Security
 
Scaling Rails
Scaling RailsScaling Rails
Scaling Rails
 
Refactoring Rails Applications
Refactoring Rails ApplicationsRefactoring Rails Applications
Refactoring Rails Applications
 
Cloud Computing In Der Praxis
Cloud Computing In Der PraxisCloud Computing In Der Praxis
Cloud Computing In Der Praxis
 

Recently uploaded

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 

Recently uploaded (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

NoSQL - Post-Relational Databases - BarCamp Ruhr3

  • 1. N✮SQL Data-Storage jenseits von SQL Jonathan Weiss, 20.03.2010 Peritor GmbH Saturday, March 20, 2010
  • 2. Wer? Ruby-Entwickler Open-Source-Contributor (http://github.com/jweiss) @jweiss 2 Saturday, March 20, 2010
  • 3. N✮SQL-Datenbanken? Built for the Web Skalierbar Performant Flexibles Datenschema 3 Saturday, March 20, 2010
  • 4. Riak BigTable Lotus Notes Amazon S3 Memcached Redis Cassandra MongoDB Dynamo Dynomite CouchDB Amazon SimpleDB Excel ;) Tokyo Tyrant Neo4j Project Voldemort HBase 4 Saturday, March 20, 2010
  • 5. Der Status-Quo Relationale Datenstrukturen SQL Transaktionssicherheit Locking 5 Saturday, March 20, 2010
  • 6. Das Problem 6 Saturday, March 20, 2010
  • 7. Das Problem 7 Saturday, March 20, 2010
  • 8. Die Lösung ”Simplicity is prerequisite for reliability“ — Edsger W. Dijkstra 8 Saturday, March 20, 2010
  • 9. Die Lösung key => “value” 9 Saturday, March 20, 2010
  • 10. Dokumente 10 Saturday, March 20, 2010
  • 11. Dokumente 10 Saturday, March 20, 2010
  • 12. Dokumente 10 Saturday, March 20, 2010
  • 13. Dokumente 10 Saturday, March 20, 2010
  • 14. Integrität 11 Saturday, March 20, 2010
  • 15. Eventual Consistency 12 Saturday, March 20, 2010
  • 16. Append-Only 13 Saturday, March 20, 2010
  • 17. Append-Only Update 14 Saturday, March 20, 2010
  • 18. Append-Only Update 15 Saturday, March 20, 2010
  • 19. Skalierbarkeit 16 Saturday, March 20, 2010
  • 20. Tools 17 Saturday, March 20, 2010
  • 21. Tools Riak BigTable Lotus Notes Amazon S3 Memcached Redis Cassandra MongoDB Dynamo Dynomite CouchDB Amazon SimpleDB Excel ;) Tokyo Tyrant Neo4j Project Voldemort HBase 18 Saturday, March 20, 2010
  • 22. Tools Riak BigTable Lotus Notes Amazon S3 Memcached Redis Cassandra MongoDB Dynamo Dynomite CouchDB Amazon SimpleDB Excel ;) Tokyo Tyrant Neo4j Project Voldemort HBase 19 Saturday, March 20, 2010
  • 23. Redis Simpler Key-Value-Store Speichert Strings, Listen und Sets Persistenz über Snapshots oder Append-Logs 20 Saturday, March 20, 2010
  • 24. Redis 21 Saturday, March 20, 2010
  • 25. Redis set foo 4 1000 +OK 22 Saturday, March 20, 2010
  • 26. Redis set foo 4 Request 1000 +OK Response 22 Saturday, March 20, 2010
  • 27. Scaling Master-Slave mittels Snapshots Multiple Master mittels Hash Ring 23 Saturday, March 20, 2010
  • 28. Einsatz-Szenarien Persistenter Cache Session-Store Realtime-Data: Monitoring, Trading, ... Shared State 24 Saturday, March 20, 2010
  • 29. CouchDB relax 25 Saturday, March 20, 2010
  • 30. CouchDB Dokument-orientiert 26 Saturday, March 20, 2010
  • 31. ”CouchDB is built of the Web“ — Jacob Kaplan-Moss 27 Saturday, March 20, 2010
  • 32. CouchDB Document { "_id": "BCCD12CBB", "_rev": "1-AB764C", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } 28 Saturday, March 20, 2010
  • 33. CouchDB Document { "_id": "BCCD12CBB", "_rev": "1-AB764C", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } 29 Saturday, March 20, 2010
  • 34. CouchDB Document { "_id": "BCCD12CBB", "_rev": "1-AB764C", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } 30 Saturday, March 20, 2010
  • 35. CouchDB - CRUD Erstellen/Aktualisieren: PUT /starwars/BCCD12CBB Lesen: GET /starwars/BCCD12CBB Löschen: DELETE /starwars/BCCD12CBB 31 Saturday, March 20, 2010
  • 36. CouchDB Wie komme ich an meine Daten? 32 Saturday, March 20, 2010
  • 37. CouchDB Views! 33 Saturday, March 20, 2010
  • 38. CouchDB function(doc) { if (doc.headware) { for (var hat in doc.headware) { emit(hat, 1); } } } 34 Saturday, March 20, 2010
  • 39. CouchDB function(keys, values, rereduce) { return sum(values); } 35 Saturday, March 20, 2010
  • 40. Libraries SimplyStored: Ruby wrapper Models Associations Callbacks Validations Dynamic finder S3 attachments Paranoid delete http://github.com/peritor/simply_stored 36 Saturday, March 20, 2010
  • 41. Libraries 37 Saturday, March 20, 2010
  • 42. B-Tree 38 Saturday, March 20, 2010
  • 43. Crash-Proof 39 Saturday, March 20, 2010
  • 44. Offline by default 40 Saturday, March 20, 2010
  • 45. Replication 41 Saturday, March 20, 2010
  • 46. CouchDB POST /_replication 42 Saturday, March 20, 2010
  • 47. Und? Daten sind wieder König 43 Saturday, March 20, 2010
  • 48. Aber! Kein goldener Hammer 44 Saturday, March 20, 2010
  • 51. Peritor Cloud-Management und -Deployment made easy http://scalarium.com 47 Saturday, March 20, 2010
  • 52. Peritor GmbH Blücherstr. 22, Hof III Aufgang 6 10961 Berlin Tel.: +49 (0)30 69 20 09 84 0 Fax: +49 (0)30 69 20 09 84 9 Internet: www.peritor.com E-Mail: info@peritor.com © Peritor GmbH - Alle Rechte Vorbehalten Saturday, March 20, 2010