RDBMS Scales Up Get a bigger, more complex server Users ApplicaNon Scales Out Just add more commodity web servers Users System Cost ApplicaDon Performance RelaNonal Database Web/App Server Tier System Cost ApplicaDon Performance Won’t scale beyond this point How do you take this growth? Monday, June 17, 13
Scales Out Cost and performance mirrors app Ner Users NoSQL Distributed Data Store Web/App Server Tier ApplicaNon Scales Out Just add more commodity web servers Users System Cost ApplicaDon Performance ApplicaDon Performance System Cost NoSQL Technology Scales Out Monday, June 17, 13
before inserDng dataNo schema change required to change data formatAuto-‐sharding without applicaDon parDcipaDonDistributed queriesIntegrated main memory cachingData synchronizaDon ( mulD-‐datacenter) Dynamo October 2007 Cassandra August 2008 Bigtable November 2006 Voldemort February 2009 Very few organizaNons want to (fewer can) build and maintain database so[ware technology. But every organizaNon building interacNve web applicaNons needs this technology. A New Technology? Monday, June 17, 13
Performance challenges Cost All of these Other 49% 35% 29% 16% 12% 11% What Is Biggest Data Management Problem Driving Use of NoSQL in Coming Year? Source: Couchbase Survey, December 2011, n = 1351. Monday, June 17, 13
on distributed database technology and surrounding ecosystem • Supports both key-‐value and document-‐ oriented use cases • All components are available under the Apache 2.0 Public License • Obtained as packaged soiware in both enterprise and community ediDons. Couchbase Open Source Project Monday, June 17, 13
Grow cluster without applicaDon changes, without downDme with a single click Consistent sub-‐millisecond read and write response Dmes with consistent high throughput No downDme for soiware upgrades, hardware maintenance, etc. Flexible Data Model JSON document model with no fixed schema. Couchbase Server Monday, June 17, 13
database when changing your applicaDon • Records can have different structures, there is no fixed schema • Allows painless data model changes for rapid applicaDon development { “ID”: 1, “FIRST”: “DipN”, “LAST”: “Borkar”, “ZIP”: “94040”, “CITY”: “MV”, “STATE”: “CA” } JSON JSON JSON JSON Monday, June 17, 13
Data replicaDon with auto-‐failover Zero-‐downDme maintenance Built-‐in managed cached Append-‐only storage layer Online compacDon Monitoring and admin API & UI SDK for a variety of languages Monday, June 17, 13
across servers • Each server stores both acPve and replica docs Only one server acDve at a Dme • Client library provides app with simple interface to database • Cluster map provides map to which server doc is on App never needs to know • App reads, writes, updates docs • MulPple app servers can access same document at same Pme User Configured Replica Count = 1 READ/WRITE/UPDATE ACTIVE SERVER 1 ACTIVE Doc 4 Doc 7 Doc Doc Doc SERVER 2 Doc 8 ACTIVE Doc 1 Doc 2 Doc Doc Doc REPLICA Doc 4 Doc 1 Doc 8 Doc Doc Doc REPLICA Doc 6 Doc 3 Doc 2 Doc Doc Doc REPLICA Doc 7 Doc 9 Doc 5 Doc Doc Doc SERVER 3 Doc 6 Doc 5 Doc 2 Doc Doc Doc Doc 9 APP SERVER 1 COUCHBASE Client Library CLUSTER MAP COUCHBASE Client Library CLUSTER MAP APP SERVER 2 Monday, June 17, 13