32

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Embed Size (px)

Citation preview

Page 1: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris
Page 2: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Database Mobile Server and Java DB Enable Java Mobile Application Development

Boris Berdichevskiy, DMS Architect, Server TechnologiesRick Hillegas, Java DB Architect, Java Core Libraries Bhaskar Vooradi, Director – Architecture & Innovation, Lochbridge

Oct 2nd, 2014

Page 3: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 3

Safe Harbor StatementThe following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Page 4: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Program Agenda

Oracle Database Mobile Server Highlights

Oracle Java DB Highlights

The Lochbridge Solution

1

2

3

Page 5: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 5

Oracle Database Mobile ServerIn a glance

Page 6: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

“Oracle DMS has made it possible to move one of our internal applications into the mobile arena. We were able to integrate online with offline activity in a user friendly manner. Our target is to service over 10,000 internal customers with this application”

Brian T. Schultz, VP HR Information Technology

Honeywell International

“We are deeply invested in Oracle technology for all our database needs and Web applications. Oracle Database Mobile Server helped us extend our apps to our volunteers without having to worry about transaction management, security or other data-related issues in quick time.”

Anand Adkoli, Architect

"Oracle Database Mobile Server gives mFinity EMMP a distinctive advantage and strength over any other enterprise mobility management solutions in the mobile industry by providing the highest level of data integrity for enterprise mobile data. With Oracle DMS, we can now offer the complete end-to-end enterprise mobility solution to our customers.“

Daniel Pahng, President

"OpenPharma is used every day by almost 1000 people across 30 networks, both in the field and at head offices. Oracle's Mobile Server engine allows OpenPharma to integrate management of all data streams between users and centralized bases. The new Mobile Server version will make it possible to extend the solution for all Nomadvantage clients equipped with the OpenPharma mobile CRM.“

Fabrice Billiotel, Lead DBA

Indian Youth Congress

mFrontiers, Inc.

Nomadvantage

Page 7: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 7

• DMS Purpose– Scalable data

synchronization between local client data store (BDB/JavaDB/SQLite) and Oracle RDBMs, Oracle NoSQL

– Mobile client device management

– Mobile client application management

• Main Categories of Mobile Environments– Mostly Connected– Occasionally Connected– Mostly Disconnected

• Typical Use Cases– Mobile Sales Force– Mobile Field Service– Police/Ambulance units– Distributed mobile retail

stations– Remote embedded

diagnostic units– Polling data collection

The Landscape

Page 8: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Page 9: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 9

Mobile Server

Mobile Server

Application Server

OracleDatabaseServer

OracleDatabaseServer

Device ManagerSync Client

Users Application

Database

Client Mobile Server Oracle Database Server

Database Mobile Server

The HW Architecture

Page 10: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Oracle Database Mobile Server is:

– Scalability• Additional Mobile Servers can be deployed in a server farm to handle increased client

synchronization load.

– Security• On-the-wire data and application network communication can be encrypted.

– Reliability• Interrupted synchronization sessions resume where they left off.

– Customizability• Tailor to your unique environment

Page 11: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

– Scalable Asynchronous Architecture• Clients upload to server and download from the

server using In and Out Queues• Avoid locking the base tables• CPU intensive operations can be queued and

executed when the system is available

– Transport Independence• Any TCP/IP enabled carrier network can be used

for synchronization.

– Bi and Uni-directional Synchronization• Upload and download of data during

Synchronization.• Synchronization can be customized to allow only

upload.

– Data Sub-setting• DMS supports highly granular (column-level and

row-level) selection of base table data.• Dynamic data range based on logical record set

qualification

– Conflict/Error Detection and Resolution• DMS provides built-in conflict resolution

capabilities via the Server Wins/Client Wins rules.• Conflict resolution can be customized by

developer.• Mobile Server administrator can further manage

conflicts.

– Multi-Language/Multi-Platform Support

Key Features

Page 12: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 12

The Sync Architecture

• Publish and Subscribe Model– Users are assigned to group(s)– Groups/Users are subscribed to publications– Subscriptions are parameterized

Out………

………

Publication_1

Publication_2

Application A

Application B

User_1

Subscription

User_2

Publication Items

Publication Items

Publications

Subscriptions

Page 13: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Sync Features

– Synchronization Styles• Automatic Synchronization allows DMS to invoke synchronization in the background.• Manual Synchronization allows user or application to control synchronization timing.

– Schema Evolution• Application schema evolution can be supported by publishing new versions of client-side database

and matching application binaries. A large European customer, using DMS for several years, frequently updates their schema without disruption of service.

– Synchronize data from a 4000 person sales team and process daily work orders on a mobile phone in minutes with a 4-core middle tier and database server.

Page 14: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |

Device Management

– Device Management Client is automatically installed with Mobile Client.– Administrator can perform device management through Mobile Manager

• Retrieve and view individual device properties• Set device properties• Send device commands (e.g. retrieve log, install application, etc)• Creating new device commands (using OTL scripting language)

– In a major city, manage/deploy 1000 devices used in administering parking tickets on a standard 4 core system

Page 15: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 15

Oracle Java DBHighlights

Page 16: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 16

Why a Java Database

• Compile once, deploy everywhere• Single process (app + database)• Client app and server app use the same Java code in functions, procedures,

aggregates, and types.

Page 17: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 17

Java DB Highlights

• Full-featured RDBMS

• 100% Java

• Easy to get started with

• Small static footprint

• Multiple readers and writers

• Complex queries

• Crash-recoverable

• Pluggable

• Embeddable

Page 18: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 18

Storage Features

• Databases on disk, in jar files, in

memory

• Replication

• Scalability on multi-core machines

• Crash-recoverability

• Row-level locking

• Read/write optimizations

• Bulk operations

Page 19: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 19

Pluggable Features

• Functions/procedures

• Table functions

• User-defined types

• User-defined aggregates

• Character sort order

• Authentication

• Encryption provider

Page 20: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 20

Security Features

• Database encryption

• Users/roles

• Built-in and pluggable authentication

• Fine-grained data access controls

• Runs under a Java Security Manager

• SSL/TLS protected client/server traffic

Page 21: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 21

Customer Sampling

• Walmart

• Sony-Ericsson

• Nikko Systems Solutions, Ltd.

• GE Healthcare

• PartSearch Technologies

• TW Telecom

• Thermo Fisher Scientific

Page 22: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

22

In-Store Analytics - IOT Solution

Bhaskar VooradiDirector – Architecture & InnovationTwitter - @BvooradiEmailID – [email protected]

Page 23: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Consumer Shopping Preferences

Reference – A.T. Kearney Future of Stores Study. 2013

61%

31%

4%4%

StoresOnlineCatalogMobile

Page 24: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Top 10 Analytics - Retailers Want Most

1. How many customers enter the store

2. How many customers enter the store buy something

3. Which promotions attract customers

4. Where the customers go in the store

5. Times customers pick up own brand products instead of national brand

6. Where a specific type of customer goes in the store

7. How many times a specific customer enters a specific store

8. Service times

9. Out of stock items

10. Track demographics of private level credit card holders

Source – Brickstream What’s In-Store Study, 2014

Page 25: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Retail Industry Analytics

Brick & Mortar RetailersOn-line Retailers

Require the installation of devices to capture information

Difficult to identify user and what their activity in the store

Relatively new technologies

Difficult to provide real-time offers & promotions

Expensive

Easy to collect data from visitors to websites

Easy to identify user and their behavior

Effective and proven technologies to collect and analyze data

Easy to provide unique promotions and offers in real-time

In-expensive

Page 26: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Enter

Exit

Electronics Produce/Dairy

Shoes

Home FashionsHealth & Beauty

Weight Sensor

Stor

e M

anag

emen

t

In-Store Analytics using Sensors

Page 27: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Data Collection – Traditional Approach

Entrance Node Exit Node

Electronics Node

Produce/Diary Node

Home Fashions

Node

Shoes Node

Health & Beauty Node

School & Office Node

Toys Node

Men’s Node

Women’s Node

Kids Node

OracleDatabase

Page 28: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Data Collection – Optimized Approach

Entrance Node Exit Node

Electronics Node

Produce/Diary Node

Home Fashions

Node

Shoes Node

Health & Beauty Node

School & Office Node

Toys Node

Men’s Node

Women’s Node

Kids Node

OracleDatabase

GatewayNode

Page 29: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Optimized Approach – Technical Challenges

• To support this approach we need a lightweight & small foot print database

• Database should be bundled along with the embedded device

• Multiple nodes will be writing data hence we need transaction control

• Database should be portable across gateway modules with different operating systems

• Nodes should be able to connect to the Database over the network

Java DB can support the above requirements if deployed in Derby Network Server mode

Page 30: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Optimized Approach - Implementation View

Device1

Gateway Device

Oracle Database

Mobile Server

OracleDatabase

Device2

Device3 Device4

Device5

Device6

Device7

Device8

Device9

Device10

Device11

Device12

Page 31: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Java DB in the Device - Benefits

• Securely stores data from all the node devices

• Provides full featured database with standard ANSI/ISO SQL

• Significantly reduces network traffic between the devices and the cloud

• Automatically and securely syncs data between the gateway device and the cloud database

• Compact (2.6 MB footprint)

Page 32: Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Database Mobile Server and Java DB Enable Java Mobile Application Development Boris

Innovation Team (Bhaskar Vooradi, Vijay

Vardhan & Srikanth Kintali)