42
©2016 Couchbase Inc. Introduction to Couchbase Mobile Ali LeClerc Product Marketing Manager, Couchbase @ali_leclerc 1

Introduction to Couchbase Mobile

Embed Size (px)

Citation preview

PowerPoint Presentation

Introduction to Couchbase MobileAli LeClercProduct Marketing Manager, Couchbase@ali_leclerc1

2016 Couchbase Inc.2Whos used Couchbase?

2016 Couchbase Inc.3Whos used Couchbase Mobile?

2016 Couchbase Inc.AgendaMobile challenges for todays enterprisesCouchbase Mobile, definedCommon mobile use cases and real world storiesCouchbase Connect16Q&A4

2016 Couchbase Inc.

2016 Couchbase Inc.5Mobile Challenges for Todays Mobile Apps

2016 Couchbase Inc.

5

Key Challenges When Building Mobile Apps6According to study done by Bock & Company Enterprise Developers Rank Critical Requirements for Success in the Coming Mobile App Explosion

2016 Couchbase Inc.

2016 Couchbase Inc.Storing, accessing, transporting, and securing data outside the cloud can be hard.

Development time is expensive Support and maintenance of your app can be costly You have to solve for data management concerns in your entire stack Even with a great UI, if your backend isnt robust then app experience will be poor

According to Bock & Company, a leading research company in the area of mobile apps, these are the key challenges developers face when building mobile apps:

Easy integration with backendWorking offlineCross platform supportStoring all types of data, and IoT support

Youll notice that all but one, the cross platform support, is directly a data management concern. And even cross platform support is partly a data management problem.

6

The Offline Mobile ChallengeOffline capability will be a consideration for nearly every future modern application and is often the most expensive (and valuable) infrastructure service mobile dev teams will implement.

According to Forrester Research's recent report The Offline Mobile Challenge7

2016 Couchbase Inc.

2016 Couchbase Inc.As those results showed, offline support is a big challenge to build into applications, but is something we hear quite often from developers. And Forrester has found the same.

In their recent report The Offline Mobile Challenge, they talk about how adding offline capabilities is critical for virtually every mobile application, yet is the most difficult thing to build. In fact, building this custom for an app will more than triple the development cost.7

Whats the key criteria?Cross Platform SupportSecurityData Modeling FlexibilitySync Support & OptimizationConflict ResolutionScalabilityTopology Support8

2016 Couchbase Inc.

2016 Couchbase Inc.

8

9Couchbase Mobile, defined

2016 Couchbase Inc.Ok. So, now that weve talked about the key criteria, lets talk about Couchbase Mobile.

9

Lightweight embedded NoSQL database with full CRUD and query functionality.Secure web gateway with synchronization, REST, stream, batch and event APIs for accessing and synchronizing data over the web.Highly scalable, highly available, high performance NoSQL database server.Built-in enterprise level security throughout the entire stack includes user authentication, user and role based data access control (RBAC), secure transport (TLS), and 256-bit AES full database encryption.

Couchbase LiteSync GatewayCouchbase ServerEMBEDDED DATABASESYNCHRONIZATIONDATABASE SERVERSECURITYCouchbase Mobile: The Full-Stack Data Management Solution

2016 Couchbase Inc.

2016 Couchbase Inc.This is Couchbase Mobile the full-stack data management solution that resolves all data storage, access, transport, and security concerns across the entire application stack.

Couchbase Mobile consists of 3 components:

Couchbase Lite: A full featured embedded NoSQL database that runs locally on the device.It includes complete offline support with full CRUD and query functionality.Sync Gateway:A secure web gateway that enables synchronization and data access over the web. It includes configurable synchronization, REST, stream, batch, and event APIs for data access and synchronization.Couchbase Server:Our flagship, highly scalable, blazing fast NoSQL database server.

Security: We have built-in enterprise level security throughout the entire stack. This includes user authentication, user and role based data access control, secure transport (TLS), and 256-bit AES full database encryption.10

Cross-platform support for all major operating systems and platformsBuilt native from the ground upJSON and blob storageLightweight256-bit AES full database encryption11Couchbase LiteEmbedded DatabaseCouchbase Lite Overview

2016 Couchbase Inc.

2016 Couchbase Inc.Lets dive into the components of Couchbase Mobile, starting with Couchbase Lite.

Couchbase Lite is a full featured embedded NoSQL database that runs locally on the device.

We are very focused on cross platform portability, and weve built native from the ground up for each platform.

We support all the major mobile operating systems including a Cocoa version for all the Apple technologies (thats iOS, tvOS, OSX).Our Java version supports any platform that runs a J2SE compliant JVM, so thats Android, Linux, Windows, and a ton more.And our C# version supports all the .NET runtimes, thats Microsoft, Mono, and Xamarin.

You can store both JSON documents and blobs.

It has a small footprint at 500KB on most platforms (Java is 1 MB).

And data is secured on the device using 256-bit AES full database encryption.

And we added TTL support for auto-expiring documents in Couchbase Mobile 1.2.11

Synchronize data between Couchbase Lite and Couchbase ServerREST, Stream, Batch, and Event APIsPluggable authenticationFine grained user and role based access controlElastically scalable in real-time12

Sync GatewaySynchronizationSync Gateway Overview

2016 Couchbase Inc.

2016 Couchbase Inc.Sync Gateway is a secure web gateway that enables synchronization and data access over the web.

It has configurable REST, stream, batch, and event APIs for accessing and managing data over the web.

User Authentication is pluggable. Out-of-the-box it has support for popular public login providers like Facebook, it has support for basic authentication, or you can write your own custom provider. And we added Open ID Connect support for OAuth2 identity providers in 1.3. So if you have an authentication provider that supports Open ID Connect, which many of them do, you can just plug it into Sync Gateway. You can also restrict access to the system to authenticated users and optionally allow unauthenticated guest users.

It also has fine grained RBAC for controlling data access for individual users and roles.

Its elastically scalable in real-time. You can add and remove capacity in seconds (as fast as you can add/remove nodes in your load balancer).

In 1.3, we added Sync Gateway to Sync Gateway replication. Its really awesome. It enables integrated support for topologies beyond Star. For example, tree topologies, which are really popular for enterprise applications.

One example is in the retail industry. Under a star topology POS devices can continue to work while theyre offline, but they cant share data changes with other devices while offline.

With a tree topology, a Sync Gateway and Couchbase Server cluster would be deployed in a store data center and configured to sync with a global data center. The POS devices would be configured to sync with the store data center. Under this configuration, the store can go offline as an entire unit and all devices within the store can continue to share data with each other.

The same topology is useful for many other use cases.12

Scale easily to thousands of nodes Consistent high performance that supports millions of concurrent usersFlexible JSON data model 24x365 always-on availability13

Couchbase ServerDatabase ServerCouchbase Server Overview

2016 Couchbase Inc.

2016 Couchbase Inc.And backing all of this you have Couchbase Server, managing and storing data in the cloud.

Its highly scalable. You can start with a few nodes and scale out, adding additional nodes as you need capacity.

Couchbase Server supports millions of concurrent users by leveraging memory and asynchronous operations.

Like Couchbase Lite, it has the awesome flexible JSON data model.

And with Couchbase Server, you get 24x365 uptime by enabling replication and automatic failover.

13

Pluggable authenticationFine grained user and role based access controlTransport layer security (TLS)256-bit AES full database encryption on deviceFile system encryption in the cloudSecurity

End-to-End Security

2016 Couchbase Inc.

2016 Couchbase Inc.Couchbase Mobile manages the data security concerns across the entire application stack.

For User Authentication we support pluggable authentication. Out of the box we have support for popular public login providers like Facebook, basic authentication, Open ID Connect, or you can write your own custom provider. You can also restrict access to the system to successfully authenticated users or optionally allow anonymous users.

For Data Read/Write Access there are fine-grained policy tools that allow controlling data access for individual users and roles. Read-side permissions are at the document level and write-side permissions are down to the field level.

Data Transport on the Wire, for data in motion, is over TLS.

Data Storage on Device, for data at rest on device, we have 256-bit AES full database encryption.

Data Storage in the Cloud, for data at rest in the cloud, you can configure Couchbase Server to use File System Encryption.14

Client Tier: Storage, access, and securityWWW: Transport and securityMiddle/App/Web Tier: Access, security, and elastic scalabilityDatabase Tier: Storage, access, security, and scalability

Database TierMiddle/App/Web TierClient TierW W W

ServerGatewayLiteCouchbase Mobile: Full-stack data storage, access, transport, and security

2016 Couchbase Inc.

2016 Couchbase Inc.Couchbase Mobile is the full-stack NoSQL database that resolves all storage, access, transport, and security concerns across the entire application stack.

At the client tier, Couchbase Lite resolves the concerns of data storage, access, and security.

On the web, we resolve the transport and security concerns associated with accessing, managing and synchronizing data over the web.

At the middle tier, Sync Gateway resolves the concerns of data access, security and elastic scalability.

At the database tier, Couchbase Server resolves the concerns of data storage, access, security and scalability.With Couchbase Mobile, you have a solution that resolves all of the concerns of storing, transporting and securing data throughout the entire application.15

Key Challenges: How Couchbase Stacks Up Easy integration with backend DB Work offline Cross platform support Store multimedia data Store sensor data IoT support16

2016 Couchbase Inc.

2016 Couchbase Inc.Now that we know the key challenges, and the key criteria, how does Couchbase stack up?

Spoiler alert...were awesome.

We have integrated synchronization throughout the stack for easy integration.

Full offline support.

Cross platform support for all the major operating systems, including a bunch of others.

You can store both JSON documents and blobs, which includes multimedia and sensor data.

And we support more than just mobile operating systems, which includes IoT. Ill talk about IoT use cases a bit later.

16

Key Criteria: How Couchbase Stacks UpCross Platform SupportSecurityData Modeling FlexibilitySync Support & OptimizationConflict ResolutionScalabilityTopology Support17

2016 Couchbase Inc.

2016 Couchbase Inc.What about the key criteria?

We already talked about cross platform.

We have full-stack security across the entire application stack.

For data modeling flexibility, we have JSON support throughout the entire stack. Super flexible.

Sync configuration can be really easy. You can configure it how you want it. Blue sky in synchronization.

We support any conflict resolution strategy including first in wins, last in wins, 3 way merge, or anything else.

Couchbase Server scales elastically, with no downtime, as your storage capacity demands increase. And Sync Gateway scales elastically up and down in real-time as capacity demands fluctuate.

We support all network topologies. We can deployed in any network topology star, tress, mesh, ring, line, anything. Hybrids. Anything.

17

18Common Mobile Use Cases

2016 Couchbase Inc.So now lets look at some Couchbase mobile use cases.18

Common Mobile Use Cases

Common Mobile Use Cases

2016 Couchbase Inc.

2016 Couchbase Inc.First is Offline Data Access.

When users are cut off from important transactions because their app doesnt work offline, thats a problem. You need a local database for your apps to store data locally so your app isnt dependent on the network.

And you need a synchronization mechanism that allows your app to sync back to the cloud when network is restored.19

Try again later.No Internet

please waitTodays Mobile Apps

2016 Couchbase Inc.

2016 Couchbase Inc.Lets actually dive into this a little more.

Well start with the typical deployment topology of todays mobile apps.

We have an app running on a mobile device and when we have a network connection, we have apps that typically work as expected.

[FWD]

But lets say you start running into network issues. Well, this is why we have UI components like spinners, progress indicators, and the like. The app is telling you its TRYING to do what you want it to do, but that you need to wait awhile for it to do that.

[FWD]

And then when the network becomes unavailable, then the app becomes unavailable....so try again later.20

The ProblemRemote Data

2016 Couchbase Inc.So, as you see, the root problem here is that apps store data in the cloud and rely on an internet connection to access that data in the cloud. This is what causes the slowness or unresponsiveness.And if the network is available great! All goes as expected.But of course, we all know we can never expect the network to always work. Once you start experiencing slow networks, then you start experiencing slow apps.

So while the network can contribute to the problem, what this really is is a data locality problem.Data location dictates app reliance on the network. If an app has to run to the cloud every time it needs to read or write any little piece of data, then its going to have problems. If the network isnt available, the app cant get to the cloud and isnt going to work. If the network is slow, then getting data from the cloud will be slow and the app will be slow.

21

The SolutionLocal Data + Sync

2016 Couchbase Inc.Its all about your data location strategy. You need data local, which you get with Couchbase Lite. And you need data remote, which you get with Couchbase Server. And you need something thats going to keep those two data stores in sync, which you get with Sync Gateway.

Couchbase Mobile gives you local data and remote data, and gives you the synchronization mechanism needed to keep your local data and remote data in sync.

And thats what enables apps to work all the time.22

Doddle23

2016 Couchbase Inc.And we have some really great customers that are using Couchbase to build offline into their mobile apps. Doddle is one example.

Based in the UK, Doddle is a package collection and delivery service. In fact, I just got back from a trip to Europe and Doddles are literally everywhere in London train stations, airports, all over the city. I got really excited everytime I saw one.

The offline and local processing capabilities are critical to Doddle stores. Network connection was really hard to guarantee, but packages are delivered and picked up throughout the day, so any downtime can have significant impact on their business.

Doddle is using Couchbase Mobile to power its 50 some odd store fronts. Offline data access is important. And theyre using Couchbase Mobile for some other really important things, like replication of data to store systems and eventing.

Doddle has a session tomorrow morning, and I encourage you to attend and learn more. Its a fantastic use case around using Couchbase Mobile, and theyre doing some really innovative things with the technology.

23

Common Mobile Use Cases

Common Mobile Use Cases

2016 Couchbase Inc.

2016 Couchbase Inc.Next is Local Caching.

Todays mobile apps require fast access to data. Storing and caching application data locally in your embedded database is a must, eliminating the need for the app to constantly request data from the server.24

2016 Couchbase Inc.Ryanair is one of our mobile customers using Couchbase Mobile in this way.Ryanair is both the largest European airline by scheduled passengers carried and the busiest international airline by passenger numbers. Today, they have over 3 million users planning over 80 thousand flights per day using their mobile app.The problem that they were trying to solve was user experience associated with the amount of time it took to complete a booking on their mobile application.We love their story. In fact, instead of telling you about it, Im going to show you.

25

2016 Couchbase Inc.This is a comparison of Ryanairs mobile app before Couchbase Mobile and with Couchbase Mobile.

Youll see on the train below how quickly the app running on Couchbase Mobile hits landmarks like finding flights, seat selection, and more. The old app is on the top, and the new app is on the bottom.On the left, youll see the original application. This architecture was a hybrid mobile app using REST services backed by a relational database and cache. In this architecture, the mobile device talks to the Web Server, via REST, which retrieves data from the cache and/or database. The cache and database are separate systems.With this architecture:Bookings took more than five minutes to completeData had to be retrieved from the server during each booking request, increasing the amount of time to complete a bookingOver 80 GB of data was being transferred to mobile apps per day to drive the booking processOn the right is the app running on Couchbase Mobile. With Couchbase Mobile, Ryanair moved to a synchronization architecture. Semi-Static Data is stored in the embedded Couchbase Lite database locally on the device and automatically updated via Sync Gateway when it changes in the cloud. The app always retrieves the data from the embedded database, eliminating the need to constantly request this data from the server.The mobile app experience is now so much better.

Additionally:The booking process is 60%+ faster (slashed from over 5 minutes to under 2)Network traffic to drive bookings is 87% more efficient (reduced from 80 GB/day to 10 GB/day)The user experience is vastly improved26

2016 Couchbase Inc.So for those of you that would like to take advantage of Couchbase Mobile in your existing mobile apps, there are great ways to do this and this is one way of doing that caching semi-static assets locally within your application and using synchronization to update them as they change.27

Common Mobile Use Cases

Common Mobile Use Cases

2016 Couchbase Inc.

2016 Couchbase Inc.Next is Digitization of Paper Assets.

Reducing operational time and costs is critical for any business. Digitizing paper assets allows you to save time and resources, reduce storage, and cut logistics costs.

Some of our airline customers, for example, are using Couchbase to digitize the cockpit processes. If you didnt know (and I certainly didnt realize this), there is a massive amount of paperwork that pilots are required to complete before take off. Digitizing that paperwork has saved pilots so much time. Its streamlined the take-off process. Its helped get flights out earlier.

This is what the Digital Economy is about. Taking old, legacy processes and digitizing them. Sometimes literally.

We have a ton of customers who are using Couchbase to digitize their paper-oriented processes.

28

Common Mobile Use Cases

Common Mobile Use Cases

2016 Couchbase Inc.

2016 Couchbase Inc.Content Delivery and Storage.

Guaranteed delivery and storage of assets is crucial for a great user experience. Ive talked about this before, but you need the ability to store and access data locally on your device so that content is always available for your users.

Product orders, electronic tickets, reservations, service requests, customer profiles just a few examples of content that needs to be always-available for todays mobile apps.29

2016 Couchbase Inc.BD is using Couchbase for content delivery and storage. Im really excited about this one.

If you dont know, BD is a Fortune 500, billion dollar medical technology company. Their Couchbase Mobile use case is pretty incredible.

BD has a mobile app that patients with diabetes use to track their glucose levels. The app theyve built is not only collecting this patient data, but its also helping with interventional care for Diabetic type II patients. Its helping improve the patient/clinician interaction to lower diabetic incidents.

Instead of patients having to visit their doctor, show their results, and have the doctor respond based on the results they see that day, doctors now get that information in real-time, as the mobile app is updated. This is radically changing the patient/doctor relationship. Now doctors will have this information before patients visit them, enabling them to provide up-to-date recommendations, analysis, and more to their patients.

I wont go into all of the details, because they are presenting their full story tomorrow. But this is such a cool use case, and very inspiring. I hope you can make it to Dylans talk tomorrow.30

Common Mobile Use Cases

Common Mobile Use Cases

REAL-TIMEDATA TRACKING

2016 Couchbase Inc.

2016 Couchbase Inc.Then we have Real-Time Data Tracking.

Tracking, storing and delivering real-time data updates can be tricky to manage. Its data that may be shared across tons of users, and up management chains.

Maybe its a major logistics company where supervisors need real-time visibility into their drivers schedules, routes, pick-ups, and drop-ups. Access to that kind of information gives businesses the ability to provide real-time customer service. Which is critical in todays Digital Economy.

31

Common Mobile Use Cases

Common Mobile Use Cases

REAL-TIMEDATA TRACKING

2016 Couchbase Inc.

2016 Couchbase Inc.Next is Peer to Peer Device Usage.

This use case is becoming more and more common, were starting to see it a lot. In isolated environments like retail stores, planes, in the field, or other places where network isnt reliable, the ability for devices to talk directly to one another is really critical.

At a very high level, with peer-to-peer, apps can connect to exchange data and will continue to work, regardless of network availability.32

Data Center

b

a

1

2

Lets look at an example. This is an airplane with devices on-board that are connected to a data center. What you see here is Couchbase Mobile deployed in a Hybrid Tree/Mesh topology.

This is an example of peer to peer replication, and how you can get the benefits of that.

The airplane is connected by A and B endpoints. In this case, device 2 has left range from the A endpoint, the central endpoint...but if they were to use peer to peer between devices 1 and 2, they would be able to create a peer to peer network between those 2 which means that device 2 continues to operate offline but also continues to share data with the rest of the network even though it doesnt have a direct access path to the network itself.

So its very powerful. Peer to peer is gaining a lot of traction, and it might be something you guys might be interested in.33

Common Mobile Use Cases

Common Mobile Use Cases

IOT

I/O

REAL-TIMEDATA TRACKING

2016 Couchbase Inc.

2016 Couchbase Inc.And last we have IoT. 34

Common Mobile Use Cases

IOT

IOT

I/O

REAL-TIMEDATA TRACKING

2016 Couchbase Inc.

2016 Couchbase Inc.Which actually is its own Use Case, and expands beyond mobile.35

PredixThe Cloud Platform for the Industrial Internet

2016 Couchbase Inc.A logo youre probably familiar with is GE. GE is using Couchbase Mobile to power its Predix platform, its software platform for the Industrial Internet.

It connects machines. Machines like trains, wind farms, submarines, and so much more. All kinds of things that are counted on to work all day, everyday for the next 25, 30, 35+ years... Connectivity is mission critical these machines are literally everywhere. The middle of the ocean, the top of a mountain, inside of a turbine, or in a rail yard. And even then, those machines have hundreds of moving parts, all of which need to be tracked and maintained.So what Predix does is ingest all this machine data, stores it, cleans it, analyzes it and takes all of this critical information back to the operator. And it provides that information at massive scale. So Predix must be reliable, 24/7. Predix relies on Couchbase Mobile for this.

In addition to being a pretty cool IoT use case, offline capabilities are also really important for Predix. One of my favorite things Mike from GE talks about is the idea around offline-first being the new mobile-first. Offline capabilities are critical for Predix.

GE is a great example of a legacy company adapting and evolving its business to be a major player in the Digital Economy. Youve probably seen their commercials on TV.

I hope you can attend their session later today, where the GE team will be going into a lot more detail around Predix and how theyre using Couchbase.

36

37

2016 Couchbase Inc.These are just 4 examples of some really great customers building really amazing mobile and IoT apps using the Couchbase data platform.

Were seeing a lot of innovation right now. The airline, travel, healthcare, education, e-commerce, and gaming spaces...from Fortune 500 companies to 10 person start-ups, Couchbase Mobile is being selected as the backing technology for so many mission and business-critical applications.37

38Connect16

2016 Couchbase Inc.If youre brand new to Couchbase Mobile, if youre evaluating Couchbase Mobile, if youre using Couchbase Mobile, or if youre a ninja in Couchbase Mobile, I encourage you to take advantage of the next two days.

Our entire engineering team is here, the team thats actually building our product. Theyll actually be presenting sessions throughout the next two days. Find them, talk to them, ask them questions!

38

39

Design

Develop

Testing & Deploying

Sync Gateway as a service platform

Couchbase Lite 2.0

Creating a Data PipelineThe Product LifecycleCustomer Stories

2016 Couchbase Inc.Weve set up the mobile track in a way that youll get hands-on experience for the entire product lifecycle. And we have some really great customers that will be sharing how theyre using Couchbase Mobile to build some really amazing apps.

In the next session, youll start with how to design applications using Couchbase Mobile, including architecture, data modeling, and security.

After that youll go through how to develop applications using Couchbase Mobiles database API, synchronization, and security.

Next youll learn how to perform functional, scalability, performance, and reliability tests on your Couchbase Mobile application.

Then well dive into more technical specifics with the products, including how to set up Sync Gateway as a service platformA session on what to expect in Couchbase Lite 2.0And the operational aspects of Couchbase Mobile, including replication topologies and deployment strategies.

We also have some phenomenal customers sharing their stories. GE, Market America, Doddle, and BD will be presenting in the Mobile track over the next 2 days.

I also hope you can attend the Mobile and IoT keynote tomorrow, where our chief architect of mobile will be talking about the vision for our products.

So with that, were excited to have you at the conference, and we look forward to spending the next 2 days with you.39

Questions40

2016 Couchbase Inc.41The Couchbase Connect16 mobile appTake our in-app survey!

2016 Couchbase Inc.

41

42

Share your opinion on CouchbaseGo here: http://gtnr.it/2eRxYWn

Create a profile

Provide feedback (~15 minutes)

2016 Couchbase Inc.