39
IBM Pervasive Databases: DB2 Everyplace and Cloudscape Frank Koconis Partner Enablement Consultant / IBM Information Management Session: M14 Thursday, May 26, 2005 12:30 PM - 1:40 PM Platform:

IBM Pervasive Databases: DB2 Everyplace and Cloudscape

  • Upload
    tyne

  • View
    48

  • Download
    0

Embed Size (px)

DESCRIPTION

Platform:. IBM Pervasive Databases: DB2 Everyplace and Cloudscape. Frank Koconis Partner Enablement Consultant / IBM Information Management Session: M14 Thursday, May 26, 2005 12:30 PM - 1:40 PM. Contents. The Problem: Data storage on mobile Devices DB2 Everyplace Cloudscape - PowerPoint PPT Presentation

Citation preview

Page 1: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

IBM Pervasive Databases:DB2 Everyplace and Cloudscape

Frank KoconisPartner Enablement Consultant / IBM Information Management

Session: M14Thursday, May 26, 200512:30 PM - 1:40 PM

Platform:

Page 2: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

2

Contents

• The Problem: Data storage on mobile Devices

• DB2 Everyplace

• Cloudscape

• Server Connectivity: DB2 Everyplace Sync Server

• The Ultimate Question

• Summary

Page 3: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

3

The Problem: Data Storage on Mobile Devices

• Mobile devices operate in an embedded (disconnected) or “occasionally-connected” environment

• Example: Asset-tracking system for a construction company• PDA’s are used at job sites to check out tools to workers

• Workers check tools back in when they finish using them

• Tools and worker’s badges are bar-coded

• Once per day, each PDA “syncs” to central server to upload transactions and receive info on new tools and employees

• Very successful: Tools stopped “disappearing”

Page 4: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

4

The Problem (continued)

• Mobile applications cannot use traditional RDBMS’s

• Developers often use “flat-file” storage on mobile devices, but this has problems• Requires a lot of coding

• Error-prone

• No transaction processing, indexing, joins, etc.

• A better solution: use a small-footprint database engine, such as IBM’s DB2 Everyplace or Cloudscape

Page 5: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

5

DB2 Everyplace

Page 6: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

6

What is DB2 Everyplace?

The small-footprint relationaldatabase for mobile computing

Page 7: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

7

The DB2 Everyplace Architecture

• Click to add text. First bullet point Times 25 point• Text In bullet form Times 25 point

• Second level Times 21 point• Third level Times 19 point

Page 8: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

8

DB2 Everyplace- Key Features• Written in highly portable C

• Runs on most popular devices• Palm OS, Windows CE/Pocket PC, Symbian, QNX Neutrino, Linux,

and WinNT/2000/XP)

• Ideal for embedded & mobile applications• Very small footprint (about 200K)• Zero admin on client• Supports PDA memory expansion cards, including Microdrive

• Support for over a dozen national languages

• Local data encryption

Page 9: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

9

DB2 Everyplace- Rich Database Functionality

• Wide range of data types including BLOB’s

• Advanced indexing

• Primary-key and check constraints

• Transaction support

• Identity (auto-increment) columns

• GROUP BY and ORDER BY

• Prepared statements

Page 10: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

10

DB2 Everyplace Functionality (continued)

• Read-only media support on WinNT/2000/XP & Linux

• Remote stored procedure calls

• Scrollable cursors

• Supports standard programming interfaces• DB2 CLI (subset of ODBC)• JDBC (subset)• .NET

• Develop using C/C++, Java, C#, Visual Basic or JSP’s

Page 11: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

11

DB2 Everyplace Components

Component Name DescriptionDB2 Everyplace Database Database Engine

High performance data store for managing and using data on mobile and embedded devices

DB2 Everyplace Sync Server Synchronization ServerMobile user management and synchronization of enterprise data with mobile and embedded devices

DB2 Everyplace

Software Development Kit

Application Development ToolsRAD tools, development plug-ins, whitepapers and samples enabling developers to create DB2 Everyplace applications quickly

Page 12: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

12

RAD Tools in the DB2 Everyplace SDK

• Mobile Application Builder (MAB)

• AppForge plug-in

• WebSphere Studio Device Developer (WSDD) plug-in

Page 13: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

13

Mobile Application Developer

• Generates GNU-compatible C code for Palm OS

• Generates Java code for devices supporting the Sun PersonalJava API• WinCE/PocketPC• Symbian OS V6 & V7• Sharp Zaurus• PalmOS 5 (StrongARM or XScale

processor required)

• Rapid prototyping- generates apps without writing any code

Page 14: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

14

MAB- Features

• Fully supports relational database operations• Database joins on a single form• Automated BLOB data handling• Databases on expansion cards (Microdrive, CF, SD Card, Memory

stick)• Supports automatic form creation directly from database table

definitions

• Easy to use- visually create and edit forms by selecting controls from a palette

• Sync API support for generation of synchronization code

Page 15: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

15

Mobile Application Builder

Page 16: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

16

Other RAD tools in the DB2 Everyplace SDK• AppForge

• AppForge MobileVB is an add-in for Microsoft Visual Basic• Provides development environment for Palm, Pocket PC & Symbian• Develop once, deploy anywhere! (platform independence)• IBM provides plug-in for AppForge MobileVB to enable DB2

Everyplace application development

• Websphere Studio Device Developer (WSDD)• Enables developers to extend e-business applications to mobile

devices such as cellular telephones and PDA’s• Extends the WebSphere family to build applications based that

support J2ME™ as well as non- J2ME™ configurations• Lets developers create Java based DB2 Everyplace applications• Supports both relational database and synchronization features

Page 17: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

17

Cloudscape

Page 18: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

18

What is Cloudscape?

An embeddable, lightweight, relational SQL database engine for Java.

Page 19: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

19

Cloudscape History

• Cloudscape, Inc. founded in 1996 by a team of experts from Informix, Illustra, Oracle and Sybase

• Purchased in September of 1999 by Informix Corporation

• Acquired by IBM with Informix purchase in July of 2001

• Released by IBM as open source (“Derby”) in September of 2004

Page 20: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

20

Cloudscape- Key Features

• Pure Java (runs on any machine with a JVM!)

• Embeddable• Can be installed as a JAR file (as part of a Java application)• Can be started within an application• Installation, startup and shutdown are invisible to user

• Fully-functional RDBMS

• Adheres to standards• JDBC• SQLJ• ANSI SQL-92

Page 21: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

21

Cloudscape- Key Features (continued)

• "Zero" Administration• No need for DBA at customer site• Users may even be unaware that a database engine is present

• Lightweight• Can run in as little as 8MB

• Scales to Moderate Size• No defined limits on table or row sizes• Table size limit of 2GB in some environments (OS limit)• Existing customer databases of about 10 GB working well

Page 22: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

22

Cloudscape- Key Features (continued)

• Supports Disk Encryption• Tested with IBM JCE

• Easy for Application Developers to Use• To set up, just copy Cloudscape JAR files and set Java

CLASSPATH• Database engine starts automatically when application attempts to

connect to it

• Cloudscape databases are completely portable• To move a Cloudscape database to another machine, just copy it!

(This works even if the machines have different OS or hardware!)

Page 23: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

23

Cloudscape is a Fully-Functional RDBMS

• Indexes

• Views

• Triggers and Stored Procedures

• Constraints (primary-key, foreign-key, unique, check)

• Concurrency Support• Transactions (with crash recovery)• Savepoints• Row-level locking, with escalation• JDBC isolation levels (including dirty-read)

Page 24: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

24

Cloudscape Database Functionality (continued)

• Scrollable Cursors (result sets)

• Cascading Delete

• Internationalization/Localization Support

• Supports multi-user access (using Network Server)

• SQL syntax is very similar to DB2 UDB

“Develop on Cloudscape; deploy on DB2”

Page 25: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

25

The Cloudscape Network Server• Allows multiple local and/or remote clients to concurrently

access the same Cloudscape databases• Clients may be JDBC, ODBC or .Net*• 100% Java

JVM

DRDA

Application

Server

Cloudscape DB

Cloudscape DB

Cloudscape DB

JDBCClient

JDBC-DRDADriver

JDBCClient

JDBC-DRDADriver

ODBCClient

ODBC-DRDADriver

ODBCClient

ODBC-DRDADriver

.NetClient

.Net-DRDADriver

*- Currently Under Development

Page 26: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

26

Cloudscape as a Development Database

• The problem• Developers need a database for unit testing of their code• Usual practice: a development database (DB2 UDB) on a server

• However, this has many disadvantages• Must pay for DB2 UDB license on the server• Requires a DBA to set up and administer the development database• BIGGEST PROBLEM: Whenever one developer “trashes” the

database, work stops for everyone, and the DBA must rush to fix it!

Page 27: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

27

Cloudscape as a Development Database (cont.)

• A better solution: A Cloudscape database for each developer• Create a “master” database, then copy it onto developer workstations• If any developer “trashes” it, he/she just re-copies from the master!• No DBA required, and other developers are not affected!

• Later, when modules are integrated, switch to DB2 UDB

“Develop on Cloudscape; deploy on DB2”

Page 28: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

28

IBM Products which use Cloudscape• WebSphere (WSAD and WAS)

• Cloudscape used for sample applications• Can handle pooling of Cloudscape connections• Integration plug-in allows easy development in Eclipse environment

• Tivoli Monitor and Tivoli Storage Area Network Manager• Both use embedded Cloudscape

• Lotus LearningSpace• Uses embedded Cloudscape

• IBM Workplace Client• Uses embedded Cloudscape

• Many others deployed and under development

Page 29: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

29

Server Connectivity:The DB2 Everyplace Sync Server

For DB2 Everyplace and Cloudscape

Page 30: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

30

DB2 Everyplace Sync Server Architecture

Page 31: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

31

DB2 Everyplace Sync Server- Key Features

• Efficient 2-way synchronization• Supports most server databases (DB2 UDB, IDS, Lotus Domino,

Oracle, SQL Server, Sybase and Cloudscape) on many platforms• Optimized, secure transmission (56-bit or 128-bit encryption)

• Centralized administration• User and group administration• Data subscription by user or group, with horizontal and/or vertical

data filtering• Customizable conflict resolution (using “user exits”)• Automatic distribution of data, files and applications• Monitor synchronization progress in real-time• Zero administration on mobile device

Page 32: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

32

DB2 Everyplace Sync Server Features (cont.)

• Scalable• Supports WAS Server Groups for High Availability and Scalable

configurations• Automatic upgrades of sync client and DB2 Everyplace or

Cloudscape database software without user interventions

• Remote Stored Procedure support• Allows mobile applications to access server data sources in real time

• Now works with Cloudscape• Cloudscape supported as a mobile client and as a server data source

Page 33: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

33

Sync Server Administration:Mobile Device Administration Center

Page 34: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

34

Cloudscape Synchronization

• New sync client for Cloudscape

• Works with DB2Everyplace Sync Server

• 100% Java

• Synchronize Cloudscape clients to any database supported by DB2 Everyplace Sync Server, including Cloudscape• DB2 UDB on all platforms; also DB2 on zSeries and iSeries• IBM Informix (IDS)• Oracle• MS SQL Server• Sybase• Cloudscape

Page 35: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

35

And Now- The Ultimate Question

(to which the answer is not 42)

Page 36: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

36

DB2 Everyplace or Cloudscape?DB2 Everyplace Cloudscape

Footprint ~200K 8MB+

Database size Small Small-to-medium

Language C Java

Platform support Many Any (except PDA’s)

DB Access Methods ODBC,OLE, .Net, JDBC JDBC, ODBC, .Net (future)

Concurrent Users One Small group (using the Cloudscape Network Server)

Synchronization DB2 Everyplace Sync Server DB2 Everyplace Sync Server

Page 37: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

37

For More Information

• DB2 Everyplace• http://www-306.ibm.com/software/data/db2/everyplace/

• Cloudscape (and the Cloudscape Network Server)• http://www-306.ibm.com/software/data/cloudscape/• http://63.209.20.13/cgi-bin/db2www/cloudscapeforum.d2w/main• http://incubator.apache.org/derby/

• DB2 Everyplace Sync Server• http://www-306.ibm.com/software/data/db2/everyplace/syncserver.html

Page 38: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

38

Questions?

Page 39: IBM Pervasive Databases: DB2 Everyplace and Cloudscape

39

IBM Pervasive Databases: DB2 Everyplace and CloudscapeSession: M14

Frank KoconisPartner Enablement Consultant / IBM Information Management

[email protected]