"going offline", one of the hottest mobile app trends

39
6674 - "Going Offline", one of the hottest trends in mobile Derek Baron, Program Director IBM MobileFirst

Upload: derek-baron

Post on 24-Jan-2017

278 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: "Going Offline", one of the hottest mobile app trends

6674 - "Going Offline", one of the hottest trends in mobile

Derek Baron, Program DirectorIBM MobileFirst

Page 2: "Going Offline", one of the hottest mobile app trends

Here’s what I’ll be presenting:The situation:• Enabling your app to work offline is hard and yet is more important

than everThe problem:• What makes it hardest is sync and replication of the data between the

device and backend databasesThe IBM Solution offers:• A way to build an app that works as well offline as it does online, and

avoid the challenges of writing a replication protocol• A way to deal with the ever changing shape of data• Ability to put the data where you need it: closer to your users, or in

your data center (or both)

Page 3: "Going Offline", one of the hottest mobile app trends

Forrester

According to Forrester Research, the ability to work offline is "the most

important and difficult mobile feature...and will be a consideration for

nearly every modern application" 

3

Page 4: "Going Offline", one of the hottest mobile app trends
Page 5: "Going Offline", one of the hottest mobile app trends
Page 6: "Going Offline", one of the hottest mobile app trends

6

Page 7: "Going Offline", one of the hottest mobile app trends

One of the hottest trends in mobile is "going offline"

NEW in 2014 – top apps that work offline

• Google Maps Offline

• Google Now Cards Offline

• Facebook offline mode

• Square offline (swipe credit cards offline)

7

Page 8: "Going Offline", one of the hottest mobile app trends

You need an on-device database

The on-device database helps mitigate against network issues

8

Mobile App

DeviceDB

Mobile App

MasterDB

MasterDB

Page 9: "Going Offline", one of the hottest mobile app trends

Cloudant

Mobile App

DeviceDB

On-Device

Native CRUD

Query

Sync

IBM MobileFirst Platform and Cloudant

Deployment options:• On-premise NoSQL DB• Fully managed DBaaS

option• Reconfigure data layer

platform (public, private) over time with no downtime or re-coding

A complete data solution for Mobile Apps “Mobile-scale” workloads – millions of daily users SDK for iOS and Android Location based indexing & analytics Integrated with MFP tools and security

Page 10: "Going Offline", one of the hottest mobile app trends

Wired Magazine

Mobile business applications aren't truly mobile if they can't work offline … faced with a tripling of time and cost when

adding offline functionality to a business app (Wired Magazine, June

2014) 

10

Page 11: "Going Offline", one of the hottest mobile app trends

Why a tripling of time and cost?

Factors include:

1. Implementing sync and replication2. The ever changing shape of data3. The need to place data where you need it

11

Page 12: "Going Offline", one of the hottest mobile app trends

The data center in your hand

The mobile data architecture is really like having 1000’s of data centers whose databases need to replicate..

12

Not being able to use an app because it can not access the data associated with it is just as bad as your entire data center going dark

Page 13: "Going Offline", one of the hottest mobile app trends

The cost of sync and replication… complexity

1. Figure out how to store a subset of the application’s data locally

2. Implement a mechanism to keep the data synchronized on both the client and server

13

Sources: “Performance of Mobile, Single-Object, Replication Protocols”, Peter Keleher, University of Maryland

Page 14: "Going Offline", one of the hottest mobile app trends

Replication that “just works”

The IBM Cloudant datastore was designed for a key purpose: sync and replication

Rather than relying on a master/slave architecture, Cloudant supports a multi-master architecture

You don't have to worry which database is the "single source of truth." They all are

14

Page 15: "Going Offline", one of the hottest mobile app trends

Replication

Page 16: "Going Offline", one of the hottest mobile app trends

Multi-master architecture means you don't have to worry which database is the "single source of truth”.

In cases of conflict, Cloudant will choose an arbitrary winner that every node can agree upon deterministically. More on this later…

Page 17: "Going Offline", one of the hottest mobile app trends

Cloudant Toolkit supports pull or push modes for replication so the programmer can control when the sync happens

Page 18: "Going Offline", one of the hottest mobile app trends
Page 19: "Going Offline", one of the hottest mobile app trends

A document is really a tree of the document and its history. There’s a single, linear tree -- just a single branch -- running from the creation of the document to the current revision

Each node becomes aware of the existence of revisions when changes are pushed or pulled

Page 20: "Going Offline", one of the hottest mobile app trends

Conflicts can occur in two places: 1) immediately, when you try to commit a new revision, 2) or later, when two peers have committed changes to the same

document

At this point, you can present both versions to the user, or resolve the conflict automatically using your preferred conflict resolution strategy: last write wins, first write wins, RCS, etc. If you want to resolve the conflict by creating a new revision, you simply put a new document on top of the current winner.

Page 21: "Going Offline", one of the hottest mobile app trends

The masters are in sync

Page 22: "Going Offline", one of the hottest mobile app trends

22

Page 23: "Going Offline", one of the hottest mobile app trends

In reality, you rarely want everything local

User Data

Native Language Objects (new)

Cloudant

Shared Data

Remote API (new)

Local A

PI

Sync

User/Device Data (Offline)- Generated by the user of the app- User preferences, wish list, shopping cart- Offline data, periodically synched to the cloud

Shared Data (Online)- Generated by the enterprise- Shared by multiple users/devices- e.g. Cached/Mobile Store Inventory- Queried as-needed by the app, such as for product

search or category display

User Data

Page 24: "Going Offline", one of the hottest mobile app trends

Two adjacent problems while we’re at it

1. The ever changing shape of mobile data

2. Putting the data where you need it:• close to your users• close to your systems• or both!

24

Page 25: "Going Offline", one of the hottest mobile app trends

The ever changing shape of mobile data

Personal user information, geolocation data, social graphs, user-generated content, machine logging data, and sensor-generated data are just a few examples of the ever-expanding array of data being captured.

25

Source: http://www.couchbase.com/nosql-resources/what-is-no-sql

Page 26: "Going Offline", one of the hottest mobile app trends

Mobile developers choose JSON and NoSQL

• Want to easily accommodate any new type of data they choose to work with • Database that isn’t disrupted by content structure changes • Efficient storage of unstructured and semi-structured data

26

Page 27: "Going Offline", one of the hottest mobile app trends

And yet, businesses have SQL databases

What is the mobile developer to do??

27

Page 28: "Going Offline", one of the hottest mobile app trends

Sample strategy (on-premises)

28

Cloudant Adapter

Cloudant NoSQL DB

MobileFirst Platform Server

SQL Adapter

Cast Iron Adapter Enterprise Services

Relational DB

Mobile App

Cloudant Device DB

Cloudant Sync

Cloudant Query

Native Language

CRUD

On-Device

Your data center

Page 29: "Going Offline", one of the hottest mobile app trends

Sample strategy (on Bluemix)

Mobile App

Bluemix

Cloudant NoSQL DB

Cloudant Device DB

Cloudant Sync

Cloudant Query

Native Language

CRUD

Cloud Integration

Service

Enterprise Services

Relational DB

node.js

On-DeviceEnterprise

• Integrate using custom code in node.js + Cloud Integration service• Cloudant node.js SDK available

Page 30: "Going Offline", one of the hottest mobile app trends

Where you put your data matters… a lot

• Closer to your users• When reducing network latency is critical

• Closer to your systems• When security and control are critical

• Both• When you need to have it all!

30

Page 31: "Going Offline", one of the hottest mobile app trends

4IBM Confidential

Put the data closer to your mobile users

The IBM Cloudant managed DBaaS enables you to:• Geographically disperse your data across multiple data centers

to allow for easy access depending on location• Ability to store data across dozens of geographic locations WW

Page 32: "Going Offline", one of the hottest mobile app trends

Closer to your systems on-premises

IBM MobileFirst Platform Cloudant Local• Cloudant NoSQL database in your data center

IBM Mobile First Platform includes Cloudant Local single node license Upgrade to multi-node clusters for high availability and scalabilty

32

Elastic Scalabilty Multi-Structured Data Data Mobility

Page 33: "Going Offline", one of the hottest mobile app trends

Upgrade to Multi-Node Clusters for High Availability

and Scalability

Cloudant Local

Cloudant

MultitenantCloudant

Cloudant LocalSingle Node

Cloudant Local

Cloudant LocalCluster

Mobile App

Device DB

On-Device

On-Cloud

On-Prem

Native CRUD

Query

Sync

• Store Data on Cloud or On-Prem• On Cloud for fully managed,

automatic scaling• On Prem for more control, data

isolation

Single Node License Included

When you want to have it all

Page 34: "Going Offline", one of the hottest mobile app trends

What you saw today:The situation:• Enabling your app to work offline is hard and yet is more important

than everThe problem:• What makes it hardest is sync and replication of the data between the

device and backend databasesThe IBM Solution offers:• A way to build an app that works as well offline as it does online, and

avoid the challenges of writing a replication protocol• A way to deal with the ever changing shape of data• Ability to put the data where you need it: closer to your users, or in

your data center (or both)

Page 35: "Going Offline", one of the hottest mobile app trends

Learn more:

• IBM MobileFirst Platform Foundation• Includes single-node Cloudant Local

http://www-03.ibm.com/software/products/en/mobilefirstfoundation

• IBM MobileFirst Platform Cloudant Localhttps://cloudant.com/cloudant-local/

• IBM MobileFirst Services on Bluemixhttps://bluemix.net

35

Page 36: "Going Offline", one of the hottest mobile app trends

• Encryption on device for Cloudant Sync• Expanded SDK options – node.js, Hybrid, Windows• Further cloud / on-premises continuity • JSONStore/Cloudant Sync Reconciliation• Advanced BLOB/File/Object Store support

We are planning the following roadmap for 2015

IBM Confidential

Page 37: "Going Offline", one of the hottest mobile app trends

Notices and DisclaimersCopyright © 2015 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM.

U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM.

Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided.

Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice.

Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary.

References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business.

Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation.

It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law.

Page 38: "Going Offline", one of the hottest mobile app trends

Notices and Disclaimers (con’t)

Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right.

• IBM, the IBM logo, ibm.com, Bluemix, Blueworks Live, CICS, Clearcase, DOORS®, Enterprise Document Management System™, Global Business Services ®, Global Technology Services ®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, SoDA, SPSS, StoredIQ, Tivoli®, Trusteer®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.

Page 39: "Going Offline", one of the hottest mobile app trends

Thank YouYour Feedback is

Important!

Access the InterConnect 2015 Conference CONNECT Attendee Portal to complete your session surveys from your smartphone,

laptop or conference kiosk.