how-to couchbase mobile series: creating apps for the retail industry

48
Couchbase Mobile in Retail Zack Gramana

Upload: couchbase

Post on 12-Jul-2015

602 views

Category:

Mobile


0 download

TRANSCRIPT

Page 1: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Couchbase Mobile in RetailZack Gramana

Page 2: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

About Me

Zack Gramana

Senior Mobile Software

Engineer

@zgramana

Page 3: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Who is Couchbase?

Page 4: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Couchbase at a Glance

Fastest growing NoSQL

database company

4x growth in 2013

Mission critical use at

Internet scale

400+ customers; 10,000+ paid

production nodes deployed;

worldwide customer base

Leader in scalability &

performance

Easily & reliable scale your app;

Get consistent low latency &

high throughput

Worldwide operations

with 250+ employees

100+ in engineering; Offices in US,

UK, India, Japan, China (soon)

Page 5: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Enterprise Customers

> 400 customers; > 10,000 production nodes deployed

Services and Consumer Enterprises

Page 6: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

What is the business problem?

Page 7: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Today’s Mobile Apps

7

Try again later.

No Internet

please wait…

Page 8: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

How does this affect what people think about your app?

8

Doesn’t work a lot of the time and when

it does it’s slow.

Page 9: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

How does this affect application uninstall rates?

9

0%

20%

40%

60%

80%

100%

Un

insta

ll R

ate

Freezing

Crashing

Slow Responsiveness

Source: uSamp

Page 10: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Data Location is the Problem

10

Page 11: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Local Data + Sync is the Solution

11

Page 12: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

What does this mean for your apps?

12

Always work both online & offline

Always be blazing fast

Built with orders of magnitude less code

Users will absolutely love your apps

Page 13: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

What is Couchbase Mobile?

Page 14: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Couchbase Lite Sync Gateway

Page 15: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Couchbase Lite

NoSQL mobile database.

Runs in-process.

Small footprint.

Page 16: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Document-Oriented Database

o Key-value collections, with versioning

o Schemaless

o Code fast. Run fast

Page 17: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry
Page 18: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

{"session": {

"Id": "session-1011","Location": "TBA","SpeakerIds": [

"speaker-zack-gramana"],"Time": "2014-10-06T15:20:00","Title": "Building the Mobile Apps with Couchbase Mobile","Track": "Mobile"

},"type": "session"

}

Page 19: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

o Build indexes in your native language

o Results are persisted for fast querying

o Just set breakpoints to debug!

MapReduce Indexes

Page 20: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry
Page 21: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

o Listen/Observe for changes.

o Databases, queries, replications—even documents.

o Cuts down done on a ton of cruft code.

Change Notifications

Page 22: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

doc.Change += (sender, e) => {

if (e.Change.IsConflict){

// well then resolve it!}

};

Page 23: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Sync

o Full multi-master replication.

o Continuous or ad-hoc in either direction.

o Change notifications & conflict detection.

Page 24: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry
Page 25: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Cocoapods

Maven Central

Nuget

Github

Page 26: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

o Authentication

o Authorization

o Data orchestration

Sync Gateway

Page 27: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

27

Page 28: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

o requireUser (username)

o requireRole (rolename)

o requireAccess (channels)

Sync Function

Page 29: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

o channel (name)

o access (username, channelname)

o role (username, rolename)

Sync Function

Page 30: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry
Page 31: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Retail Industry Challenges

Page 32: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Retail Industry Mobile Challenges

“81% of smartphone users

have done product

research via smartphone

and 50% have made a

purchase with one.”

Increase Sales

Page 33: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Retail Industry Mobile Challenges

“It's still about speed and

convenience”Increase Sales

Page 34: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Retail Industry Mobile Challenges

“40% of customers believe

it is very important to be

able to purchase from a

retailer from different

channels.”

Improve Customer

Engagement

Page 35: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Retail Industry Mobile Challenges

How well do users rate

your presence in the

mobile app stores?

Brand Awareness

Page 36: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Solutions

Page 37: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Ship Ready-To-Run

Pre-load your app’s database

Page 38: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Cross-sell/Up-sell

Modeling cross-sell/up-sell

recommendations

Page 39: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Enhancing the in-store experience

Enable

customer/retailer

collaboration

Enable social sharing

Page 40: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Seamlessly Scale

Star

TieredDeployment Topologies

Page 41: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Star Topology

Page 42: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Tiered Topology

Page 43: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Next Steps

Page 44: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Couchbase Developer Portal

developer.couchbase.com/mobile

Page 45: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Forums

forums.couchbase.com

Page 46: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Mailing List

groups.google.com/d/forum/mobile-

couchbase

Page 47: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Contact Me

[email protected] (email)

@zgramana (twitter)

Page 48: How-To Couchbase Mobile Series: Creating Apps for the Retail Industry

Questions and Answers