SlideShare ist ein Scribd-Unternehmen logo
1 von 76
Downloaden Sie, um offline zu lesen
Data	
  Management	
  for	
  	
  
Interac6ve	
  Applica6ons	
  
NoSQL	
  Document	
  Database	
  
Jeff	
  Harris	
  	
  
Business	
  Development	
  

1	
  
Agenda	
  
•  Company	
  Overview	
  	
  
•  Kinds	
  of	
  Database	
  Management	
  System	
  
•  Common	
  Use	
  cases,	
  When	
  is	
  NoSQL	
  a	
  good	
  fit?	
  
•  NoSQL	
  for	
  Mobile	
  Devices,	
  JSON	
  Anywhere	
  	
  
•  Rela6onal	
  vs	
  Non-­‐Rela6onal/NoSQL	
  
•  Live	
  Demo	
  	
  	
  
•  Couchbase	
  Technical	
  Overview	
  (under	
  the	
  hood	
  and	
  
features)	
  	
  
	
  
2	
  
Couchbase	
  NoSQL	
  Leadership	
  
Leading	
  NoSQL	
  database	
  company	
  
Open	
  Source	
  development	
  &	
  business	
  model	
  

Document-­‐oriented	
  NoSQL	
  database	
  
Focused	
  on	
  interacBve	
  internet	
  and	
  mobile	
  applicaBons	
  

Provide	
  more	
  flexible,	
  higher	
  performance,	
  	
  
more	
  scalable	
  database	
  than	
  rela6onal	
  alterna6ve	
  
Most	
  mature,	
  reliable	
  and	
  widely	
  deployed	
  solu6on	
  
>7,500	
  paid	
  producBon	
  deployments	
  worldwide	
  

Headquarters	
  in	
  Silicon	
  Valley	
  (Mountain	
  View,	
  CA)	
  
~120	
  employees	
  including	
  >70	
  in	
  engineering/product	
  
>80%	
  of	
  commits	
  to	
  Couchbase,	
  memcached,	
  Apache	
  CouchDB	
  

3	
  
Market	
  Adop6on	
  –	
  Customers	
  
Internet	
  Companies	
  

Enterprises	
  

More	
  than	
  350	
  customers	
  –	
  7,500	
  produc6on	
  deployments	
  worldwide	
  
4	
  
Market	
  Adop6on	
  
Internet	
  Companies	
  
• 
• 
• 
• 
• 
• 
• 
• 

Enterprises	
  
• CommunicaBons	
  
• Retail	
  
• Financial	
  Services	
  
• Health	
  Care	
  
• AutomoBve/Airline	
  
• Agriculture	
  
• Consumer	
  Electronics	
  
• Business	
  Systems	
  

Social	
  Gaming	
  
Ad	
  Networks	
  
Social	
  Networks	
  
Online	
  Business	
  
Services	
  
E-­‐Commerce	
  
Online	
  Media	
  
Content	
  Management	
  
Cloud	
  Services	
  

5	
  
Two	
  kinds	
  of	
  Database	
  Management	
  
System	
  

OLTP	
  /	
  OLTP	
  like	
  
	
  
Opera6onal	
  Stores	
  

Data	
  warehouse	
  or	
  
Analy6cs	
  system	
  

6	
  
Adding	
  a	
  few	
  more	
  components	
  
InteracBve	
  
	
  

OLTP	
  /	
  OLTP	
  like	
  
	
  

Opera6onal	
  Stores	
  
ETL	
  
Streaming	
  
Data	
  
RDBMS	
   Other	
  legacy	
  
systems	
  

	
   BI	
  &	
  
ReporBng	
  
	
  
	
  
Analy6cs	
  
	
  
	
  
	
  
Data	
  
warehouse	
  

7	
  

RDBMS	
  
Column	
  
stores	
  
NoSQL	
  +	
  Big	
  Data	
  

Opera6onal	
  database	
  for	
  
web	
  and	
  mobile	
  apps	
  with	
  
high	
  performance	
  at	
  scale	
  

Map-­‐reduce	
  against	
  
huge	
  datasets	
  to	
  
analyze	
  and	
  find	
  insights	
  
and	
  answers	
  

8	
  
Common	
  Use	
  Cases	
  
Social	
  Gaming	
  

Ad	
  Targe6ng	
  

	
  

•  Couchbase	
  stores	
  
player	
  and	
  game	
  
data	
  	
  
•  Examples	
  
customers	
  include:	
  
Zynga	
  
•  Tapjoy,	
  Ubiso`,	
  
Tencent	
  

•  Couchbase	
  stores	
  
user	
  informaBon	
  for	
  
fast	
  access	
  
•  Examples	
  customers	
  
include:	
  AOL,	
  
Mediamind,	
  
Convertro	
  	
  

	
  

Mobile	
  Apps	
  
	
   	
  

•  Couchbase	
  stores	
  user	
  
info	
  and	
  app	
  content	
  
•  Examples	
  customers	
  
include:	
  Kobo,	
  PlayBka	
  	
  

	
  

Session	
  store	
  

	
  

	
  

•  Couchbase	
  Server	
  as	
  a	
  key-­‐
value	
  store	
  
•  Examples	
  customers	
  include:	
  
Concur,	
  Sabre	
  

	
  

	
  
User	
  Profile	
  Store	
  
	
  

•  Couchbase	
  Server	
  as	
  a	
  
key-­‐value	
  store	
  
•  Examples	
  customers	
  
include:	
  Tunewiki	
  

High	
  availability	
  cache	
   	
  
	
  
	
  

Content	
  &	
  Metadata	
  
Store	
  

•  Couchbase	
  document	
  store	
  
with	
  ElasBc	
  Search	
  
•  Examples	
  customers	
  
include:	
  McGraw	
  Hill	
  

	
  

3rd	
  party	
  data	
  	
  aggrega6on	
  	
  
	
   	
  

•  Couchbase	
  stores	
  social	
  media	
  and	
  
data	
  feeds	
  
•  Couchbase	
  Server	
  used	
  as	
  a	
  cache	
  Ber	
  replacement	
   •  Examples	
  customers	
  include:	
  
LivePerson	
  
•  Examples	
  customers	
  include:	
  Orbitz	
  
9	
  
Couchbase	
  Lite	
  
The	
  only	
  
Na6ve	
  NoSQL	
  
Database	
  for	
  
Mobile	
  
10	
  
The	
  Complete	
  Mobile	
  Solu6on	
  

11	
  
JSON	
  Anywhere	
  	
  

JS	
  	
  	
  N	
  

Couchbase	
  Server	
  

Sync Gateway

Lite

Server

JS	
  	
  	
  N	
  

JS	
  	
  	
  N	
  
•  JSON	
  on	
  the	
  device	
  •  JSON	
  on	
  the	
  wire	
  
­  Developers	
  
increasingly	
  prefer	
  
NoSQL	
  database	
  

­  No	
  need	
  for	
  data	
  
transformaBon	
  
12	
  

•  JSON	
  in	
  the	
  cloud	
  
­  Flexible	
  data	
  model	
  
­  High	
  performance	
  
­  Easy	
  scalability	
  
Rela6onal	
  Vs	
  NoSQL	
  Document	
  
databases	
  

13	
  
Rela6onal	
  Technology	
  Scales	
  Up	
  
Applica6on	
  Scales	
  Out	
  
Just	
  add	
  more	
  commodity	
  web	
  servers	
  
System	
  Cost	
  
ApplicaBon	
  Performance	
  	
  

Web/App	
  Server	
  Tier	
  

Users	
  

RDBMS	
  Scales	
  Up	
  
Get	
  a	
  bigger,	
  more	
  complex	
  server	
  
System	
  Cost	
  
ApplicaBon	
  Performance	
  	
  

Won’t	
  
scale	
  
beyond	
  
this	
  point	
  

Rela6onal	
  Database	
  
Users	
  

Expensive	
  and	
  disrup6ve	
  sharding,	
  doesn’t	
  perform	
  at	
  web	
  scale	
  
14	
  
Couchbase	
  Server	
  Scales	
  Out	
  Like	
  App	
  
Tier	
  
Applica6on	
  Scales	
  Out	
  
Just	
  add	
  more	
  commodity	
  web	
  servers	
  
System	
  Cost	
  
ApplicaBon	
  Performance	
  	
  

Web/App	
  Server	
  Tier	
  

Users	
  

NoSQL	
  Database	
  Scales	
  Out	
  
Cost	
  and	
  performance	
  mirrors	
  app	
  6er	
  
System	
  Cost	
  
ApplicaBon	
  Performance	
  	
  

Couchbase	
  Distributed	
  Data	
  Store	
  

Users	
  

Scaling	
  out	
  flabens	
  the	
  cost	
  and	
  performance	
  curves	
  
15	
  
If	
  Cars	
  Were	
  Stored	
  in	
  an	
  RDBMS…	
  

hhp://iedei.files.wordpress.com/2012/04/mercedes-­‐f1-­‐car-­‐disassembled.jpeg	
  

16	
  
If	
  Cars	
  Were	
  Stored	
  in	
  a	
  Document	
  
Database…	
  

hhp://images.conceptcarz.com/imgxra/Mercedes-­‐Benz/Mercedes-­‐W03-­‐F1-­‐Spanish-­‐GP_012-­‐1680.jpg	
  

17	
  
Rela6onal	
  vs	
  Document	
  Data	
  Model	
  
C1	
  

C2	
  

C3	
  

C4	
  

{	
  
	
  
	
  
	
  
}	
  

JSON	
  
JSON	
  
JSON	
  

Rela6onal	
  data	
  model	
  

Document	
  data	
  model	
  

Highly-­‐structured	
  table	
  organizaBon	
  
with	
  rigidly-­‐defined	
  data	
  formats	
  and	
  
record	
  structure.	
  

CollecBon	
  of	
  complex	
  documents	
  with	
  
arbitrary,	
  nested	
  data	
  formats	
  and	
  
varying	
  “record”	
  format.	
  

18	
  
RDBMS	
  Example:	
  User	
  Profile	
  
User	
  Info	
  

Address	
  Info	
  

KEY	
  

First	
  

Last	
  

ZIP_id	
  

ZIP_id	
  

CITY	
  

STATE	
  

ZIP	
  

1	
  

Frank	
  

Weigel	
  

2	
  

1	
  

DEN	
  

CO	
  

30303	
  

2	
  

Ali	
  

Dodson	
  

2	
  

2	
  

MV	
  

CA	
  

94040	
  

3	
  

Mark	
  

Azad	
  

2	
  

3	
  

CHI	
  

IL	
  

60609	
  

4	
  

Steve	
  

Yen	
  

3	
  

4	
  

NY	
  

NY	
  

10010	
  

To	
  get	
  info	
  about	
  specific	
  user,	
  you	
  perform	
  a	
  join	
  across	
  two	
  tables	
  	
  
19	
  
Document	
  Example:	
  User	
  Profile	
  

	
  {	
  
	
  	
  	
  	
  “ID”:	
  1,	
  
	
  	
  	
  	
  “FIRST”:	
  “Frank”,	
  
	
  	
  	
  	
  “LAST”:	
  “Weigel”,	
  
	
  	
  	
  	
  “ZIP”:	
  “94040”,	
  
	
  	
  	
  	
  “CITY”:	
  “MV”,	
  
	
  	
  	
  	
  “STATE”:	
  “CA”	
  
	
  	
  }	
  

+	
  

=	
  

JSON	
  

All	
  data	
  in	
  a	
  single	
  document	
  
20	
  
Making	
  the	
  Same	
  Change	
  With	
  a	
  
Document	
  DB	
  
	
  {	
  
	
  	
  	
  	
  “ID”:	
  1,	
  
	
  	
  	
  	
  “FIRST”:	
  “Frank”,	
  
	
  	
  	
  	
  “LAST”:	
  “Weigel”,	
  
	
  	
  	
  	
  “ZIP”:	
  “94040”,	
  
	
  	
  	
  	
  “CITY”:	
  “MV”,	
  
	
  	
  	
  	
  “STATE”:	
  “CA”,	
  
	
  	
  	
  	
  “STATUS”:	
  	
  
	
  	
  	
  	
  	
  	
  {	
  	
  “TEXT”:	
  “At	
  Conf”	
  	
  
}	
  
,	
  
	
  }	
  	
  	
  	
  	
  	
  	
  “GEO_LOC”:	
  “134”	
  },	
  
	
   “COUNTRY”:	
  ”USA”	
  
}	
  
	
  
	
  	
  

JSON	
  

Just	
  add	
  informa6on	
  to	
  a	
  document	
  
Rela6onal	
  vs	
  Document	
  Performance	
  
User	
  Table	
  

Photo	
  Table	
  

User	
  
ID	
  

First	
  

Last	
  

Zip	
  

1	
  

Frank	
  

Wiegel	
  
Weigel	
  

94040	
  

2	
  

Joe	
  

Smith	
  

94040	
  

3	
  

Ali	
  

Dodson	
  

94040	
  

4	
  

Sarah	
  

Gorin	
  

Bob	
  

Young	
  

30303	
  

6	
  

Nancy	
  

Baker	
  

10010	
  

7	
  

Ray	
  

Jones	
  

31311	
  

8	
  

Lee	
  

Chen	
  

V5V3	
  

Photo	
  
ID	
  

Comment	
  

2	
  

d043	
  

NYC	
  

2	
  

b054	
  

Bday	
  

5	
  

c036	
  

Miami	
  

7	
  

d072	
  

Sunset	
  

5002	
  

e086	
  

Spain	
  

NW1	
  

5	
  

User	
  	
  
ID	
  

Status	
  Table	
  

	
  	
  
	
  	
  
	
  	
  

Status	
  	
  
ID	
  

Text	
  

1	
  

a42	
  

At	
  conf	
  

4	
  
5	
  

b26	
  
c032	
  

excited	
  

5	
  
4	
  

c32	
  
b26	
  

hockey	
  

12	
  

• 
• 
• 

User	
  	
  
ID	
  

d83	
  

Go	
  A’s	
  

5000	
  

e34	
  

sailing	
  

Affilia6ons	
  Table	
  

5000	
  

Doug	
  

Moore	
  

04252	
  

5001	
  

Mary	
  

White	
  

41694	
  

User	
  	
  
ID	
  

Affilia6ons	
   Affilia6ons	
  
ID	
  
Name	
  

Lisa	
  
Lisa	
  

Clark	
  

12425	
  

a42	
  

Cal	
  

4	
  

b96	
  

USC	
  

7	
  

5002	
  
5002	
  

2	
  

c14	
  

UW	
  

8	
  

e22	
  

{	
  
{	
  
{	
  
{	
   	
   	
  	
  
{	
   	
  	
  
{	
   	
   	
   	
   	
  	
  
	
   	
   	
   	
   }	
  
}	
  
	
   	
   	
   }	
  
JSON	
  
JSON	
  
	
   }	
   }	
  
JSON	
  
JSON	
  
}	
  
JSON	
  
JSON	
  

Oxford	
  

Faster	
  response	
  6mes	
  and	
  higher	
  throughput	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  

PE

RF O R M A N C E

Grow	
  cluster	
  without	
  applicaBon	
  
changes,	
  without	
  downBme	
  
when	
  needed	
  

Consistent	
  High	
  
Performance	
  

Always	
  awesome	
  experience	
  	
  
for	
  your	
  applicaBon	
  users.	
  

Always	
  On	
  
24x7x365	
  

JSON
JSON JSO

JSON N
JSON

Flexible	
  
Data	
  Model	
  

Keep	
  developers	
  producBve	
  and	
  
allow	
  fast	
  and	
  easy	
  addiBon	
  of	
  	
  
new	
  features	
  

The	
  sun	
  never	
  sets	
  on	
  the	
  Internet,	
  
your	
  applicaBon	
  needs	
  the	
  database	
  
to	
  always	
  serve	
  data.	
  

23	
  
Couchbase	
  Server	
  Is	
  The	
  Complete	
  
Solu6on	
  

✔	
  

Easy	
  
Scalability	
  

Consistent	
  High	
  
✔	
   Performance	
  

One	
  click	
  scalability	
  and	
  no	
  app	
  
changes.	
  

Sub	
  millisecond	
  latency	
  with	
  high	
  
throughput	
  for	
  reads	
  and	
  writes.	
  

Always	
  On	
  
✔	
   24x7x365	
  
Maintenance,	
  upgrades	
  and	
  
cluster	
  resizing	
  all	
  online	
  
without	
  applicaBon	
  downBme	
  

✔	
  

Flexible	
  
Data	
  Model	
  

JSON	
  document	
  model	
  with	
  no	
  fixed	
  
schema.	
  

24	
  
Couchbase	
  Server	
  Overview	
  
	
  

Clustered	
  NoSQL	
  Document	
  Database	
  for	
  	
  
interacBve	
  applicaBons	
  
	
  

•  Easy	
  scalability	
  with	
  efficient	
  auto-­‐sharding	
  

­  ApplicaBon	
  stays	
  unchanged	
  as	
  cluster	
  size	
  changes	
  
­  Data	
  replicaBon	
  and	
  node	
  auto-­‐failover	
  

•  Consistent	
  high	
  performance	
  
­  Sub	
  millisecond	
  latency	
  with	
  high	
  throughput	
  

•  Always-­‐On	
  
­  Maintenance,	
  upgrades	
  and	
  cluster	
  resizing	
  all	
  online	
  
without	
  applicaBon	
  downBme	
  

25	
  
Couchbase	
  Server	
  Features	
  
•  Easy	
  scalability	
  

•  Built-­‐in	
  clustering	
  	
  
•  All	
  nodes	
  equal	
  
•  One	
  click	
  to	
  scale	
  horizontally	
  
	
  

•  Consistent	
  High	
  Performance	
  

•  Built-­‐in	
  managed	
  cache	
  
•  High	
  performance	
  for	
  both	
  reads	
  and	
  writes	
  
	
  

•  Always	
  on	
  
• 
• 
• 
• 

Data	
  replication	
  with	
  auto-­‐failover	
  
Cross	
  Datacenter	
  Replication	
  
Zero-­‐downtime	
  maintenance	
  
Monitoring	
  and	
  administration	
  APIs	
  and	
  GUI	
  
26	
  
New	
  Couchbase	
  Server	
  Features	
  
•  Flexible	
  JSON	
  document	
  model	
  
­  No	
  fixed	
  schema	
  for	
  higher	
  producBvity	
  and	
  less	
  obstacles	
  for	
  developers	
  

•  Data	
  indexing	
  and	
  querying	
  
­  Secondary	
  indexes	
  on	
  JSON	
  documents	
  
­  Simple	
  real-­‐Bme	
  analyBcs	
  via	
  incremental	
  map-­‐reduce	
  
­  Connector	
  to	
  full-­‐text	
  search	
  indexer	
  

•  Cross	
  datacenter	
  replica6on	
  
­  Scale	
  your	
  data	
  beyond	
  a	
  single	
  data	
  center	
  

27	
  
Couchbase	
  solu6on	
  
“The	
  basics”	
  

28	
  
Single	
  node	
  -­‐	
  Couchbase	
  Write	
  
Opera6on	
  
App	
  Server	
  

Doc	
  1	
  

3	
  
2	
  
Managed	
  Cache	
  
ReplicaBon	
  
Queue	
  

Doc	
  1	
  

Disk	
  Queue	
  

To	
  other	
  node	
  

3	
  

Disk	
  

Couchbase	
  Server	
  Node	
  
29	
  
Single	
  node	
  -­‐	
  Couchbase	
  Update	
  
Opera6on	
  
App	
  Server	
  

Doc	
  1’	
  

3	
  
2	
  
Managed	
  Cache	
  
ReplicaBon	
  
Queue	
  

Doc	
  1	
  
Doc	
  1’	
  

Disk	
  Queue	
  

To	
  other	
  node	
  

3	
  

Disk	
  
Doc	
  1	
  

Couchbase	
  Server	
  Node	
  
30	
  
App	
  Server	
  

GET	
  
Doc	
  1	
  

Single	
  node	
  -­‐	
  Couchbase	
  Read	
  
Opera6on	
  

3	
  
2	
  
Managed	
  Cache	
  
ReplicaBon	
  
Queue	
  

Doc	
  1	
  

Disk	
  Queue	
  

To	
  other	
  node	
  

3	
  

Disk	
  
Doc	
  1	
  

Couchbase	
  Server	
  Node	
  
31	
  
Basic	
  Opera6on	
  
APP	
  SERVER	
  1	
  

APP	
  SERVER	
  2	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

READ/WRITE/UPDATE	
  
SERVER	
  1	
  
	
  
	
  
ACTIVE	
  

SERVER	
  2	
  
	
  
	
  
ACTIVE	
  

•  Docs	
  distributed	
  evenly	
  across	
  
servers	
  	
  

SERVER	
  3	
  
	
  
	
  
ACTIVE	
  

•  Each	
  server	
  stores	
  both	
  ac6ve	
  and	
  
replica	
  docs	
  

Doc	
  5	
  

Doc	
  

Doc	
  4	
  

Doc	
  

Doc	
  1	
  

Doc	
  

Doc	
  2	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  3	
  

Doc	
  

­  Only	
  one	
  server	
  acBve	
  at	
  a	
  Bme	
  

Doc	
  9	
  

Doc	
  

Doc	
  8	
  

Doc	
  

Doc	
  6	
  

Doc	
  

•  Client	
  library	
  provides	
  app	
  with	
  
simple	
  interface	
  to	
  database	
  

REPLICA	
  

REPLICA	
  

REPLICA	
  

•  Cluster	
  map	
  provides	
  map	
  	
  
to	
  which	
  server	
  doc	
  is	
  on	
  

Doc	
  4	
  

Doc	
  

Doc	
  6	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  1	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  9	
  

Doc	
  

•  App	
  reads,	
  writes,	
  updates	
  docs	
  

Doc	
  8	
  

Doc	
  

Doc	
  2	
  

Doc	
  

Doc	
  5	
  

Doc	
  

•  Mul6ple	
  app	
  servers	
  can	
  access	
  same	
  
document	
  at	
  same	
  6me	
  

­  App	
  never	
  needs	
  to	
  know	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  

User	
  Configured	
  Replica	
  Count	
  =	
  1	
  

32	
  
Add	
  Nodes	
  to	
  Cluster	
  
APP	
  SERVER	
  1	
  

APP	
  SERVER	
  2	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

READ/WRITE/UPDATE	
  
SERVER	
  1	
  
	
  
	
  
ACTIVE	
  

SERVER	
  2	
  
	
  
	
  
ACTIVE	
  

READ/WRITE/UPDATE	
  

SERVER	
  3	
  
	
  
	
  
ACTIVE	
  

Doc	
  5	
  

Doc	
  

Doc	
  4	
  

Doc	
  

Doc	
  1	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  9	
  

Doc	
  

Doc	
  8	
  

Doc	
  

Doc	
  6	
  

SERVER	
  5	
  
	
  
	
  
ACTIVE	
  

Doc	
  

Doc	
  2	
  

SERVER	
  4	
  
	
  
	
  
ACTIVE	
  

Doc	
  

REPLICA	
  

REPLICA	
  

REPLICA	
  

Doc	
  4	
  

Doc	
  

Doc	
  6	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  9	
  

Doc	
  

Doc	
  2	
  

Doc	
  

Doc	
  5	
  

­  Even	
  distribuBon	
  of	
  docs	
  
­  Minimum	
  doc	
  movement	
  

•  Cluster	
  map	
  updated	
  
REPLICA	
  

Doc	
  

Doc	
  8	
  

•  Docs	
  automa6cally	
  
rebalance	
  across	
  cluster	
  

Doc	
  

Doc	
  1	
  

Doc	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  

User	
  Configured	
  Replica	
  Count	
  =	
  1	
  

•  Two	
  servers	
  added	
  with	
  
one-­‐click	
  opera6on	
  

33	
  

REPLICA	
  

•  App	
  database	
  	
  
calls	
  now	
  distributed	
  	
  
over	
  larger	
  number	
  of	
  
servers	
  
	
  
Fail	
  Over	
  Node	
  
APP	
  SERVER	
  1	
  

APP	
  SERVER	
  2	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

SERVER	
  1	
  
	
  
	
  
ACTIVE	
  

SERVER	
  2	
  
	
  
	
  
ACTIVE	
  

SERVER	
  3	
  
	
  
	
  
ACTIVE	
  

SERVER	
  4	
  
	
  
	
  
ACTIVE	
  

Doc	
  5	
  

Doc	
  

Doc	
  4	
  

Doc	
  

Doc	
  1	
  

Doc	
  

Doc	
  9	
  

Doc	
  

Doc	
  2	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  8	
  

SERVER	
  5	
  
	
  
	
  
ACTIVE	
  

Doc	
  

Doc	
  1	
  

Doc	
  6	
  

Doc	
  
Doc	
  

Doc	
  3	
  

REPLICA	
  

REPLICA	
  

REPLICA	
  

REPLICA	
  

Doc	
  4	
  

Doc	
  

Doc	
  6	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  5	
  

Doc	
  1	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  9	
  

Doc	
  

Doc	
  

Doc	
  2	
  

Doc	
  8	
  

Doc	
  
Doc	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  

User	
  Configured	
  Replica	
  Count	
  =	
  1	
  

REPLICA	
  

34	
  

•  App	
  servers	
  accessing	
  docs	
  
•  Requests	
  to	
  Server	
  3	
  fail	
  
•  Cluster	
  detects	
  server	
  failed	
  
–  Promotes	
  replicas	
  of	
  docs	
  to	
  
acBve	
  
–  Updates	
  cluster	
  map	
  

•  Requests	
  for	
  docs	
  now	
  go	
  to	
  
appropriate	
  server	
  
•  Typically	
  rebalance	
  	
  
would	
  follow	
  
XDCR:	
  Cross	
  Data	
  Center	
  Replica6on	
  

US	
  DATA	
  
CENTER	
  

EUROPE	
  DATA	
  
CENTER	
  
	
  

	
  

ASIA	
  DATA	
  
CENTER	
  
	
  

hhp://blog.groosy.com/wp-­‐content/uploads/2011/10/internet-­‐map.jpg	
  

35	
  
Cross	
  Data	
  Center	
  Replica6on	
  (XDCR)	
  
SERVER	
  2	
  
	
  
	
   ACTIVE	
  

SERVER	
  1	
  
	
  
	
   ACTIVE	
  

SERVER	
  3	
  
	
  
	
   ACTIVE	
  

Doc	
  	
  

Doc	
  	
  

Doc	
  	
  

Doc	
  2	
  

RAM	
  

Doc	
  
Doc	
  	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  
NYC	
  DATA	
  CENTER	
  

Doc	
  	
  

Doc	
  9	
  

Doc	
  	
  

RAM	
  
Doc	
  

DISK	
  

Doc	
  	
  

Doc	
  	
  

Doc	
  

RAM	
  

Doc	
  

Doc	
  	
  

Doc	
  

DISK	
  

Doc	
  

Doc	
  

DISK	
  

SERVER	
  2	
  
	
  
	
   ACTIVE	
  

SERVER	
  1	
  
	
  
	
   ACTIVE	
  

SERVER	
  3	
  
	
  
	
   ACTIVE	
  

Doc	
  	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  
SF	
  DATA	
  CENTER	
  

Doc	
  	
  

Doc	
  	
  

Doc	
  2	
  

RAM	
  

Doc	
  
Doc	
  	
  

Doc	
  	
  

Doc	
  9	
  

Doc	
  	
  

DISK	
  

RAM	
  
Doc	
  

36	
  

Doc	
  	
  

Doc	
  	
  

Doc	
  

DISK	
  

RAM	
  
Doc	
  	
  

Doc	
  

Doc	
  

Doc	
  

DISK	
  

Doc	
  
Indexing	
  and	
  Querying	
  Features	
  
•  Index	
  and	
  Query	
  
­  Distributed	
  indexing	
  and	
  querying	
  
­  Secondary	
  indexes	
  of	
  JSON	
  document	
  content	
  
­  Flexible	
  querying	
  of	
  indexes	
  

•  Incremental	
  Map-­‐Reduce	
  
­  Distributed	
  simple	
  real-­‐Bme	
  analyBcs	
  
­  Only	
  considers	
  changes	
  due	
  to	
  updated	
  data	
  

•  Full	
  Text	
  Search	
  
­  Robust	
  integraBon	
  with	
  ElasBcSearch	
  cluster	
  
­  Flexible	
  full	
  text	
  search	
  and	
  faceted	
  search	
  
37	
  
Indexing	
  and	
  Querying	
  	
  
APP	
  SERVER	
  1	
  

APP	
  SERVER	
  2	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

COUCHBASE	
  Client	
  Library	
  
	
  
CLUSTER	
  MAP	
  
	
  

	
  

Query
SERVER	
  1	
  
	
  
	
  
ACTIVE	
  

SERVER	
  2	
  
	
  
	
  
ACTIVE	
  

SERVER	
  3	
  
	
  
	
  
ACTIVE	
  

•  Indexing	
  work	
  is	
  distributed	
  
amongst	
  nodes	
  

Doc	
  5	
  

Doc	
  

Doc	
  4	
  

Doc	
  

Doc	
  1	
  

Doc	
  

•  Large	
  data	
  set	
  possible	
  

Doc	
  2	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  3	
  

Doc	
  

•  Parallelize	
  the	
  effort	
  

Doc	
  9	
  

Doc	
  

Doc	
  8	
  

Doc	
  

Doc	
  6	
  

Doc	
  

REPLICA	
  

REPLICA	
  

REPLICA	
  

Doc	
  4	
  

Doc	
  

Doc	
  6	
  

Doc	
  

Doc	
  7	
  

Doc	
  

Doc	
  1	
  

Doc	
  

Doc	
  3	
  

Doc	
  

Doc	
  9	
  

Doc	
  

Doc	
  8	
  

Doc	
  

Doc	
  2	
  

Doc	
  

Doc	
  5	
  

Doc	
  

COUCHBASE	
  SERVER	
  	
  CLUSTER	
  

User	
  Configured	
  Replica	
  Count	
  =	
  1	
  

38	
  

•  Each	
  node	
  has	
  index	
  for	
  data	
  stored	
  
on	
  it	
  
•  Queries	
  combine	
  the	
  results	
  from	
  
required	
  nodes	
  
Full	
  Text	
  Search	
  	
  

39	
  
Couchbase	
  Demonstra6on	
  
•  Star6ng	
  with	
  4	
  database	
  nodes	
  
under	
  load	
  
•  Dynamically	
  scaling	
  to	
  6	
  
database	
  nodes	
  

ApplicaBon	
  user	
  

•  Easy	
  management	
  and	
  
monitoring	
  

Web	
  applicaBon	
  server	
  

•  JSON	
  indexing	
  and	
  querying	
  	
  
•  Easy	
  configura6on	
  of	
  	
  	
  	
  cross-­‐
datacenter	
  replica6on	
  	
  

Couchbase	
  Servers	
  

In	
  the	
  EC2	
  or	
  Datacenter	
  

•  Not	
  possible	
  any	
  other	
  database	
  
technology	
  	
  
40	
  

XDCR	
  
The	
  Couchbase	
  difference	
  

41	
  
Couchbase:	
  The	
  Complete	
  NoSQL	
  
Solu6on	
  
Easy	
  
Scalability	
  

PE

Grow	
  cluster	
  without	
  applicaBon	
  
changes,	
  without	
  downBme	
  
when	
  needed	
  

Consistent	
  High	
  
Performance	
  

RF O R M A N C E

Always	
  awesome	
  experience	
  	
  
for	
  your	
  applicaBon	
  users.	
  

Always	
  On	
  
24x7x365	
  

JSON
JSON JSO

JSON N
JSON

Flexible	
  
Data	
  Model	
  

Keep	
  developers	
  producBve	
  and	
  
allow	
  fast	
  and	
  easy	
  addiBon	
  of	
  	
  
new	
  features	
  

The	
  sun	
  never	
  sets	
  on	
  the	
  Internet,	
  
your	
  applicaBon	
  needs	
  the	
  database	
  
to	
  always	
  serve	
  data.	
  
42	
  
Consistent	
  High	
  Performance	
  
•  Consistent,	
  predictable	
  sub	
  millisecond	
  latency	
  
­  Apps	
  need	
  fast,	
  predictable	
  access	
  to	
  data,	
  it’s	
  not	
  good	
  enough	
  to	
  be	
  fast	
  
some	
  of	
  the	
  Bme	
  

•  Consistent,	
  predictable	
  throughput	
  
­  Throughput	
  capacity	
  of	
  your	
  data	
  layer	
  should	
  be	
  independent	
  of	
  the	
  mix	
  
of	
  reads	
  and	
  writes	
  

•  Linear	
  throughput	
  scalability	
  
­  Double	
  the	
  number	
  of	
  servers,	
  get	
  twice	
  the	
  maximum	
  throughput	
  and	
  
double	
  the	
  data	
  capacity	
  

43	
  
YCSB	
  Benchmark	
  Details	
  	
  
•  Web	
  applica6on	
  simula6on	
  	
  
­  Simulates	
  changing	
  set	
  of	
  users	
  using	
  the	
  app/accessing	
  data	
  	
  
­  Document	
  size	
  of	
  1.5-­‐2K	
  with	
  15	
  million	
  acBve	
  documents	
  
•  Data	
  doesn’t	
  enBrely	
  fit	
  into	
  RAM	
  

­  Workload	
  simulaBng	
  realisBc	
  mix	
  of	
  reads	
  and	
  writes	
  (60/40)	
  

•  System	
  details	
  
­ 
­ 
­ 
­ 

4	
  node	
  cluster	
  with	
  seperate	
  node	
  to	
  run	
  client	
  workload	
  
AWS	
  Extra	
  Large	
  instances	
  with	
  striped	
  EBS	
  
1	
  replica	
  setup	
  (For	
  mongoDB	
  -­‐	
  no	
  write	
  concern,	
  no	
  journaling)	
  
Each	
  test	
  run	
  3	
  Bmes	
  with	
  varying	
  throughputs	
  with	
  95%	
  latency	
  measured	
  

	
  

•  YCSB	
  test	
  workload	
  source	
  code	
  	
  
­  hhps://github.com/Altoros/YCSB	
  
44	
  
Read	
  performance	
  comparison	
  -­‐	
  NoSQL	
  
databases	
  
Read	
  latencies	
  against	
  throughput	
  
18	
  

	
  95th	
  Percen6le	
  Latency	
  (ms)	
  	
  

16	
  

Cassandra	
  

14	
  

12	
  

10	
  

8	
  

MongoDB	
  cannot	
  handle	
  
throughput	
  above	
  ~	
  8000	
  ops	
  /	
  sec	
  

6	
  

Couchbase	
  handles	
  ~3X	
  throughput	
  
with	
  significantly	
  lower	
  latency	
  	
  

4	
  

MongoDB	
  
Couchbase	
  

2	
  

0	
  
0	
  

2000	
  

4000	
  

6000	
  

hhps://github.com/Altoros/YCSB	
  

8000	
  

10000	
  

12000	
  

14000	
  

Opera6ons	
  per	
  Second	
  
45	
  

16000	
  

18000	
  

20000	
  

22000	
  
Write	
  performance	
  comparison	
  -­‐	
  
NoSQL	
  databases	
  
Insert/update	
  latencies	
  against	
  throughput	
  

	
  95th	
  Percen6le	
  Latency	
  (ms)	
  	
  

30	
  

25	
  

MongoDB	
  

20	
  

MongoDB	
  latency	
  shoots	
  
up	
  beyond	
  6000	
  ops	
  /	
  sec	
  

15	
  

Cassandra	
  

10	
  

Couchbase	
  latency	
  stays	
  consistently	
  
low	
  even	
  at	
  20000	
  ops	
  /	
  sec	
  

5	
  

Couchbase	
  

0	
  
0	
  

2000	
  

4000	
  

6000	
  

8000	
  

10000	
  

12000	
  

14000	
  

Opera6ons	
  per	
  Second	
  
46	
  

16000	
  

18000	
  

20000	
  

22000	
  
LinkedIn	
  4	
  node	
  cluster	
  

47	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  

PE

Grow	
  cluster	
  without	
  applicaBon	
  
changes,	
  without	
  downBme	
  
when	
  needed	
  

Consistent	
  High	
  
Performance	
  

RF O R M A N C E

Always	
  awesome	
  experience	
  	
  
for	
  your	
  applicaBon	
  users.	
  

Always	
  On	
  
24x7x365	
  

JSON
JSON JSO

JSON N
JSON

Flexible	
  
Data	
  Model	
  

Keep	
  developers	
  producBve	
  and	
  
allow	
  fast	
  and	
  easy	
  addiBon	
  of	
  	
  
new	
  features	
  

The	
  sun	
  never	
  sets	
  on	
  the	
  Internet,	
  
your	
  applicaBon	
  needs	
  the	
  database	
  
to	
  always	
  serve	
  data.	
  
48	
  
Couchbase:	
  High	
  throughput	
  that	
  
scales	
  linearly	
  	
  	
  
High	
  throughput	
  with	
  1.4	
  
GB/sec	
  data	
  transfer	
  rate	
  
using	
  4	
  servers	
  

Linear	
  throughput	
  
scalability	
  

hhp://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps9670/white_paper_c11-­‐708169.pdf	
  

49	
  
Draw	
  Something	
  “Goes	
  Viral”	
  3	
  Weeks	
  
Azer	
  Launch	
  	
  
Draw	
  Something	
  by	
  OMGPOP	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  

Feb	
  2012	
  	
  	
  	
  

	
  

	
  
50	
  

	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  March	
  2012 	
  
As	
  Usage	
  Grew,	
  Game	
  Data	
  Went	
  Non-­‐
Draw	
  Something	
  by	
  OMGPOP	
   Linear	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  

Feb	
  2012	
  	
  	
  	
  

	
  

	
  
51	
  

	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  March	
  2012 	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  

PE

Grow	
  cluster	
  without	
  applicaBon	
  
changes,	
  without	
  downBme	
  
when	
  needed	
  

Consistent	
  High	
  
Performance	
  

RF O R M A N C E

Always	
  awesome	
  experience	
  	
  
for	
  your	
  applicaBon	
  users.	
  

Always	
  On	
  
24x7x365	
  

JSON
JSON JSO

JSON N
JSON

Flexible	
  
Data	
  Model	
  

Keep	
  developers	
  producBve	
  and	
  
allow	
  fast	
  and	
  easy	
  addiBon	
  of	
  	
  
new	
  features	
  

The	
  sun	
  never	
  sets	
  on	
  the	
  Internet,	
  
your	
  applicaBon	
  needs	
  the	
  database	
  
to	
  always	
  serve	
  data.	
  
52	
  
The	
  Sun	
  Never	
  Sets	
  on	
  the	
  Internet	
  

hhp://personal.bgsu.edu/~tede/020522_briBshempire1360.jpg	
  

53	
  
Always-­‐On	
  24x7x365:	
  Proof	
  Point	
  
Example	
  
Data	
  Store	
  Availability	
  
72	
  

57	
  
Couchbase	
  

82	
  

0	
  

20	
  

40	
  

60	
  

80	
  

54	
  

100	
  
Couchbase	
  Server	
  Is	
  The	
  Complete	
  
Solu6on	
  

✔	
  

Easy	
  
Scalability	
  

Consistent	
  High	
  
✔	
   Performance	
  

One	
  click	
  scalability	
  and	
  no	
  app	
  
changes.	
  

Sub	
  millisecond	
  latency	
  with	
  high	
  
throughput	
  for	
  reads	
  and	
  writes.	
  

Always	
  On	
  
✔	
   24x7x365	
  
Maintenance,	
  upgrades	
  and	
  
cluster	
  resizing	
  all	
  online	
  
without	
  applicaBon	
  downBme	
  

✔	
  

Flexible	
  
Data	
  Model	
  

JSON	
  document	
  model	
  with	
  no	
  fixed	
  
schema.	
  

55	
  
Couchbase	
  Server	
  vs.	
  MongoDB	
  
Easy	
  
Scalability	
  
	
  	
  	
  	
  	
  Consistent,	
  High	
  
Performance	
  
Flexible	
  
Data	
  Model	
  
Always	
  On	
  
24x7x365	
  

With	
  1-­‐click,	
  horizontally	
  
✔	
   grow	
  cluster,	
  even	
  scale	
  
across	
  datacenters	
  
	
  
Consistent	
  sub	
  millisecond	
  	
  
✔	
   reads/writes;	
   throughput	
  
Consistent	
  high	
  

✔	
  

Schemaless	
  data	
  
model	
  for	
  rapid	
  
development	
  

✔	
  

No	
  downBme	
  for	
  
so`ware	
  upgrades,	
  
hardware	
  
maintenance,	
  etc.	
  

56	
  

✖	
  

Complex	
  mulB-­‐step	
  scaling,	
  
no	
  write	
  scaling	
  across	
  data	
  
centers	
  

✖	
  

High	
  &	
  Inconsistent	
  latency;	
  
Lower	
  throughput	
  

✔	
  

Schemaless	
  data	
  
model	
  for	
  rapid	
  
development	
  

✖	
  ✔	
  

Difficult	
  online	
  
upgrade;	
  
Not	
  all	
  maintenance	
  
is	
  online	
  
Consistent	
  Lower	
  Latencies	
  and	
  Higher	
  
Throughput	
  
•  Couchbase	
  
­  High	
  read	
  and	
  write	
  throughput	
  and	
  consistent	
  low	
  latencies	
  
­  Write	
  performance	
  advantage	
  due	
  to	
  low	
  granularity	
  of	
  Couchbase	
  
memory	
  locking	
  mechanism	
  and	
  minimal	
  contenBon	
  
­  Read	
  operaBons	
  happen	
  concurrently	
  with,	
  and	
  independently	
  of	
  writes	
  

•  MongoDB	
  
­  Severely	
  limited	
  write	
  throughput	
  due	
  to	
  very	
  coarse	
  write	
  locks	
  that	
  limit	
  
concurrency	
  at	
  the	
  node	
  level	
  	
  
­  Inconsistent	
  latencies	
  and	
  throughput	
  as	
  all	
  reads	
  need	
  to	
  wait	
  for	
  a	
  write	
  
to	
  finish.	
  	
  

•  Cost	
  Considera6ons

	
  	
  
57	
  
Couchbase	
  Server	
  vs.	
  Cassandra	
  
Easy	
  
Scalability	
  

✔	
  

With	
  1-­‐click,	
  horizontally	
  
grow	
  cluster,	
  even	
  scale	
  
across	
  datacenters	
  

Consistent,	
  High	
  
✔	
  
Performance	
  

Consistent	
  sub-­‐millisecond	
  	
  
reads/writes	
  and	
  high	
  
throughput	
  

Flexible	
  
Data	
  Model	
  

✔	
  

Schemaless	
  data	
  
model	
  for	
  rapid	
  
development	
  

✔	
  

No	
  downBme	
  for	
  
so`ware	
  upgrades,	
  
hardware	
  maintenance,	
  
etc.	
  

Always	
  On	
  
24x7x365	
  

58	
  

✖	
  

Complex	
  mulB-­‐step	
  
scaling,	
  coarse	
  grain	
  
growth	
  recommended	
  

✖	
  

High	
  and	
  inconsistent	
  
latency;	
  medium	
  
throughput	
  

✖	
  

Very	
  complex	
  
columnar	
  data	
  
model	
  

✔	
  

Online	
  upgrades	
  and	
  
online	
  maintenance	
  
Next	
  steps	
  

59	
  
Enterprise	
  vs.	
  Community	
  Edi6on	
  
Enterprise	
  Edi6on	
  

Cost	
  

Community	
  Edi6on	
  

•  Free	
  for	
  pre-­‐producBon	
  
•  StarBng	
  at	
  $2,499/node/yr	
  

•  Free	
  

Produc6on	
  
Readiness	
  

ProducBon	
  Ready	
  

Unknown	
  ProducBon	
  Readiness	
  

Technical	
  
Support	
  

Professional	
  Support	
  

Community/Forum	
  Support	
  

Best	
  Prac6ce	
  
Exper6se	
  	
  

Broad	
  Best	
  PracBce	
  ExperBse	
  

ExperBse	
  of	
  community	
  members	
  

Release	
  
Support	
  

Long-­‐Tail	
  Release	
  Support	
  

No	
  Support	
  for	
  Old	
  Releases	
  

License	
  Type	
  

Commercial	
  License	
  

Simple	
  “As	
  is”	
  license	
  

Intended	
  Use	
  

ProducBon	
  Deployments	
  

Non-­‐ProducBon	
  Use,	
  Simple	
  Use	
  Cases	
  

•  Take	
  open	
  source	
  snapshots	
  
•  Put	
  through	
  rigorous	
  QA	
  process,	
  fix	
  bugs	
  
•  Defined	
  SLAs	
  from	
  the	
  experts	
  
•  Immediate	
  hot	
  bug	
  fixes	
  

•  Built	
  with	
  latest	
  open	
  source	
  
•  Undefined	
  quality	
  

•  No	
  SLA,	
  unknown	
  response	
  Bmes	
  
•  No	
  bugs	
  fixes	
  assured	
  in	
  a	
  Bmely	
  manner	
  

•  From	
  working	
  with	
  100s	
  of	
  customers	
  
•  Including	
  hot	
  bug	
  fixes	
  

•  Based	
  on	
  limited	
  individual	
  experBse	
  
•  Must	
  support	
  old	
  releases	
  yourself	
  

•  Std	
  license	
  terms,	
  SLA,	
  indemnity	
  

60	
  
Next	
  Steps:	
  The	
  Path	
  to	
  Produc6on	
  
ü 	
  	
  	
  	
  	
  Couchbase	
  Overview	
  –	
  Done	
  
2.  Technical	
  session	
  	
  
•  Who:	
  Architects/Developers	
  and	
  Couchbase	
  
SoluBons	
  Architect	
  
•  Deployment	
  and	
  development	
  best	
  pracBces	
  
•  OperaBons	
  deep-­‐dive	
  
•  Tech	
  Q&A	
  

3.  Design	
  review	
  
•  Review	
  and	
  feedback	
  on	
  design	
  and	
  feature	
  usage	
  
•  Verify	
  assumpBons	
  and	
  use	
  of	
  Couchbase	
  APIs	
  

4.  Produc6on	
  deployment	
  
61	
  
Thank	
  you	
  
	
  
Couchbase	
  	
  

NoSQL	
  Document	
  Database	
  

62	
  
Backup	
  Slides	
  

63	
  
Couchbase	
  Server	
  Features	
  
•  Graphical	
  monitoring	
  and	
  admin	
  console	
  with	
  RESTful	
  interface	
  
­  Single	
  click	
  cluster	
  resizing,	
  powerful	
  monitoring	
  accessible	
  via	
  every	
  node	
  

•  Online	
  upgrades,	
  backups	
  and	
  database	
  maintenance	
  
­  Database	
  is	
  always	
  online,	
  applicaBons	
  can	
  be	
  available	
  24x7x365	
  

•  All	
  nodes	
  are	
  iden6cal	
  
­  Easy	
  provisioning	
  on	
  all	
  supported	
  plaxorms:	
  Linux,	
  Windows,	
  MacOS	
  

•  Supported	
  SDKs	
  for	
  all	
  common	
  languages	
  
­  Easy	
  adopBon	
  by	
  developers	
  for	
  Java,	
  .NET,	
  PHP,	
  Ruby,	
  C/C++	
  

64	
  
Couchbase	
  performance	
  with	
  varying	
  
document	
  sizes	
  
Consistently	
  low	
  latencies	
  
sub-­‐millisecond	
  for	
  
varying	
  documents	
  sizes	
  
with	
  a	
  mixed	
  workload	
  

65	
  
Enterprise	
  Edi6on	
  Subscrip6ons	
  
Standard	
  

Premium	
  

$2499	
  

$4499	
  

Per	
  node	
  

Per	
  node	
  

10	
  X	
  5	
  

24	
  X	
  7	
  

7am	
  –	
  5pm	
  Pacific	
  Standard	
  Time	
  

N/A	
  

Phone,	
  Email,	
  Web,	
  Forums	
  
	
  

Phone,	
  Email,	
  Web,	
  Forums	
  

P1	
  Response	
  Time	
  

5	
  hours	
  

2	
  hours	
  

P2	
  Response	
  Time	
  

1	
  day	
  

5	
  hours	
  

Update	
  releases	
  

Yes	
  

Yes	
  

Ho{ixes	
  

Yes	
  

Yes	
  

Technical	
  Alerts	
  

Yes	
  

Yes	
  

Price/node	
  
Licensing	
  
Support	
  Hours	
  
Hours	
  of	
  
Opera6on	
  
Support	
  Channel	
  

	
  
	
  
	
  
	
  

hhp://www.couchbase.com/couchbase-­‐support-­‐and-­‐subscripBons	
  
66	
  
Replace	
  a	
  Memcached	
  Tier	
  	
  
with	
  Couchbase	
  Server	
  	
  

67	
  
Challenges	
  with	
  a	
  Memcached	
  Tier	
  
Problem	
  
Cold	
  Cache	
  

Heavy	
  RDBMS	
  
Conten6on	
  

Lack	
  of	
  Scalability	
  

Complex	
  
Monitoring	
  

Symptoms	
  

Couchbase	
  Solu6on	
  

Slowdown	
  or	
  collapse	
  of	
  the	
  data	
  
service	
  layer	
  due	
  to	
  heavily	
  
overloaded	
  RDBMS	
  when	
  
memcached	
  nodes	
  go	
  down	
  (on	
  
failure	
  or	
  for	
  maintenance)	
  

Data	
  is	
  automaBcally	
  replicated	
  across	
  
the	
  Couchbase	
  cluster,	
  providing	
  high	
  
availability	
  of	
  data	
  even	
  on	
  failures	
  

MulBple	
  requests	
  for	
  data	
  items	
  that	
  
do	
  not	
  exist	
  in	
  the	
  cache	
  results	
  in	
  
sudden	
  shi`ing	
  of	
  load	
  to	
  the	
  
relaBonal	
  database	
  causing	
  heavy	
  
contenBon	
  

By	
  replicaBng	
  data	
  across	
  the	
  cluster,	
  
Couchbase	
  Server	
  provides	
  consistent	
  
performance	
  without	
  shi`ing	
  load	
  to	
  
the	
  RDBMS	
  layer	
  

Adding	
  or	
  removing	
  memcached	
  
nodes	
  is	
  complicated	
  and	
  causes	
  
unpredictable	
  applicaBon	
  
performance	
  degradaBon	
  

Auto-­‐sharding	
  and	
  online	
  rebalancing	
  
in	
  Couchbase	
  Server	
  provides	
  easy	
  non-­‐
disrupBve	
  expansion	
  of	
  the	
  cluster	
  

Management	
  of	
  individual	
  
Couchbase	
  Server	
  provides	
  an	
  in-­‐built	
  
memcached	
  nodes	
  increases	
  the	
  
admin	
  console	
  for	
  cluster	
  wide	
  
complexity	
  of	
  operaBons	
  and	
  lacks	
  a	
   management	
  and	
  monitoring	
  as	
  well	
  as	
  
single	
  consistent	
  view	
  of	
  the	
  caching	
   RESTful	
  APIs	
  for	
  easy	
  automaBon	
  and	
  
layer	
  
third-­‐party	
  integraBon	
  

68	
  
Before	
  and	
  Azer:	
  	
  
Replacing	
  Caching	
  Tier	
  with	
  Couchbase	
  
Server	
  

69	
  
Memcached	
  Tier	
  Replacement:	
  How	
  it	
  
Works	
  
•  Fully	
  memcached	
  protocol	
  compa6ble	
  
•  Easy	
  to	
  replace	
  a	
  6er	
  of	
  individual	
  memcached	
  servers	
  with	
  a	
  
Couchbase	
  Server	
  cluster	
  	
  
•  The	
  cluster	
  receives	
  reads	
  and	
  writes,	
  keeps	
  frequently	
  accessed	
  
items	
  in	
  memory,	
  persists	
  and	
  shards	
  and	
  replicates	
  the	
  data	
  
amongst	
  the	
  cluster	
  
•  Reads	
  and	
  writes	
  are	
  s6ll	
  as	
  low	
  latency	
  and	
  high	
  throughput	
  as	
  
memcached	
  	
  
•  User	
  gets	
  all	
  the	
  scalability	
  and	
  high-­‐availability	
  advantages	
  of	
  a	
  
Couchbase	
  Server	
  cluster	
  	
  
70	
  
Draw	
  Something	
  
Success	
  Story	
  
sales@couchbase.com	
  	
  

71	
  
How	
  to	
  Prepare	
  Your	
  Social	
  Game	
  for	
  Massive	
  Growth	
  
Published	
  February	
  2,	
  2012	
  

Five	
  days	
  later…	
  
hhp://mashable.com/2012/02/01/social-­‐game-­‐prepare-­‐growth/	
  

72	
  
Draw	
  Something	
  by	
  OMGPOP	
  

73	
  
Draw	
  Something	
  “Goes	
  Viral”	
  3	
  Weeks	
  
Azer	
  Launch	
  	
  
Draw	
  Something	
  by	
  OMGPOP	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  

74	
  
As	
  Usage	
  Grew,	
  Game	
  Data	
  Went	
  Non-­‐
Draw	
  Something	
  by	
  OMGPOP	
   Linear	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  

75	
  
In	
  Contrast…	
  

The	
  Simpson’s:	
  Tapped	
  Out	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  

76	
  

Weitere ähnliche Inhalte

Was ist angesagt?

Sizing Your MongoDB Cluster
Sizing Your MongoDB ClusterSizing Your MongoDB Cluster
Sizing Your MongoDB ClusterMongoDB
 
Big Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsBig Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsAndrew Brust
 
Benefits of Using MongoDB Over RDBMSs
Benefits of Using MongoDB Over RDBMSsBenefits of Using MongoDB Over RDBMSs
Benefits of Using MongoDB Over RDBMSsMongoDB
 
NoSQL databases and managing big data
NoSQL databases and managing big dataNoSQL databases and managing big data
NoSQL databases and managing big dataSteven Francia
 
Blazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkBlazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkMongoDB
 
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...GoQA
 
Webinar: Migrating from RDBMS to MongoDB
Webinar: Migrating from RDBMS to MongoDBWebinar: Migrating from RDBMS to MongoDB
Webinar: Migrating from RDBMS to MongoDBMongoDB
 
Advanced Schema Design Patterns
Advanced Schema Design PatternsAdvanced Schema Design Patterns
Advanced Schema Design PatternsMongoDB
 
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy Nguyen
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy NguyenGrokking Engineering - Data Analytics Infrastructure at Viki - Huy Nguyen
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy NguyenHuy Nguyen
 
Webinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with TableauWebinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with TableauMongoDB
 
Microsoft's Big Play for Big Data
Microsoft's Big Play for Big DataMicrosoft's Big Play for Big Data
Microsoft's Big Play for Big DataAndrew Brust
 
Relational and non relational database 7
Relational and non relational database 7Relational and non relational database 7
Relational and non relational database 7abdulrahmanhelan
 
Big Data and NoSQL in Microsoft-Land
Big Data and NoSQL in Microsoft-LandBig Data and NoSQL in Microsoft-Land
Big Data and NoSQL in Microsoft-LandAndrew Brust
 
SharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCSharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCguest7c2e070
 
Apache Spark and MongoDB - Turning Analytics into Real-Time Action
Apache Spark and MongoDB - Turning Analytics into Real-Time ActionApache Spark and MongoDB - Turning Analytics into Real-Time Action
Apache Spark and MongoDB - Turning Analytics into Real-Time ActionJoão Gabriel Lima
 
CData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaCData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaJerod Johnson
 
Webinar: Live Data Visualisation with Tableau and MongoDB
Webinar: Live Data Visualisation with Tableau and MongoDBWebinar: Live Data Visualisation with Tableau and MongoDB
Webinar: Live Data Visualisation with Tableau and MongoDBMongoDB
 
Big Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsBig Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsAndrew Brust
 

Was ist angesagt? (20)

Sizing Your MongoDB Cluster
Sizing Your MongoDB ClusterSizing Your MongoDB Cluster
Sizing Your MongoDB Cluster
 
Big Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsBig Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI Pros
 
Benefits of Using MongoDB Over RDBMSs
Benefits of Using MongoDB Over RDBMSsBenefits of Using MongoDB Over RDBMSs
Benefits of Using MongoDB Over RDBMSs
 
NoSQL databases and managing big data
NoSQL databases and managing big dataNoSQL databases and managing big data
NoSQL databases and managing big data
 
Blazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkBlazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & Spark
 
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
 
Webinar: Migrating from RDBMS to MongoDB
Webinar: Migrating from RDBMS to MongoDBWebinar: Migrating from RDBMS to MongoDB
Webinar: Migrating from RDBMS to MongoDB
 
Advanced Schema Design Patterns
Advanced Schema Design PatternsAdvanced Schema Design Patterns
Advanced Schema Design Patterns
 
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy Nguyen
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy NguyenGrokking Engineering - Data Analytics Infrastructure at Viki - Huy Nguyen
Grokking Engineering - Data Analytics Infrastructure at Viki - Huy Nguyen
 
Spark and MongoDB
Spark and MongoDBSpark and MongoDB
Spark and MongoDB
 
Webinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with TableauWebinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
 
Microsoft's Big Play for Big Data
Microsoft's Big Play for Big DataMicrosoft's Big Play for Big Data
Microsoft's Big Play for Big Data
 
Relational and non relational database 7
Relational and non relational database 7Relational and non relational database 7
Relational and non relational database 7
 
Big Data and NoSQL in Microsoft-Land
Big Data and NoSQL in Microsoft-LandBig Data and NoSQL in Microsoft-Land
Big Data and NoSQL in Microsoft-Land
 
SharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPCSharePoint and Large Scale SQL Deployments - NZSPC
SharePoint and Large Scale SQL Deployments - NZSPC
 
Apache Spark and MongoDB - Turning Analytics into Real-Time Action
Apache Spark and MongoDB - Turning Analytics into Real-Time ActionApache Spark and MongoDB - Turning Analytics into Real-Time Action
Apache Spark and MongoDB - Turning Analytics into Real-Time Action
 
CData Data Today: A Developer's Dilemma
CData Data Today: A Developer's DilemmaCData Data Today: A Developer's Dilemma
CData Data Today: A Developer's Dilemma
 
Hands On: Javascript SDK
Hands On: Javascript SDKHands On: Javascript SDK
Hands On: Javascript SDK
 
Webinar: Live Data Visualisation with Tableau and MongoDB
Webinar: Live Data Visualisation with Tableau and MongoDBWebinar: Live Data Visualisation with Tableau and MongoDB
Webinar: Live Data Visualisation with Tableau and MongoDB
 
Big Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI ProsBig Data and NoSQL for Database and BI Pros
Big Data and NoSQL for Database and BI Pros
 

Ähnlich wie Couchbase Overview Nov 2013

Couchbase overview033113long
Couchbase overview033113longCouchbase overview033113long
Couchbase overview033113longJeff Harris
 
Couchbase overview033113long
Couchbase overview033113longCouchbase overview033113long
Couchbase overview033113longJeff Harris
 
Characteristics of no sql databases
Characteristics of no sql databasesCharacteristics of no sql databases
Characteristics of no sql databasesDipti Borkar
 
Tableau & MongoDB: Visual Analytics at the Speed of Thought
Tableau & MongoDB: Visual Analytics at the Speed of ThoughtTableau & MongoDB: Visual Analytics at the Speed of Thought
Tableau & MongoDB: Visual Analytics at the Speed of ThoughtMongoDB
 
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012exponential-inc
 
Couchbase Mobile on Android
Couchbase Mobile on AndroidCouchbase Mobile on Android
Couchbase Mobile on AndroidPhilipp Fehre
 
SQL To NoSQL - Top 6 Questions Before Making The Move
SQL To NoSQL - Top 6 Questions Before Making The MoveSQL To NoSQL - Top 6 Questions Before Making The Move
SQL To NoSQL - Top 6 Questions Before Making The MoveIBM Cloud Data Services
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsMike Broberg
 
An Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBAn Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBMongoDB
 
Add Redis to Postgres to Make Your Microservices Go Boom!
Add Redis to Postgres to Make Your Microservices Go Boom!Add Redis to Postgres to Make Your Microservices Go Boom!
Add Redis to Postgres to Make Your Microservices Go Boom!Dave Nielsen
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBMongoDB
 
Drilling into Data with Apache Drill
Drilling into Data with Apache DrillDrilling into Data with Apache Drill
Drilling into Data with Apache DrillDataWorks Summit
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneMongoDB
 
Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...Tech Triveni
 
Building Operational Data Lake using Spark and SequoiaDB with Yang Peng
Building Operational Data Lake using Spark and SequoiaDB with Yang PengBuilding Operational Data Lake using Spark and SequoiaDB with Yang Peng
Building Operational Data Lake using Spark and SequoiaDB with Yang PengDatabricks
 
From SQL to NoSQL: Structured Querying for JSON
From SQL to NoSQL: Structured Querying for JSONFrom SQL to NoSQL: Structured Querying for JSON
From SQL to NoSQL: Structured Querying for JSONKeshav Murthy
 
Embracing Database Diversity with Kafka and Debezium
Embracing Database Diversity with Kafka and DebeziumEmbracing Database Diversity with Kafka and Debezium
Embracing Database Diversity with Kafka and DebeziumFrank Lyaruu
 
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldNoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldAjay Gupte
 
Webinar: General Technical Overview of MongoDB for Ops Teams
Webinar: General Technical Overview of MongoDB for Ops TeamsWebinar: General Technical Overview of MongoDB for Ops Teams
Webinar: General Technical Overview of MongoDB for Ops TeamsMongoDB
 
PgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOpsPgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOpsEDB
 

Ähnlich wie Couchbase Overview Nov 2013 (20)

Couchbase overview033113long
Couchbase overview033113longCouchbase overview033113long
Couchbase overview033113long
 
Couchbase overview033113long
Couchbase overview033113longCouchbase overview033113long
Couchbase overview033113long
 
Characteristics of no sql databases
Characteristics of no sql databasesCharacteristics of no sql databases
Characteristics of no sql databases
 
Tableau & MongoDB: Visual Analytics at the Speed of Thought
Tableau & MongoDB: Visual Analytics at the Speed of ThoughtTableau & MongoDB: Visual Analytics at the Speed of Thought
Tableau & MongoDB: Visual Analytics at the Speed of Thought
 
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
Navigating the Transition from relational to NoSQL - CloudCon Expo 2012
 
Couchbase Mobile on Android
Couchbase Mobile on AndroidCouchbase Mobile on Android
Couchbase Mobile on Android
 
SQL To NoSQL - Top 6 Questions Before Making The Move
SQL To NoSQL - Top 6 Questions Before Making The MoveSQL To NoSQL - Top 6 Questions Before Making The Move
SQL To NoSQL - Top 6 Questions Before Making The Move
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 Questions
 
An Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBAn Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDB
 
Add Redis to Postgres to Make Your Microservices Go Boom!
Add Redis to Postgres to Make Your Microservices Go Boom!Add Redis to Postgres to Make Your Microservices Go Boom!
Add Redis to Postgres to Make Your Microservices Go Boom!
 
Webinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDBWebinar: How to Drive Business Value in Financial Services with MongoDB
Webinar: How to Drive Business Value in Financial Services with MongoDB
 
Drilling into Data with Apache Drill
Drilling into Data with Apache DrillDrilling into Data with Apache Drill
Drilling into Data with Apache Drill
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazione
 
Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...
 
Building Operational Data Lake using Spark and SequoiaDB with Yang Peng
Building Operational Data Lake using Spark and SequoiaDB with Yang PengBuilding Operational Data Lake using Spark and SequoiaDB with Yang Peng
Building Operational Data Lake using Spark and SequoiaDB with Yang Peng
 
From SQL to NoSQL: Structured Querying for JSON
From SQL to NoSQL: Structured Querying for JSONFrom SQL to NoSQL: Structured Querying for JSON
From SQL to NoSQL: Structured Querying for JSON
 
Embracing Database Diversity with Kafka and Debezium
Embracing Database Diversity with Kafka and DebeziumEmbracing Database Diversity with Kafka and Debezium
Embracing Database Diversity with Kafka and Debezium
 
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldNoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
 
Webinar: General Technical Overview of MongoDB for Ops Teams
Webinar: General Technical Overview of MongoDB for Ops TeamsWebinar: General Technical Overview of MongoDB for Ops Teams
Webinar: General Technical Overview of MongoDB for Ops Teams
 
PgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOpsPgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOps
 

Kürzlich hochgeladen

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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
 
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 Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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
 
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
 

Kürzlich hochgeladen (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
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 Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
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
 

Couchbase Overview Nov 2013

  • 1. Data  Management  for     Interac6ve  Applica6ons   NoSQL  Document  Database   Jeff  Harris     Business  Development   1  
  • 2. Agenda   •  Company  Overview     •  Kinds  of  Database  Management  System   •  Common  Use  cases,  When  is  NoSQL  a  good  fit?   •  NoSQL  for  Mobile  Devices,  JSON  Anywhere     •  Rela6onal  vs  Non-­‐Rela6onal/NoSQL   •  Live  Demo       •  Couchbase  Technical  Overview  (under  the  hood  and   features)       2  
  • 3. Couchbase  NoSQL  Leadership   Leading  NoSQL  database  company   Open  Source  development  &  business  model   Document-­‐oriented  NoSQL  database   Focused  on  interacBve  internet  and  mobile  applicaBons   Provide  more  flexible,  higher  performance,     more  scalable  database  than  rela6onal  alterna6ve   Most  mature,  reliable  and  widely  deployed  solu6on   >7,500  paid  producBon  deployments  worldwide   Headquarters  in  Silicon  Valley  (Mountain  View,  CA)   ~120  employees  including  >70  in  engineering/product   >80%  of  commits  to  Couchbase,  memcached,  Apache  CouchDB   3  
  • 4. Market  Adop6on  –  Customers   Internet  Companies   Enterprises   More  than  350  customers  –  7,500  produc6on  deployments  worldwide   4  
  • 5. Market  Adop6on   Internet  Companies   •  •  •  •  •  •  •  •  Enterprises   • CommunicaBons   • Retail   • Financial  Services   • Health  Care   • AutomoBve/Airline   • Agriculture   • Consumer  Electronics   • Business  Systems   Social  Gaming   Ad  Networks   Social  Networks   Online  Business   Services   E-­‐Commerce   Online  Media   Content  Management   Cloud  Services   5  
  • 6. Two  kinds  of  Database  Management   System   OLTP  /  OLTP  like     Opera6onal  Stores   Data  warehouse  or   Analy6cs  system   6  
  • 7. Adding  a  few  more  components   InteracBve     OLTP  /  OLTP  like     Opera6onal  Stores   ETL   Streaming   Data   RDBMS   Other  legacy   systems     BI  &   ReporBng       Analy6cs         Data   warehouse   7   RDBMS   Column   stores  
  • 8. NoSQL  +  Big  Data   Opera6onal  database  for   web  and  mobile  apps  with   high  performance  at  scale   Map-­‐reduce  against   huge  datasets  to   analyze  and  find  insights   and  answers   8  
  • 9. Common  Use  Cases   Social  Gaming   Ad  Targe6ng     •  Couchbase  stores   player  and  game   data     •  Examples   customers  include:   Zynga   •  Tapjoy,  Ubiso`,   Tencent   •  Couchbase  stores   user  informaBon  for   fast  access   •  Examples  customers   include:  AOL,   Mediamind,   Convertro       Mobile  Apps       •  Couchbase  stores  user   info  and  app  content   •  Examples  customers   include:  Kobo,  PlayBka       Session  store       •  Couchbase  Server  as  a  key-­‐ value  store   •  Examples  customers  include:   Concur,  Sabre       User  Profile  Store     •  Couchbase  Server  as  a   key-­‐value  store   •  Examples  customers   include:  Tunewiki   High  availability  cache         Content  &  Metadata   Store   •  Couchbase  document  store   with  ElasBc  Search   •  Examples  customers   include:  McGraw  Hill     3rd  party  data    aggrega6on         •  Couchbase  stores  social  media  and   data  feeds   •  Couchbase  Server  used  as  a  cache  Ber  replacement   •  Examples  customers  include:   LivePerson   •  Examples  customers  include:  Orbitz   9  
  • 10. Couchbase  Lite   The  only   Na6ve  NoSQL   Database  for   Mobile   10  
  • 11. The  Complete  Mobile  Solu6on   11  
  • 12. JSON  Anywhere     JS      N   Couchbase  Server   Sync Gateway Lite Server JS      N   JS      N   •  JSON  on  the  device  •  JSON  on  the  wire   ­  Developers   increasingly  prefer   NoSQL  database   ­  No  need  for  data   transformaBon   12   •  JSON  in  the  cloud   ­  Flexible  data  model   ­  High  performance   ­  Easy  scalability  
  • 13. Rela6onal  Vs  NoSQL  Document   databases   13  
  • 14. Rela6onal  Technology  Scales  Up   Applica6on  Scales  Out   Just  add  more  commodity  web  servers   System  Cost   ApplicaBon  Performance     Web/App  Server  Tier   Users   RDBMS  Scales  Up   Get  a  bigger,  more  complex  server   System  Cost   ApplicaBon  Performance     Won’t   scale   beyond   this  point   Rela6onal  Database   Users   Expensive  and  disrup6ve  sharding,  doesn’t  perform  at  web  scale   14  
  • 15. Couchbase  Server  Scales  Out  Like  App   Tier   Applica6on  Scales  Out   Just  add  more  commodity  web  servers   System  Cost   ApplicaBon  Performance     Web/App  Server  Tier   Users   NoSQL  Database  Scales  Out   Cost  and  performance  mirrors  app  6er   System  Cost   ApplicaBon  Performance     Couchbase  Distributed  Data  Store   Users   Scaling  out  flabens  the  cost  and  performance  curves   15  
  • 16. If  Cars  Were  Stored  in  an  RDBMS…   hhp://iedei.files.wordpress.com/2012/04/mercedes-­‐f1-­‐car-­‐disassembled.jpeg   16  
  • 17. If  Cars  Were  Stored  in  a  Document   Database…   hhp://images.conceptcarz.com/imgxra/Mercedes-­‐Benz/Mercedes-­‐W03-­‐F1-­‐Spanish-­‐GP_012-­‐1680.jpg   17  
  • 18. Rela6onal  vs  Document  Data  Model   C1   C2   C3   C4   {         }   JSON   JSON   JSON   Rela6onal  data  model   Document  data  model   Highly-­‐structured  table  organizaBon   with  rigidly-­‐defined  data  formats  and   record  structure.   CollecBon  of  complex  documents  with   arbitrary,  nested  data  formats  and   varying  “record”  format.   18  
  • 19. RDBMS  Example:  User  Profile   User  Info   Address  Info   KEY   First   Last   ZIP_id   ZIP_id   CITY   STATE   ZIP   1   Frank   Weigel   2   1   DEN   CO   30303   2   Ali   Dodson   2   2   MV   CA   94040   3   Mark   Azad   2   3   CHI   IL   60609   4   Steve   Yen   3   4   NY   NY   10010   To  get  info  about  specific  user,  you  perform  a  join  across  two  tables     19  
  • 20. Document  Example:  User  Profile    {          “ID”:  1,          “FIRST”:  “Frank”,          “LAST”:  “Weigel”,          “ZIP”:  “94040”,          “CITY”:  “MV”,          “STATE”:  “CA”      }   +   =   JSON   All  data  in  a  single  document   20  
  • 21. Making  the  Same  Change  With  a   Document  DB    {          “ID”:  1,          “FIRST”:  “Frank”,          “LAST”:  “Weigel”,          “ZIP”:  “94040”,          “CITY”:  “MV”,          “STATE”:  “CA”,          “STATUS”:                {    “TEXT”:  “At  Conf”     }   ,    }              “GEO_LOC”:  “134”  },     “COUNTRY”:  ”USA”   }         JSON   Just  add  informa6on  to  a  document  
  • 22. Rela6onal  vs  Document  Performance   User  Table   Photo  Table   User   ID   First   Last   Zip   1   Frank   Wiegel   Weigel   94040   2   Joe   Smith   94040   3   Ali   Dodson   94040   4   Sarah   Gorin   Bob   Young   30303   6   Nancy   Baker   10010   7   Ray   Jones   31311   8   Lee   Chen   V5V3   Photo   ID   Comment   2   d043   NYC   2   b054   Bday   5   c036   Miami   7   d072   Sunset   5002   e086   Spain   NW1   5   User     ID   Status  Table               Status     ID   Text   1   a42   At  conf   4   5   b26   c032   excited   5   4   c32   b26   hockey   12   •  •  •  User     ID   d83   Go  A’s   5000   e34   sailing   Affilia6ons  Table   5000   Doug   Moore   04252   5001   Mary   White   41694   User     ID   Affilia6ons   Affilia6ons   ID   Name   Lisa   Lisa   Clark   12425   a42   Cal   4   b96   USC   7   5002   5002   2   c14   UW   8   e22   {   {   {   {         {       {                     }   }         }   JSON   JSON     }   }   JSON   JSON   }   JSON   JSON   Oxford   Faster  response  6mes  and  higher  throughput  
  • 23. NoSQL  Database  Considera6ons   Easy   Scalability   PE RF O R M A N C E Grow  cluster  without  applicaBon   changes,  without  downBme   when  needed   Consistent  High   Performance   Always  awesome  experience     for  your  applicaBon  users.   Always  On   24x7x365   JSON JSON JSO JSON N JSON Flexible   Data  Model   Keep  developers  producBve  and   allow  fast  and  easy  addiBon  of     new  features   The  sun  never  sets  on  the  Internet,   your  applicaBon  needs  the  database   to  always  serve  data.   23  
  • 24. Couchbase  Server  Is  The  Complete   Solu6on   ✔   Easy   Scalability   Consistent  High   ✔   Performance   One  click  scalability  and  no  app   changes.   Sub  millisecond  latency  with  high   throughput  for  reads  and  writes.   Always  On   ✔   24x7x365   Maintenance,  upgrades  and   cluster  resizing  all  online   without  applicaBon  downBme   ✔   Flexible   Data  Model   JSON  document  model  with  no  fixed   schema.   24  
  • 25. Couchbase  Server  Overview     Clustered  NoSQL  Document  Database  for     interacBve  applicaBons     •  Easy  scalability  with  efficient  auto-­‐sharding   ­  ApplicaBon  stays  unchanged  as  cluster  size  changes   ­  Data  replicaBon  and  node  auto-­‐failover   •  Consistent  high  performance   ­  Sub  millisecond  latency  with  high  throughput   •  Always-­‐On   ­  Maintenance,  upgrades  and  cluster  resizing  all  online   without  applicaBon  downBme   25  
  • 26. Couchbase  Server  Features   •  Easy  scalability   •  Built-­‐in  clustering     •  All  nodes  equal   •  One  click  to  scale  horizontally     •  Consistent  High  Performance   •  Built-­‐in  managed  cache   •  High  performance  for  both  reads  and  writes     •  Always  on   •  •  •  •  Data  replication  with  auto-­‐failover   Cross  Datacenter  Replication   Zero-­‐downtime  maintenance   Monitoring  and  administration  APIs  and  GUI   26  
  • 27. New  Couchbase  Server  Features   •  Flexible  JSON  document  model   ­  No  fixed  schema  for  higher  producBvity  and  less  obstacles  for  developers   •  Data  indexing  and  querying   ­  Secondary  indexes  on  JSON  documents   ­  Simple  real-­‐Bme  analyBcs  via  incremental  map-­‐reduce   ­  Connector  to  full-­‐text  search  indexer   •  Cross  datacenter  replica6on   ­  Scale  your  data  beyond  a  single  data  center   27  
  • 28. Couchbase  solu6on   “The  basics”   28  
  • 29. Single  node  -­‐  Couchbase  Write   Opera6on   App  Server   Doc  1   3   2   Managed  Cache   ReplicaBon   Queue   Doc  1   Disk  Queue   To  other  node   3   Disk   Couchbase  Server  Node   29  
  • 30. Single  node  -­‐  Couchbase  Update   Opera6on   App  Server   Doc  1’   3   2   Managed  Cache   ReplicaBon   Queue   Doc  1   Doc  1’   Disk  Queue   To  other  node   3   Disk   Doc  1   Couchbase  Server  Node   30  
  • 31. App  Server   GET   Doc  1   Single  node  -­‐  Couchbase  Read   Opera6on   3   2   Managed  Cache   ReplicaBon   Queue   Doc  1   Disk  Queue   To  other  node   3   Disk   Doc  1   Couchbase  Server  Node   31  
  • 32. Basic  Opera6on   APP  SERVER  1   APP  SERVER  2   COUCHBASE  Client  Library     CLUSTER  MAP     COUCHBASE  Client  Library     CLUSTER  MAP     READ/WRITE/UPDATE   SERVER  1       ACTIVE   SERVER  2       ACTIVE   •  Docs  distributed  evenly  across   servers     SERVER  3       ACTIVE   •  Each  server  stores  both  ac6ve  and   replica  docs   Doc  5   Doc   Doc  4   Doc   Doc  1   Doc   Doc  2   Doc   Doc  7   Doc   Doc  3   Doc   ­  Only  one  server  acBve  at  a  Bme   Doc  9   Doc   Doc  8   Doc   Doc  6   Doc   •  Client  library  provides  app  with   simple  interface  to  database   REPLICA   REPLICA   REPLICA   •  Cluster  map  provides  map     to  which  server  doc  is  on   Doc  4   Doc   Doc  6   Doc   Doc  7   Doc   Doc  1   Doc   Doc  3   Doc   Doc  9   Doc   •  App  reads,  writes,  updates  docs   Doc  8   Doc   Doc  2   Doc   Doc  5   Doc   •  Mul6ple  app  servers  can  access  same   document  at  same  6me   ­  App  never  needs  to  know   COUCHBASE  SERVER    CLUSTER   User  Configured  Replica  Count  =  1   32  
  • 33. Add  Nodes  to  Cluster   APP  SERVER  1   APP  SERVER  2   COUCHBASE  Client  Library     CLUSTER  MAP     COUCHBASE  Client  Library     CLUSTER  MAP     READ/WRITE/UPDATE   SERVER  1       ACTIVE   SERVER  2       ACTIVE   READ/WRITE/UPDATE   SERVER  3       ACTIVE   Doc  5   Doc   Doc  4   Doc   Doc  1   Doc   Doc  7   Doc   Doc  3   Doc   Doc  9   Doc   Doc  8   Doc   Doc  6   SERVER  5       ACTIVE   Doc   Doc  2   SERVER  4       ACTIVE   Doc   REPLICA   REPLICA   REPLICA   Doc  4   Doc   Doc  6   Doc   Doc  7   Doc   Doc  3   Doc   Doc  9   Doc   Doc  2   Doc   Doc  5   ­  Even  distribuBon  of  docs   ­  Minimum  doc  movement   •  Cluster  map  updated   REPLICA   Doc   Doc  8   •  Docs  automa6cally   rebalance  across  cluster   Doc   Doc  1   Doc   COUCHBASE  SERVER    CLUSTER   User  Configured  Replica  Count  =  1   •  Two  servers  added  with   one-­‐click  opera6on   33   REPLICA   •  App  database     calls  now  distributed     over  larger  number  of   servers    
  • 34. Fail  Over  Node   APP  SERVER  1   APP  SERVER  2   COUCHBASE  Client  Library     CLUSTER  MAP     COUCHBASE  Client  Library     CLUSTER  MAP     SERVER  1       ACTIVE   SERVER  2       ACTIVE   SERVER  3       ACTIVE   SERVER  4       ACTIVE   Doc  5   Doc   Doc  4   Doc   Doc  1   Doc   Doc  9   Doc   Doc  2   Doc   Doc  7   Doc   Doc  3   Doc   Doc  8   SERVER  5       ACTIVE   Doc   Doc  1   Doc  6   Doc   Doc   Doc  3   REPLICA   REPLICA   REPLICA   REPLICA   Doc  4   Doc   Doc  6   Doc   Doc  7   Doc   Doc  5   Doc  1   Doc   Doc  3   Doc   Doc  9   Doc   Doc   Doc  2   Doc  8   Doc   Doc   COUCHBASE  SERVER    CLUSTER   User  Configured  Replica  Count  =  1   REPLICA   34   •  App  servers  accessing  docs   •  Requests  to  Server  3  fail   •  Cluster  detects  server  failed   –  Promotes  replicas  of  docs  to   acBve   –  Updates  cluster  map   •  Requests  for  docs  now  go  to   appropriate  server   •  Typically  rebalance     would  follow  
  • 35. XDCR:  Cross  Data  Center  Replica6on   US  DATA   CENTER   EUROPE  DATA   CENTER       ASIA  DATA   CENTER     hhp://blog.groosy.com/wp-­‐content/uploads/2011/10/internet-­‐map.jpg   35  
  • 36. Cross  Data  Center  Replica6on  (XDCR)   SERVER  2       ACTIVE   SERVER  1       ACTIVE   SERVER  3       ACTIVE   Doc     Doc     Doc     Doc  2   RAM   Doc   Doc     COUCHBASE  SERVER    CLUSTER   NYC  DATA  CENTER   Doc     Doc  9   Doc     RAM   Doc   DISK   Doc     Doc     Doc   RAM   Doc   Doc     Doc   DISK   Doc   Doc   DISK   SERVER  2       ACTIVE   SERVER  1       ACTIVE   SERVER  3       ACTIVE   Doc     COUCHBASE  SERVER    CLUSTER   SF  DATA  CENTER   Doc     Doc     Doc  2   RAM   Doc   Doc     Doc     Doc  9   Doc     DISK   RAM   Doc   36   Doc     Doc     Doc   DISK   RAM   Doc     Doc   Doc   Doc   DISK   Doc  
  • 37. Indexing  and  Querying  Features   •  Index  and  Query   ­  Distributed  indexing  and  querying   ­  Secondary  indexes  of  JSON  document  content   ­  Flexible  querying  of  indexes   •  Incremental  Map-­‐Reduce   ­  Distributed  simple  real-­‐Bme  analyBcs   ­  Only  considers  changes  due  to  updated  data   •  Full  Text  Search   ­  Robust  integraBon  with  ElasBcSearch  cluster   ­  Flexible  full  text  search  and  faceted  search   37  
  • 38. Indexing  and  Querying     APP  SERVER  1   APP  SERVER  2   COUCHBASE  Client  Library     CLUSTER  MAP     COUCHBASE  Client  Library     CLUSTER  MAP       Query SERVER  1       ACTIVE   SERVER  2       ACTIVE   SERVER  3       ACTIVE   •  Indexing  work  is  distributed   amongst  nodes   Doc  5   Doc   Doc  4   Doc   Doc  1   Doc   •  Large  data  set  possible   Doc  2   Doc   Doc  7   Doc   Doc  3   Doc   •  Parallelize  the  effort   Doc  9   Doc   Doc  8   Doc   Doc  6   Doc   REPLICA   REPLICA   REPLICA   Doc  4   Doc   Doc  6   Doc   Doc  7   Doc   Doc  1   Doc   Doc  3   Doc   Doc  9   Doc   Doc  8   Doc   Doc  2   Doc   Doc  5   Doc   COUCHBASE  SERVER    CLUSTER   User  Configured  Replica  Count  =  1   38   •  Each  node  has  index  for  data  stored   on  it   •  Queries  combine  the  results  from   required  nodes  
  • 39. Full  Text  Search     39  
  • 40. Couchbase  Demonstra6on   •  Star6ng  with  4  database  nodes   under  load   •  Dynamically  scaling  to  6   database  nodes   ApplicaBon  user   •  Easy  management  and   monitoring   Web  applicaBon  server   •  JSON  indexing  and  querying     •  Easy  configura6on  of        cross-­‐ datacenter  replica6on     Couchbase  Servers   In  the  EC2  or  Datacenter   •  Not  possible  any  other  database   technology     40   XDCR  
  • 42. Couchbase:  The  Complete  NoSQL   Solu6on   Easy   Scalability   PE Grow  cluster  without  applicaBon   changes,  without  downBme   when  needed   Consistent  High   Performance   RF O R M A N C E Always  awesome  experience     for  your  applicaBon  users.   Always  On   24x7x365   JSON JSON JSO JSON N JSON Flexible   Data  Model   Keep  developers  producBve  and   allow  fast  and  easy  addiBon  of     new  features   The  sun  never  sets  on  the  Internet,   your  applicaBon  needs  the  database   to  always  serve  data.   42  
  • 43. Consistent  High  Performance   •  Consistent,  predictable  sub  millisecond  latency   ­  Apps  need  fast,  predictable  access  to  data,  it’s  not  good  enough  to  be  fast   some  of  the  Bme   •  Consistent,  predictable  throughput   ­  Throughput  capacity  of  your  data  layer  should  be  independent  of  the  mix   of  reads  and  writes   •  Linear  throughput  scalability   ­  Double  the  number  of  servers,  get  twice  the  maximum  throughput  and   double  the  data  capacity   43  
  • 44. YCSB  Benchmark  Details     •  Web  applica6on  simula6on     ­  Simulates  changing  set  of  users  using  the  app/accessing  data     ­  Document  size  of  1.5-­‐2K  with  15  million  acBve  documents   •  Data  doesn’t  enBrely  fit  into  RAM   ­  Workload  simulaBng  realisBc  mix  of  reads  and  writes  (60/40)   •  System  details   ­  ­  ­  ­  4  node  cluster  with  seperate  node  to  run  client  workload   AWS  Extra  Large  instances  with  striped  EBS   1  replica  setup  (For  mongoDB  -­‐  no  write  concern,  no  journaling)   Each  test  run  3  Bmes  with  varying  throughputs  with  95%  latency  measured     •  YCSB  test  workload  source  code     ­  hhps://github.com/Altoros/YCSB   44  
  • 45. Read  performance  comparison  -­‐  NoSQL   databases   Read  latencies  against  throughput   18    95th  Percen6le  Latency  (ms)     16   Cassandra   14   12   10   8   MongoDB  cannot  handle   throughput  above  ~  8000  ops  /  sec   6   Couchbase  handles  ~3X  throughput   with  significantly  lower  latency     4   MongoDB   Couchbase   2   0   0   2000   4000   6000   hhps://github.com/Altoros/YCSB   8000   10000   12000   14000   Opera6ons  per  Second   45   16000   18000   20000   22000  
  • 46. Write  performance  comparison  -­‐   NoSQL  databases   Insert/update  latencies  against  throughput    95th  Percen6le  Latency  (ms)     30   25   MongoDB   20   MongoDB  latency  shoots   up  beyond  6000  ops  /  sec   15   Cassandra   10   Couchbase  latency  stays  consistently   low  even  at  20000  ops  /  sec   5   Couchbase   0   0   2000   4000   6000   8000   10000   12000   14000   Opera6ons  per  Second   46   16000   18000   20000   22000  
  • 47. LinkedIn  4  node  cluster   47  
  • 48. NoSQL  Database  Considera6ons   Easy   Scalability   PE Grow  cluster  without  applicaBon   changes,  without  downBme   when  needed   Consistent  High   Performance   RF O R M A N C E Always  awesome  experience     for  your  applicaBon  users.   Always  On   24x7x365   JSON JSON JSO JSON N JSON Flexible   Data  Model   Keep  developers  producBve  and   allow  fast  and  easy  addiBon  of     new  features   The  sun  never  sets  on  the  Internet,   your  applicaBon  needs  the  database   to  always  serve  data.   48  
  • 49. Couchbase:  High  throughput  that   scales  linearly       High  throughput  with  1.4   GB/sec  data  transfer  rate   using  4  servers   Linear  throughput   scalability   hhp://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps9670/white_paper_c11-­‐708169.pdf   49  
  • 50. Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)   Feb  2012             50                          March  2012  
  • 51. As  Usage  Grew,  Game  Data  Went  Non-­‐ Draw  Something  by  OMGPOP   Linear   Daily  Ac)ve  Users  (millions)   Feb  2012             51                          March  2012  
  • 52. NoSQL  Database  Considera6ons   Easy   Scalability   PE Grow  cluster  without  applicaBon   changes,  without  downBme   when  needed   Consistent  High   Performance   RF O R M A N C E Always  awesome  experience     for  your  applicaBon  users.   Always  On   24x7x365   JSON JSON JSO JSON N JSON Flexible   Data  Model   Keep  developers  producBve  and   allow  fast  and  easy  addiBon  of     new  features   The  sun  never  sets  on  the  Internet,   your  applicaBon  needs  the  database   to  always  serve  data.   52  
  • 53. The  Sun  Never  Sets  on  the  Internet   hhp://personal.bgsu.edu/~tede/020522_briBshempire1360.jpg   53  
  • 54. Always-­‐On  24x7x365:  Proof  Point   Example   Data  Store  Availability   72   57   Couchbase   82   0   20   40   60   80   54   100  
  • 55. Couchbase  Server  Is  The  Complete   Solu6on   ✔   Easy   Scalability   Consistent  High   ✔   Performance   One  click  scalability  and  no  app   changes.   Sub  millisecond  latency  with  high   throughput  for  reads  and  writes.   Always  On   ✔   24x7x365   Maintenance,  upgrades  and   cluster  resizing  all  online   without  applicaBon  downBme   ✔   Flexible   Data  Model   JSON  document  model  with  no  fixed   schema.   55  
  • 56. Couchbase  Server  vs.  MongoDB   Easy   Scalability            Consistent,  High   Performance   Flexible   Data  Model   Always  On   24x7x365   With  1-­‐click,  horizontally   ✔   grow  cluster,  even  scale   across  datacenters     Consistent  sub  millisecond     ✔   reads/writes;   throughput   Consistent  high   ✔   Schemaless  data   model  for  rapid   development   ✔   No  downBme  for   so`ware  upgrades,   hardware   maintenance,  etc.   56   ✖   Complex  mulB-­‐step  scaling,   no  write  scaling  across  data   centers   ✖   High  &  Inconsistent  latency;   Lower  throughput   ✔   Schemaless  data   model  for  rapid   development   ✖  ✔   Difficult  online   upgrade;   Not  all  maintenance   is  online  
  • 57. Consistent  Lower  Latencies  and  Higher   Throughput   •  Couchbase   ­  High  read  and  write  throughput  and  consistent  low  latencies   ­  Write  performance  advantage  due  to  low  granularity  of  Couchbase   memory  locking  mechanism  and  minimal  contenBon   ­  Read  operaBons  happen  concurrently  with,  and  independently  of  writes   •  MongoDB   ­  Severely  limited  write  throughput  due  to  very  coarse  write  locks  that  limit   concurrency  at  the  node  level     ­  Inconsistent  latencies  and  throughput  as  all  reads  need  to  wait  for  a  write   to  finish.     •  Cost  Considera6ons     57  
  • 58. Couchbase  Server  vs.  Cassandra   Easy   Scalability   ✔   With  1-­‐click,  horizontally   grow  cluster,  even  scale   across  datacenters   Consistent,  High   ✔   Performance   Consistent  sub-­‐millisecond     reads/writes  and  high   throughput   Flexible   Data  Model   ✔   Schemaless  data   model  for  rapid   development   ✔   No  downBme  for   so`ware  upgrades,   hardware  maintenance,   etc.   Always  On   24x7x365   58   ✖   Complex  mulB-­‐step   scaling,  coarse  grain   growth  recommended   ✖   High  and  inconsistent   latency;  medium   throughput   ✖   Very  complex   columnar  data   model   ✔   Online  upgrades  and   online  maintenance  
  • 60. Enterprise  vs.  Community  Edi6on   Enterprise  Edi6on   Cost   Community  Edi6on   •  Free  for  pre-­‐producBon   •  StarBng  at  $2,499/node/yr   •  Free   Produc6on   Readiness   ProducBon  Ready   Unknown  ProducBon  Readiness   Technical   Support   Professional  Support   Community/Forum  Support   Best  Prac6ce   Exper6se     Broad  Best  PracBce  ExperBse   ExperBse  of  community  members   Release   Support   Long-­‐Tail  Release  Support   No  Support  for  Old  Releases   License  Type   Commercial  License   Simple  “As  is”  license   Intended  Use   ProducBon  Deployments   Non-­‐ProducBon  Use,  Simple  Use  Cases   •  Take  open  source  snapshots   •  Put  through  rigorous  QA  process,  fix  bugs   •  Defined  SLAs  from  the  experts   •  Immediate  hot  bug  fixes   •  Built  with  latest  open  source   •  Undefined  quality   •  No  SLA,  unknown  response  Bmes   •  No  bugs  fixes  assured  in  a  Bmely  manner   •  From  working  with  100s  of  customers   •  Including  hot  bug  fixes   •  Based  on  limited  individual  experBse   •  Must  support  old  releases  yourself   •  Std  license  terms,  SLA,  indemnity   60  
  • 61. Next  Steps:  The  Path  to  Produc6on   ü           Couchbase  Overview  –  Done   2.  Technical  session     •  Who:  Architects/Developers  and  Couchbase   SoluBons  Architect   •  Deployment  and  development  best  pracBces   •  OperaBons  deep-­‐dive   •  Tech  Q&A   3.  Design  review   •  Review  and  feedback  on  design  and  feature  usage   •  Verify  assumpBons  and  use  of  Couchbase  APIs   4.  Produc6on  deployment   61  
  • 62. Thank  you     Couchbase     NoSQL  Document  Database   62  
  • 64. Couchbase  Server  Features   •  Graphical  monitoring  and  admin  console  with  RESTful  interface   ­  Single  click  cluster  resizing,  powerful  monitoring  accessible  via  every  node   •  Online  upgrades,  backups  and  database  maintenance   ­  Database  is  always  online,  applicaBons  can  be  available  24x7x365   •  All  nodes  are  iden6cal   ­  Easy  provisioning  on  all  supported  plaxorms:  Linux,  Windows,  MacOS   •  Supported  SDKs  for  all  common  languages   ­  Easy  adopBon  by  developers  for  Java,  .NET,  PHP,  Ruby,  C/C++   64  
  • 65. Couchbase  performance  with  varying   document  sizes   Consistently  low  latencies   sub-­‐millisecond  for   varying  documents  sizes   with  a  mixed  workload   65  
  • 66. Enterprise  Edi6on  Subscrip6ons   Standard   Premium   $2499   $4499   Per  node   Per  node   10  X  5   24  X  7   7am  –  5pm  Pacific  Standard  Time   N/A   Phone,  Email,  Web,  Forums     Phone,  Email,  Web,  Forums   P1  Response  Time   5  hours   2  hours   P2  Response  Time   1  day   5  hours   Update  releases   Yes   Yes   Ho{ixes   Yes   Yes   Technical  Alerts   Yes   Yes   Price/node   Licensing   Support  Hours   Hours  of   Opera6on   Support  Channel           hhp://www.couchbase.com/couchbase-­‐support-­‐and-­‐subscripBons   66  
  • 67. Replace  a  Memcached  Tier     with  Couchbase  Server     67  
  • 68. Challenges  with  a  Memcached  Tier   Problem   Cold  Cache   Heavy  RDBMS   Conten6on   Lack  of  Scalability   Complex   Monitoring   Symptoms   Couchbase  Solu6on   Slowdown  or  collapse  of  the  data   service  layer  due  to  heavily   overloaded  RDBMS  when   memcached  nodes  go  down  (on   failure  or  for  maintenance)   Data  is  automaBcally  replicated  across   the  Couchbase  cluster,  providing  high   availability  of  data  even  on  failures   MulBple  requests  for  data  items  that   do  not  exist  in  the  cache  results  in   sudden  shi`ing  of  load  to  the   relaBonal  database  causing  heavy   contenBon   By  replicaBng  data  across  the  cluster,   Couchbase  Server  provides  consistent   performance  without  shi`ing  load  to   the  RDBMS  layer   Adding  or  removing  memcached   nodes  is  complicated  and  causes   unpredictable  applicaBon   performance  degradaBon   Auto-­‐sharding  and  online  rebalancing   in  Couchbase  Server  provides  easy  non-­‐ disrupBve  expansion  of  the  cluster   Management  of  individual   Couchbase  Server  provides  an  in-­‐built   memcached  nodes  increases  the   admin  console  for  cluster  wide   complexity  of  operaBons  and  lacks  a   management  and  monitoring  as  well  as   single  consistent  view  of  the  caching   RESTful  APIs  for  easy  automaBon  and   layer   third-­‐party  integraBon   68  
  • 69. Before  and  Azer:     Replacing  Caching  Tier  with  Couchbase   Server   69  
  • 70. Memcached  Tier  Replacement:  How  it   Works   •  Fully  memcached  protocol  compa6ble   •  Easy  to  replace  a  6er  of  individual  memcached  servers  with  a   Couchbase  Server  cluster     •  The  cluster  receives  reads  and  writes,  keeps  frequently  accessed   items  in  memory,  persists  and  shards  and  replicates  the  data   amongst  the  cluster   •  Reads  and  writes  are  s6ll  as  low  latency  and  high  throughput  as   memcached     •  User  gets  all  the  scalability  and  high-­‐availability  advantages  of  a   Couchbase  Server  cluster     70  
  • 71. Draw  Something   Success  Story   sales@couchbase.com     71  
  • 72. How  to  Prepare  Your  Social  Game  for  Massive  Growth   Published  February  2,  2012   Five  days  later…   hhp://mashable.com/2012/02/01/social-­‐game-­‐prepare-­‐growth/   72  
  • 73. Draw  Something  by  OMGPOP   73  
  • 74. Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)   74  
  • 75. As  Usage  Grew,  Game  Data  Went  Non-­‐ Draw  Something  by  OMGPOP   Linear   Daily  Ac)ve  Users  (millions)   75  
  • 76. In  Contrast…   The  Simpson’s:  Tapped  Out   Daily  Ac)ve  Users  (millions)   76