18
DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS AND DESIGN APPROACH Keshav Murthy Senior Director, Couchbase R&D

DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

  • Upload
    others

  • View
    58

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS AND DESIGN APPROACHKeshav MurthySenior Director, Couchbase R&D

Page 2: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

DATABASES FOR AN ENGAGEDWORLD: REQUIREMENTS AND DESIGN APPROACHKeshav MurthySenior Director, Couchbase R&D

Page 3: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

3

?• Store, retrieve and manipulate

data.

• Create spheres of control and

protection for concurrent

operations

• Make the application development

easily

• SCALE UP and SCALE OUT

• Data model

• Relational or Document or Graph

• Data types

• Query (SQL*)

• Storage engine

• Index

• Data

• Clustering

• Availability

• Scaling

APPROACH ENGAGEMENTDATABASES

Page 4: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

4

Summer Vacation Job

Where are we going for vacation this summer?

✔$

$$

$$

𑰀

!

You got a job! Google,friends,books. Suggest 5 ideas

𑰀

Talk to Family, See trip advisor, Expedia. Select 2

👪👪

Talk about & research the $$$

Decision TimeBUYGet confirmation; Book activities

Go on vacationFeedback & Social

😎😎✌ 👍👍

Initiate the job

Information on locations

Initial shortlist Final List

Options, cost, constraints

DecisionTickets Bought

JOB IS DONE

CheckinRelax

Checkout

Tickets Bought

Page 5: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

5

Summer Vacation Job

Where are we going for vacation this summer?

✔$

$$

$$

𑰀

!

You got a job! Google,friends,books. Suggest 5 ideas

𑰀

Talk to Family, See trip advisor, Expedia. Select 2

👪👪

Talk about & research the $$$

Decision TimeBUYGet confirmation; Book activities

Go on vacationFeedback & Social

😎😎✌ 👍👍

Initiate the job

Information on locations

Initial shortlist Final List

Options, cost, constraints

DecisionTickets Bought

JOB IS DONE

CheckinRelax

Checkout

Tickets Bought

Systems of Engagement

Systems of Engagement

Systems of Engagement

Systems of Engagement

Systems of Engagement

Systems of Engagement

Systems of Engagement

Systems of Record

Systems of Record

Systems of Engagement

Page 6: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

System of Record vs. System of Engagement

Contract matters. Context Matters

Systems of EngagementSystems of Record

Lower throughput Except on Black Friday And TAX DAY

Relatively higher cost is accepted

Reliability is paramount

Guarantees record of action Implement the decisions

Speed is of the essence

Lots of questions to help decide

Large number of concurrent users

High ThroughputLow latency

Info from multiple sources and services

Low TCO

Page 7: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

7

Systems of Engagement

A system of engagement helps customers to get the right information, in their context, and to make decisions and progress on their journey to get a job done.

Page 8: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

8

The traditional approachWhy today’s digital transformation projects fail

Analytical Database

Transactional Database

Page 9: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

9

Point solutions everywhereWhy today’s digital transformation projects fail

Global Replication

Search KeyValue

Indexing

Cache

AnalyticsMobile

Query

Transactional Database

Analytical Database

Page 10: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

10

Why today's digital transformation projects succeed

Transactional Database

Analytical Database

Welcome to the Engagement Database

Engagement Database

Page 11: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

11

Always on,always fast

Secure, secure,secure

Seamlessly mobile

Hello cloud,hello world

Built-in smarts

Built for change -at scale

ATTRIBUTES OF AN ENGAGEMENT DATABASE

Page 12: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

Couchbase Data Platform

Develop with Agility. Deploy at any scale.

World’s First

Engagement Database

Page 13: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

©2017 Couchbase. All rights reserved. 13

NODE 1

GlobalIndexQuery

FullText

Analytics

Data

Cluster Manager

NODE 4

Sample QA Setup

NODE 1

Query

Global Index

Data

Analytics

FullText

ClusterManager

NODE 2

Sample Dev Setup

Built for Change at Scale

Page 14: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

©2017 Couchbase. All rights reserved. 14

Sample Production Deployment

NODE 1 NODE 12

Cluster Manager

Data FullText AnalyticsGlobal

IndexQuery

Built for Change at Scale

Page 15: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

Always On, Always Fast

15

Data movement free from disk bottlenecks

▪ In-memory streaming of updates to all components▪ In-memory cache ▪ Memory-only data buckets▪ Memory-only indexes

COUCHBASE SERVER CLUSTER

Node 1 Node 2 Node 3 Node 4 Node 5 Node 6 Node 7 Node 8

Data Service

Data Service

Data Service

GlobalIndex

Service

Query Service

QueryService

Full Text

Service

Full Text

ServiceDCP

StreamingDCP

Streaming

• Intra-cluster Replication• Inter-cluster Replication• Global secondary Indexing updates• Full-Text Search update• Analytics service updates

Page 16: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

16

Built-in Smarts: N1QL = SQL + JSON

Client

FetchParse Plan Join FilterPre-Aggregate

Offset Limit ProjectSortAggregateScan

{Query Service}

{Index Service}

{Data Service}

SELECT DISTINCT route.destinationairportFROM `travel-sample` airport

INNER JOIN `travel-sample` routeON (airport.faa = route.sourceairport

AND route.type = "route" )WHERE airport.type = "airport"

AND airport.city = "san francisco"AND airport.country = "united states";

Page 17: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

CouchbaseData Platform

Develop with Agility. Deploy at any scale.

World’s First

Engagement Database

Page 18: DATABASES FOR AN ENGAGED WORLD: REQUIREMENTS … SERVER CLUSTER. Node 1. Node 2. Node 3. Node 4. Node 5. Node 6. Node 7. Node 8. Data Service. Data Service. Data Service. Global. Index

COUCHBASE.COM