SlideShare a Scribd company logo
1 of 24
Download to read offline
Database solutions for web and mobile applications.




                                                      1
WHY NOSQL?
“ Zynga’s games serve over 235 million active users per
  month. We depend on technology from Couchbase to make
  that possible. We have improved the performance and
  availability of our games while reducing hardware and
  administration costs. We will continue to transition our data
  from relational databases to Couchbase technology.
                                                               ”
                             Cadir Lee
                             Chief Technology Officer, Zynga




                                                                   2
Interactive software – then and now




                                      3
Scaling economics in the Web application stack


                              Application Scales Out
                              Just add more commodity web servers




                              Database Scales Up
                              Get a bigger, more complex server




                                                                    4
Lacking market solutions, users forced to invent


   Bigtable                Dynamo                    Cassandra                Voldemort
  November 2006           October 2007                August 2008             February 2009



       Common characteristics of these “NoSQL” technologies
       •   No schema required before inserting data
       •   No schema change required to change data format
       •   Auto-sharding without application participation
       •   Distributed query support
       •   Automatic data replication across servers and regions


   Very few organizations want to (fewer can) build and maintain database technology. Couchbase
   was founded to create packaged, commercially-supported NoSQL database products.
                                                                                                  5
COUCHBASE
Simple. Fast. Elastic.




                         6
Couchbase is a “document-oriented” NoSQL database
Simple. Flexible. Adjust to changing data management requirements with ease.




                                                                                                    Simple.
                                                          {
                    Application Server                    “UUID”: “21f7f8de-8051-5b89-86
                                                          “Time”: “2011-04-01T13:01:02.42
                                                          “Server”: “A2223E”,
                                                          “Calling Server”: “A2213W”,
                                                          “Type”: “E100”,
                                                          “Initiating User”: “dsallings@spy.net”,
                                                          “Details”:
                                                                  {
                                                                  “IP”: “10.1.1.22”,
                                                                  “API”: “InsertDVDQueueItem”,
                                                                  “Trace”: “cleansed”,
                                                                  “Tags”:
                                                                        [
                                                                        “SERVER”,
                                                                        “US-West”,
                                                                        “API”
                                                                         ]
                                                                  }
                                                          }

                                                                 Example JSON document




   No schema required to insert data (or change data format later). Lightweight, cross-platform
   document format (JSON). Efficient, native support for binary attachments.
                                                                                                        7
Document data model

                                                                              {
                                                                              “UUID”: “21f7f8de-8051-5b89-86
       datum   datum   datum   datum                                 {        “Time”: “2011-04-01T13:01:02.42
                                                                     “UUID”: “21f7f8de-8051-5b89-86
                                                                              “Server”: “A2223E”,
                                                           {         “Time”: “2011-04-01T13:01:02.42
                                                                              “Calling Server”: “A2213W”,
                                                                     “Server”: “A2223E”,
                                                           “UUID”: “21f7f8de-8051-5b89-86
                                                                              “Type”: “E100”,
                                                  {        “Time”:“Calling Server”: User”: “dsallings@spy.net”,
                                                                       “2011-04-01T13:01:02.42
                                                                              “Initiating “A2213W”,
                                                           “Server”: “A2223E”,
                                                                     “Type”: “E100”,
                                                                              “Details”:
                                                  “UUID”: “21f7f8de-8051-5b89-86
                                                                     “Initiating User”: “dsallings@spy.net”,
                                                  “Time”:“Calling Server”: “A2213W”,
                                                             “2011-04-01T13:01:02.42   {
       datum   datum   datum   datum                       “Type”:“Details”:
                                                  “Server”: “A2223E”,  “E100”,
                                                  “Calling“Initiating “A2213W”,{
                                                                                       “IP”: “10.1.1.22”,
                                                             Server”: User”: “dsallings@spy.net”,
                                                                                       “API”: “InsertDVDQueueItem”,
                                                  “Type”:“Details”:
                                                             “E100”,           “IP”: “10.1.1.22”,
                                                                                       “Trace”: “cleansed”,
                                                                     {         “API”: “Tags”:
                                                                                        “InsertDVDQueueItem”,
                                                  “Initiating User”: “dsallings@spy.net”,
                                                  “Details”:                   “Trace”: “cleansed”,
                                                                     “IP”: “10.1.1.22”, [
                                                           {                   “Tags”:
                                                                     “API”: “InsertDVDQueueItem”,
                                                                                             “SERVER”,
                                                           “IP”: “10.1.1.22”, [
                                                                     “Trace”: “cleansed”,    “US-West”,
       datum   datum   datum   datum                                 “Tags”:         “SERVER”,
                                                           “API”: “InsertDVDQueueItem”,
                                                                           [
                                                           “Trace”: “cleansed”,
                                                                                             “API”
                                                                                     “US-West”,
                                                                                              ]
                                                           “Tags”:         “SERVER”, “API”
                                                                                       }
                                                                 [         “US-West”,
                                                                              }       ]
                                                                 “SERVER”,     }
                                                                           “API”
                                                                     }
                                                                 “US-West”,  ]
                                                                     }
                                                                 “API”
       datum   datum   datum   datum                       }       ]
                                                           }
                                                  }




           Relational data model                       Document data model
 Highly-structured table organization with   Collection of complex documents with
  rigidly-defined data formats and record      arbitrary, nested data formats and
                 structure.                         varying “record” format.


                                                                                                                      8
Couchbase is consistently fast
Decouple application performance (user experience) from sketchy database I/O.




                                      Application Server




                                                                                          Fast.
                                           Memcached




   Memcached, the most widely deployed in-memory caching technology on the planet, is built in to
   Couchbase, enabling consistently low-latency data reads and writes. We wrote most of memcached.
                                                                                                9
Couchbase is elastic (scales out for increased capacity)
Grow with linear cost, constant performance and without downtime



      Application Server




                                                                                              Elastic.
   Expanding (or contracting) a Couchbase cluster is effortless; and requires no application downtime.
   Other NoSQL solutions require complex configuration and application downtime.
                                                                                                    10
Elasticity courtesy of Membase technology
Proven in the world’s largest NoSQL production deployments




    Application Server




         Memcached

          Membase




                                                        Pushbutton rebalancing of a            Enterprise-class cluster monitoring and
                                                             live, 100+ node cluster                                    administration



  Membase has proven itself in multi-hundred node deployments at Zynga, AOL and others. There is
  a BIG difference between a 20 node and a 750 node cluster. Couchbase is the only NoSQL solution
  that can scale, and remain manageable, from a single node to a multi-hundred node cluster.
                         Watch a live, 100 node cluster rebalance at: http://blog.couchbase.com/take-a-tour-membase-server-one-dot-seven   11
Couchbase Mobile




                                              CouchSync




  Unique to Couchbase, CouchSync permits automated synchronization of databases between
  intermittently-connected mobile devices and a datacenter- or cloud-resident Couchbase cluster 12
AD AND OFFER TARGETING
“ AOL servesand any of impressions per day from our ad serving
  platforms,
             billions
                      incremental improvement in processing time
  translates to huge benefits in our ability to more effectively serve the
  ads needed to meet our contractual commitments. Traditional
  databases lack the scalability required to support our goal of five
  milliseconds per read/write. Creating user profiles with Hadoop, then
  serving them from Couchbase, reduces profile read and write access to
  under a millisecond, leaving the bulk of the processing time budget for
  improved targeting and customization.
                                          ”
  Pero Subasic
  Chief Architect, AOL




                                                                             13
Ad and offer targeting

                               40 milliseconds to respond
                               with the decision.




                             profiles, real time campaign
                         3   statistics




                                          2
                  1                       profiles, campaigns
                events

                                                            14
SOCIAL AND ONLINE GAMING
“ Zynga’susers per month.World, Mafiatechnology otherMembase to over 235 million
  active
          FarmVille, Café
                          We rely on
                                       Wars and
                                                from
                                                     games have
                                                                make that possible.
  As long-time users and members of the Memcached community, we have
  tremendous respect for the team at Membase. Zynga's internal development work to
  extend memcached clearly matched with their vision and we’ve worked closely with
  the team through the development of Membase Server. We expect to improve the
  performance and availability of our games while reducing hardware and
  administration costs as we continue to transition data from relational databases to
  Membase technology.
                        ”
  Cadir Lee
  Chief Technology Officer, Zynga




                                                                                        15
Social and online gaming


                           1




                      2


                               3




                                   16
CLOUD DATA SERVICES
“ As the operator of Korea’s number one search portal, Naver.com;gaming
  number one children’s portal, Jr.naver.com; and the number one
                                                                  the

  portal, Hangame.com; NHN collectively serves nearly 70 million unique
  users. It is imperative that we provide each of them with the user
  experience they expect. With its multi-tenancy capabilities, Couchbase has
  enabled us to build a shared, centrally managed data cloud service for our
  development studios with service quality guarantees, secure separation of
  data and instant provisioning for new properties.
                                                   ”
  Chang Song
  Chief Performance Architect, NHN Corporation




                                                                               17
Cloud data services

              1



                                     4

                  PROVISIONING



                    2


                  PROVISIONING
                                 3

                                         18
SQL QUERY CACHING
“ The Knot planning solution. Weisselected Couchbase, in part, because it was
  wedding
           (www.theknot.com) the Internet’s most-trafficked one-stop

  drop-in compatible with memcached. With no change to our running
  applications, Couchbase provided a highly-available, easy-to-manage
  distributed solution for caching SQL queries and accelerating our application
  performance. While we are using it primarily for caching today, we have big
  plans to implement indexed search and storage solutions.
                                                            ”
  Jason Sirota
  Director of Application Architecture, The Knot




                                                                                  19
SQL query caching




                    RDBMS




                            20
SESSION STATE STORAGE




                        21
Session state storage




                        22
REAL-TIME LOGGING AND ALERTING
   “ Loggly has becomeinthe leading Logging as aWe use Couchbaseand Couchbase
     is a key ingredient our technology stack.
                                                Service platform
                                                                 NoSQL
     technology to drive real-time collection of logging traffic to facilitate
     aggregation and statistical analysis; it stores and tracks the amount of
     logging activity by user, by time, and by server. Membase is a great fit for
     our team because it is Memcached-compatible, making it easy to setup and
     use – it just works!
                        ”
     Jon Gifford
     Chief Technology Officer, Loggly




                                                                                    23
Real-time logging and alerting




    Loggly customer
    software system


    Loggly customer
    software system
                       1
    Loggly customer
    software system
                                 2



                                     3
                                         24

More Related Content

Similar to What You Need to Know to Move from a Relational to a NoSQL Database

Transition from relational to NoSQL Philly DAMA Day
Transition from relational to NoSQL Philly DAMA DayTransition from relational to NoSQL Philly DAMA Day
Transition from relational to NoSQL Philly DAMA Day
Dipti Borkar
 
Codestrong 2012 breakout session building your own custom cloud services
Codestrong 2012 breakout session   building your own custom cloud servicesCodestrong 2012 breakout session   building your own custom cloud services
Codestrong 2012 breakout session building your own custom cloud services
Axway Appcelerator
 
OpenStack Introduction
OpenStack IntroductionOpenStack Introduction
OpenStack Introduction
openstackindia
 
Stratalux Cloud Formation and Chef Integration Presentation
Stratalux Cloud Formation and Chef Integration PresentationStratalux Cloud Formation and Chef Integration Presentation
Stratalux Cloud Formation and Chef Integration Presentation
Jeremy Przygode
 

Similar to What You Need to Know to Move from a Relational to a NoSQL Database (20)

Transition from relational to NoSQL Philly DAMA Day
Transition from relational to NoSQL Philly DAMA DayTransition from relational to NoSQL Philly DAMA Day
Transition from relational to NoSQL Philly DAMA Day
 
Codestrong 2012 breakout session building your own custom cloud services
Codestrong 2012 breakout session   building your own custom cloud servicesCodestrong 2012 breakout session   building your own custom cloud services
Codestrong 2012 breakout session building your own custom cloud services
 
June Boston openStack Summit: Preparing quantum for the data center
June Boston openStack Summit: Preparing quantum for the data centerJune Boston openStack Summit: Preparing quantum for the data center
June Boston openStack Summit: Preparing quantum for the data center
 
Austin Scales - Nexus - Bazaarvoice's Cloud Infrastructure
Austin Scales - Nexus - Bazaarvoice's Cloud InfrastructureAustin Scales - Nexus - Bazaarvoice's Cloud Infrastructure
Austin Scales - Nexus - Bazaarvoice's Cloud Infrastructure
 
Time series Analytics - a deep dive into ADX Azure Data Explorer @Data Saturd...
Time series Analytics - a deep dive into ADX Azure Data Explorer @Data Saturd...Time series Analytics - a deep dive into ADX Azure Data Explorer @Data Saturd...
Time series Analytics - a deep dive into ADX Azure Data Explorer @Data Saturd...
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
Microservices Security Patterns & Protocols with Spring & PCF
Microservices Security Patterns & Protocols with Spring & PCFMicroservices Security Patterns & Protocols with Spring & PCF
Microservices Security Patterns & Protocols with Spring & PCF
 
OpenStack Folsom Summit: Melange overview
OpenStack Folsom Summit: Melange overviewOpenStack Folsom Summit: Melange overview
OpenStack Folsom Summit: Melange overview
 
Distributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-REDDistributed Data Flow for the Web of Things: Distributed Node-RED
Distributed Data Flow for the Web of Things: Distributed Node-RED
 
PassKit on iOS 6
PassKit on iOS 6PassKit on iOS 6
PassKit on iOS 6
 
.NET Core Apps: Design & Development
.NET Core Apps: Design & Development.NET Core Apps: Design & Development
.NET Core Apps: Design & Development
 
MongoDB in the Middle of a Hybrid Cloud and Polyglot Persistence Architecture
MongoDB in the Middle of a Hybrid Cloud and Polyglot Persistence ArchitectureMongoDB in the Middle of a Hybrid Cloud and Polyglot Persistence Architecture
MongoDB in the Middle of a Hybrid Cloud and Polyglot Persistence Architecture
 
OpenStack Introduction
OpenStack IntroductionOpenStack Introduction
OpenStack Introduction
 
JavaOne 2010 Keynote
JavaOne 2010 Keynote JavaOne 2010 Keynote
JavaOne 2010 Keynote
 
Stratalux Cloud Formation and Chef Integration Presentation
Stratalux Cloud Formation and Chef Integration PresentationStratalux Cloud Formation and Chef Integration Presentation
Stratalux Cloud Formation and Chef Integration Presentation
 
The Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.jsThe Happy Path: Migration Strategies for Node.js
The Happy Path: Migration Strategies for Node.js
 
Don't Loose Sleep - Secure Your Rest - php[tek] 2017
Don't Loose Sleep - Secure Your Rest - php[tek] 2017Don't Loose Sleep - Secure Your Rest - php[tek] 2017
Don't Loose Sleep - Secure Your Rest - php[tek] 2017
 
OpenStack and OpenDaylight Workshop: ONUG Spring 2014
OpenStack and OpenDaylight Workshop: ONUG Spring 2014OpenStack and OpenDaylight Workshop: ONUG Spring 2014
OpenStack and OpenDaylight Workshop: ONUG Spring 2014
 
Building production websites with Node.js on the Microsoft stack
Building production websites with Node.js on the Microsoft stackBuilding production websites with Node.js on the Microsoft stack
Building production websites with Node.js on the Microsoft stack
 
La apuesta de Telefónica por la cloud privada
La apuesta de Telefónica por la cloud privadaLa apuesta de Telefónica por la cloud privada
La apuesta de Telefónica por la cloud privada
 

More from DATAVERSITY

The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
DATAVERSITY
 
Data Strategy Best Practices
Data Strategy Best PracticesData Strategy Best Practices
Data Strategy Best Practices
DATAVERSITY
 

More from DATAVERSITY (20)

Architecture, Products, and Total Cost of Ownership of the Leading Machine Le...
Architecture, Products, and Total Cost of Ownership of the Leading Machine Le...Architecture, Products, and Total Cost of Ownership of the Leading Machine Le...
Architecture, Products, and Total Cost of Ownership of the Leading Machine Le...
 
Data at the Speed of Business with Data Mastering and Governance
Data at the Speed of Business with Data Mastering and GovernanceData at the Speed of Business with Data Mastering and Governance
Data at the Speed of Business with Data Mastering and Governance
 
Exploring Levels of Data Literacy
Exploring Levels of Data LiteracyExploring Levels of Data Literacy
Exploring Levels of Data Literacy
 
Building a Data Strategy – Practical Steps for Aligning with Business Goals
Building a Data Strategy – Practical Steps for Aligning with Business GoalsBuilding a Data Strategy – Practical Steps for Aligning with Business Goals
Building a Data Strategy – Practical Steps for Aligning with Business Goals
 
Make Data Work for You
Make Data Work for YouMake Data Work for You
Make Data Work for You
 
Data Catalogs Are the Answer – What is the Question?
Data Catalogs Are the Answer – What is the Question?Data Catalogs Are the Answer – What is the Question?
Data Catalogs Are the Answer – What is the Question?
 
Data Catalogs Are the Answer – What Is the Question?
Data Catalogs Are the Answer – What Is the Question?Data Catalogs Are the Answer – What Is the Question?
Data Catalogs Are the Answer – What Is the Question?
 
Data Modeling Fundamentals
Data Modeling FundamentalsData Modeling Fundamentals
Data Modeling Fundamentals
 
Showing ROI for Your Analytic Project
Showing ROI for Your Analytic ProjectShowing ROI for Your Analytic Project
Showing ROI for Your Analytic Project
 
How a Semantic Layer Makes Data Mesh Work at Scale
How a Semantic Layer Makes  Data Mesh Work at ScaleHow a Semantic Layer Makes  Data Mesh Work at Scale
How a Semantic Layer Makes Data Mesh Work at Scale
 
Is Enterprise Data Literacy Possible?
Is Enterprise Data Literacy Possible?Is Enterprise Data Literacy Possible?
Is Enterprise Data Literacy Possible?
 
The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
The Data Trifecta – Privacy, Security & Governance Race from Reactivity to Re...
 
Emerging Trends in Data Architecture – What’s the Next Big Thing?
Emerging Trends in Data Architecture – What’s the Next Big Thing?Emerging Trends in Data Architecture – What’s the Next Big Thing?
Emerging Trends in Data Architecture – What’s the Next Big Thing?
 
Data Governance Trends - A Look Backwards and Forwards
Data Governance Trends - A Look Backwards and ForwardsData Governance Trends - A Look Backwards and Forwards
Data Governance Trends - A Look Backwards and Forwards
 
Data Governance Trends and Best Practices To Implement Today
Data Governance Trends and Best Practices To Implement TodayData Governance Trends and Best Practices To Implement Today
Data Governance Trends and Best Practices To Implement Today
 
2023 Trends in Enterprise Analytics
2023 Trends in Enterprise Analytics2023 Trends in Enterprise Analytics
2023 Trends in Enterprise Analytics
 
Data Strategy Best Practices
Data Strategy Best PracticesData Strategy Best Practices
Data Strategy Best Practices
 
Who Should Own Data Governance – IT or Business?
Who Should Own Data Governance – IT or Business?Who Should Own Data Governance – IT or Business?
Who Should Own Data Governance – IT or Business?
 
Data Management Best Practices
Data Management Best PracticesData Management Best Practices
Data Management Best Practices
 
MLOps – Applying DevOps to Competitive Advantage
MLOps – Applying DevOps to Competitive AdvantageMLOps – Applying DevOps to Competitive Advantage
MLOps – Applying DevOps to Competitive Advantage
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

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...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
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
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
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, ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
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
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 

What You Need to Know to Move from a Relational to a NoSQL Database

  • 1. Database solutions for web and mobile applications. 1
  • 2. WHY NOSQL? “ Zynga’s games serve over 235 million active users per month. We depend on technology from Couchbase to make that possible. We have improved the performance and availability of our games while reducing hardware and administration costs. We will continue to transition our data from relational databases to Couchbase technology. ” Cadir Lee Chief Technology Officer, Zynga 2
  • 3. Interactive software – then and now 3
  • 4. Scaling economics in the Web application stack Application Scales Out Just add more commodity web servers Database Scales Up Get a bigger, more complex server 4
  • 5. Lacking market solutions, users forced to invent Bigtable Dynamo Cassandra Voldemort November 2006 October 2007 August 2008 February 2009 Common characteristics of these “NoSQL” technologies • No schema required before inserting data • No schema change required to change data format • Auto-sharding without application participation • Distributed query support • Automatic data replication across servers and regions Very few organizations want to (fewer can) build and maintain database technology. Couchbase was founded to create packaged, commercially-supported NoSQL database products. 5
  • 7. Couchbase is a “document-oriented” NoSQL database Simple. Flexible. Adjust to changing data management requirements with ease. Simple. { Application Server “UUID”: “21f7f8de-8051-5b89-86 “Time”: “2011-04-01T13:01:02.42 “Server”: “A2223E”, “Calling Server”: “A2213W”, “Type”: “E100”, “Initiating User”: “dsallings@spy.net”, “Details”: { “IP”: “10.1.1.22”, “API”: “InsertDVDQueueItem”, “Trace”: “cleansed”, “Tags”: [ “SERVER”, “US-West”, “API” ] } } Example JSON document No schema required to insert data (or change data format later). Lightweight, cross-platform document format (JSON). Efficient, native support for binary attachments. 7
  • 8. Document data model { “UUID”: “21f7f8de-8051-5b89-86 datum datum datum datum { “Time”: “2011-04-01T13:01:02.42 “UUID”: “21f7f8de-8051-5b89-86 “Server”: “A2223E”, { “Time”: “2011-04-01T13:01:02.42 “Calling Server”: “A2213W”, “Server”: “A2223E”, “UUID”: “21f7f8de-8051-5b89-86 “Type”: “E100”, { “Time”:“Calling Server”: User”: “dsallings@spy.net”, “2011-04-01T13:01:02.42 “Initiating “A2213W”, “Server”: “A2223E”, “Type”: “E100”, “Details”: “UUID”: “21f7f8de-8051-5b89-86 “Initiating User”: “dsallings@spy.net”, “Time”:“Calling Server”: “A2213W”, “2011-04-01T13:01:02.42 { datum datum datum datum “Type”:“Details”: “Server”: “A2223E”, “E100”, “Calling“Initiating “A2213W”,{ “IP”: “10.1.1.22”, Server”: User”: “dsallings@spy.net”, “API”: “InsertDVDQueueItem”, “Type”:“Details”: “E100”, “IP”: “10.1.1.22”, “Trace”: “cleansed”, { “API”: “Tags”: “InsertDVDQueueItem”, “Initiating User”: “dsallings@spy.net”, “Details”: “Trace”: “cleansed”, “IP”: “10.1.1.22”, [ { “Tags”: “API”: “InsertDVDQueueItem”, “SERVER”, “IP”: “10.1.1.22”, [ “Trace”: “cleansed”, “US-West”, datum datum datum datum “Tags”: “SERVER”, “API”: “InsertDVDQueueItem”, [ “Trace”: “cleansed”, “API” “US-West”, ] “Tags”: “SERVER”, “API” } [ “US-West”, } ] “SERVER”, } “API” } “US-West”, ] } “API” datum datum datum datum } ] } } Relational data model Document data model Highly-structured table organization with Collection of complex documents with rigidly-defined data formats and record arbitrary, nested data formats and structure. varying “record” format. 8
  • 9. Couchbase is consistently fast Decouple application performance (user experience) from sketchy database I/O. Application Server Fast. Memcached Memcached, the most widely deployed in-memory caching technology on the planet, is built in to Couchbase, enabling consistently low-latency data reads and writes. We wrote most of memcached. 9
  • 10. Couchbase is elastic (scales out for increased capacity) Grow with linear cost, constant performance and without downtime Application Server Elastic. Expanding (or contracting) a Couchbase cluster is effortless; and requires no application downtime. Other NoSQL solutions require complex configuration and application downtime. 10
  • 11. Elasticity courtesy of Membase technology Proven in the world’s largest NoSQL production deployments Application Server Memcached Membase Pushbutton rebalancing of a Enterprise-class cluster monitoring and live, 100+ node cluster administration Membase has proven itself in multi-hundred node deployments at Zynga, AOL and others. There is a BIG difference between a 20 node and a 750 node cluster. Couchbase is the only NoSQL solution that can scale, and remain manageable, from a single node to a multi-hundred node cluster. Watch a live, 100 node cluster rebalance at: http://blog.couchbase.com/take-a-tour-membase-server-one-dot-seven 11
  • 12. Couchbase Mobile CouchSync Unique to Couchbase, CouchSync permits automated synchronization of databases between intermittently-connected mobile devices and a datacenter- or cloud-resident Couchbase cluster 12
  • 13. AD AND OFFER TARGETING “ AOL servesand any of impressions per day from our ad serving platforms, billions incremental improvement in processing time translates to huge benefits in our ability to more effectively serve the ads needed to meet our contractual commitments. Traditional databases lack the scalability required to support our goal of five milliseconds per read/write. Creating user profiles with Hadoop, then serving them from Couchbase, reduces profile read and write access to under a millisecond, leaving the bulk of the processing time budget for improved targeting and customization. ” Pero Subasic Chief Architect, AOL 13
  • 14. Ad and offer targeting 40 milliseconds to respond with the decision. profiles, real time campaign 3 statistics 2 1 profiles, campaigns events 14
  • 15. SOCIAL AND ONLINE GAMING “ Zynga’susers per month.World, Mafiatechnology otherMembase to over 235 million active FarmVille, Café We rely on Wars and from games have make that possible. As long-time users and members of the Memcached community, we have tremendous respect for the team at Membase. Zynga's internal development work to extend memcached clearly matched with their vision and we’ve worked closely with the team through the development of Membase Server. We expect to improve the performance and availability of our games while reducing hardware and administration costs as we continue to transition data from relational databases to Membase technology. ” Cadir Lee Chief Technology Officer, Zynga 15
  • 16. Social and online gaming 1 2 3 16
  • 17. CLOUD DATA SERVICES “ As the operator of Korea’s number one search portal, Naver.com;gaming number one children’s portal, Jr.naver.com; and the number one the portal, Hangame.com; NHN collectively serves nearly 70 million unique users. It is imperative that we provide each of them with the user experience they expect. With its multi-tenancy capabilities, Couchbase has enabled us to build a shared, centrally managed data cloud service for our development studios with service quality guarantees, secure separation of data and instant provisioning for new properties. ” Chang Song Chief Performance Architect, NHN Corporation 17
  • 18. Cloud data services 1 4 PROVISIONING 2 PROVISIONING 3 18
  • 19. SQL QUERY CACHING “ The Knot planning solution. Weisselected Couchbase, in part, because it was wedding (www.theknot.com) the Internet’s most-trafficked one-stop drop-in compatible with memcached. With no change to our running applications, Couchbase provided a highly-available, easy-to-manage distributed solution for caching SQL queries and accelerating our application performance. While we are using it primarily for caching today, we have big plans to implement indexed search and storage solutions. ” Jason Sirota Director of Application Architecture, The Knot 19
  • 20. SQL query caching RDBMS 20
  • 23. REAL-TIME LOGGING AND ALERTING “ Loggly has becomeinthe leading Logging as aWe use Couchbaseand Couchbase is a key ingredient our technology stack. Service platform NoSQL technology to drive real-time collection of logging traffic to facilitate aggregation and statistical analysis; it stores and tracks the amount of logging activity by user, by time, and by server. Membase is a great fit for our team because it is Memcached-compatible, making it easy to setup and use – it just works! ” Jon Gifford Chief Technology Officer, Loggly 23
  • 24. Real-time logging and alerting Loggly customer software system Loggly customer software system 1 Loggly customer software system 2 3 24