Download Rational software Presentation Template

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Informix User Forum 2005
Moving Forward With Informix
Cloudscape –
Past and Present
Frank Koconis
Advisory Software Engineer/IBM
Atlanta, Georgia
December 8-9, 2005
1
IBM Software Group | DB2 Information Management Software
Outline
 History
 Key Features
 Deployment Options: single- or multi-user
 Running on Small Devices (J2ME)
 Development environments for Cloudscape
 Cloudscape as a Development Database
 Synchronization with Enterprise Databases
 Derby is Cloudscape
 Summary
IBM Software Group | DB2 Information Management Software
What is Cloudscape?
An embeddable, lightweight, relational SQL
database engine for Java.
IBM Software Group | DB2 Information Management Software
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
IBM Software Group | DB2 Information Management Software
Cloudscape- Key Features
IBM Software Group | DB2 Information Management Software
Cloudscape- Key Features
 100% Pure Java
 Completely portable to any hardware, any OS
 Only requires JVM (J2SE 1.3 or higher)
 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
IBM Software Group | DB2 Information Management Software
Key Features (continued)
 "Zero" Administration
 No need for DBA at customer site
 Users may even be unaware that a database engine is present
 Lightweight
 Approx. 2MB “footprint”
 Can run on many “palm”-size devices (new feature!)
 Scales to Moderate Size
 No defined limits on table sizes
 Table size limit of 2GB in some environments (OS limit)
 Existing customer databases of >10 GB working well
 Supports Disk Encryption
 Tested with IBM JCE
IBM Software Group | DB2 Information Management Software
Key Features (continued)
 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!)
 Distributed transaction support (new!)
 Participates in XA transactions with other database systems
IBM Software Group | DB2 Information Management Software
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)
 Scrollable Cursors (result sets)
 Cascading Delete
 Internationalization/Localization Support
IBM Software Group | DB2 Information Management Software
IBM Products Using Cloudscape
 WebSphere (WSAD and WAS)
 Cloudscape used for sample applications
 Can handle pooling of Cloudscape connections
 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
IBM Software Group | DB2 Information Management Software
Deployment Options: single- or multi-user
IBM Software Group | DB2 Information Management Software
Apache Derby Architecture
 Two Deployment Options
Embedded
• Derby disappears into the application
• Zero Admin
Network Server
• Familiar client-server architecture
• Low Admin
 Additional Option for Development
 Embedded Network Server
IBM Software Group | DB2 Information Management Software
Cloudscape Architecture: Embedded
Java Virtual Machine
(JVM)
Application
JDBC
• Database only accessible from single JVM
• Java/JDBC only
• No network connectivity
• Any number of concurrent connections
from any number of threads in this JVM
•Typically a single application
(but could be multiple)
Derby engine
Database(s) on disk
IBM Software Group | DB2 Information Management Software
Cloudscape Architecture: Network Server
Java Virtual Machine
(JVM)
-Multiple Client applications
-Remote or local
Derby Network
Server
Derby engine
Client Applications via
Derby Network Client
DB2 Universal JDBC Driver
(JCC)
CCC (CLI/ODBC)
PHP / Perl on top of ODBC
Database(s) on disk
IBM Software Group | DB2 Information Management Software
Running on Small Devices (J2ME)
IBM Software Group | DB2 Information Management Software
J2ME/CDC/Foundation
 J2ME – Java 2 Micro Edition
 CDC – Connected Device Configuration
 Foundation Profile 1.0
 Set of java core libraries supported
 Sub-set of J2SE 1.3
 Set-top boxes, embedded servers, cash registers
 PDA’s starting to use J2ME/CDC/FP
 Not cell-phones, that’s J2ME/CLDC/MIDP
 Uses subset of JDBC 3.0 (JSR-169)
 Look for the abbreviation: J2ME/CDC/FP
IBM Software Group | DB2 Information Management Software
Cloudscape on J2ME
 Same Jar file – derby.jar
10.1 supports J2SE 1.3, 1.4, J2SE 5.0, J2ME/CDC/FP
J2ME/CDC/FP is new for 10.1
 Only Cloudscape embedded supported
 Application development expected to be on J2SE
 Network Server, Client, JCC not supported in J2ME
 On-disk database format remains unchanged
Can copy unencrypted databases between J2ME, J2SE and J2EE
IBM Software Group | DB2 Information Management Software
How do you tell that it’s J2ME?
 Sysinfo will report J2ME info
------------------ Java Information -----------------Java Version:
J2ME Foundation Specification v1.0
Java Vendor:
IBM Corporation
Java home:
c:\_work\p4\djdt1\wctme5.7\ive
Java classpath:
c:/_work/svn_clean/trunk/classes;c:/_work/svn_clean/trunk/tools/java/jakarta-oro2.0.8.jar
OS name:
Windows XP
OS architecture: x86
OS version:
5.1 build 2600 Service Pack 1
Java user name: djd
Java user home: C:\Documents and Settings\Administrator
Java user dir:
C:\_work\svn_clean\trunk\systest\out
java.specification.name: J2ME Foundation Specification
java.specification.version: 1.0
--------- Derby Information -------JRE - JDBC: J2ME - JDBC for CDC/FP 1.0
[C:\_work\svn_clean\trunk\classes] 10.2.0.0 alpha - (220112M)
---------------------------------------------------------------------- Locale Information ----------------…
IBM Software Group | DB2 Information Management Software
Development Environments for Cloudscape
IBM Software Group | DB2 Information Management Software
Derby Eclipse Plug-In
Integrates with Eclipse





Manage network server
Run ij
Execute sql scripts
Run sysinfo
Create and run database
applications
IBM Software Group | DB2 Information Management Software
Cloudscape Workbench
Eclipse Rich Client Platform (RCP)
 stand alone
 only ~25 meg






Browse database
Create objects
Insert/update/delete
Extract/load tables
Generate DDL
Migrate Derby to DB2
IBM Software Group | DB2 Information Management Software
Gluecode SE
Lightweight Java App Server
 Apache Geronimo
 J2EE 1.4
 Apache Derby
 Messaging Services (ActiveMQ)
 Management Console
IBM Software Group | DB2 Information Management Software
Other Development Options
 C/C++
 PHP
 Zend core: http://www-306.ibm.com/software/data/info/zendcore/
 Perl
 Python
 Other languages (ODBC through Network Server)
IBM Software Group | DB2 Information Management Software
Cloudscape as a Development Database
IBM Software Group | DB2 Information Management Software
Cloudscape as a Development Database

The problem
 Developers on large projects need a database for unit testing
 Usual practice: a development database (such as IDS) on a server

However, this has many disadvantages
 Must pay for database license (IDS or DB2 UDB) on 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!
IBM Software Group | DB2 Information Management Software
Cloudscape as a Development Database (cont.)

A better solution: A Cloudscape database for each
developer
 Create a “master” database, then copy 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
“enterprise” database (IDS, DB2 UDB, Oracle, etc.)
IBM Software Group | DB2 Information Management Software
Synchronization with Enterprise Databases
IBM Software Group | DB2 Information Management Software
Synchronization with Enterprise Databases
 Java sync client for Cloudscape
 Works with DB2Everyplace Sync Server
 100% Java
 Synchronize Cloudscape clients to any database
supported by DB2E Sync Server, including Cloudscape
 DB2 UDB V7 and V8; also DB2 on zSeries and iSeries
 IBM Informix (IDS)
 Oracle
 MS SQL Server
 Sybase
 IBM Cloudscape
IBM Software Group | DB2 Information Management Software
DB2 Everyplace Sync Server Architecture
IBM Software Group | DB2 Information Management Software
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






Data subscription by user or group, with 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
Scalable
 Supports WAS Server Groups for high availability and scalability
 Automatic upgrades of client database software
IBM Software Group | DB2 Information Management Software
Derby is Cloudscape
IBM Software Group | DB2 Information Management Software
IBM Cloudscape based on Open-source Apache
Derby
 IBM contributed Cloudscape relational database
technology to Apache Software Foundation
 Derby
 Accepted as Apache Incubator Project in August ’04
Derby
 No “viral” open source licensing issues with
either Apache Derby or IBM Cloudscape
 No fee required by Apache or IBM
IBM Software Group | DB2 Information Management Software
IBM Cloudscape based on Open Source Apache
Derby
 Apache Derby milestones
 Sun Microsystems Engineers join Derby project Q2’05
 Graduates from Apache Incubator in July 2005
 Apache Derby 10.1 available in July 2005
 IBM ships Cloudscape 10.1 in August 2005
 Sun announces plans to ship Derby with
Derby
 NetBeans development tool
 Java Enterprise System application and portal servers
 Still no “viral” open source licensing issues
with either Apache Derby 10.1 or IBM
Cloudscape 10.1
IBM Software Group | DB2 Information Management Software
Apache Derby? IBM Cloudscape?
Apache Derby
 Complete relational database
 Standards-based





Small footprint
Zero admin
Secure
Open Source
Apache 2.0 License
IBM Cloudscape
 Installers
 IBM Java Runtime (JRE)
 Examples and scripts
 DB2 Universal JDBC Driver
 Support for ODBC & PHP
 Eclipse plug-ins
Database browsing
DB2 migration
 Translated error messages and
manuals (9 languages)
 Technical Support
IBM Software Group | DB2 Information Management Software
Distribution Strategies
 Apache Derby
 Available at Apache from the Apache DB Project
 Bundled in Sun, Eclipse, Linux, and other distributions
 IBM Cloudscape: Based on Apache Derby
 No-charge download of IBM Cloudscape binary from
www.ibm.com/developerworks/cloudscape
•
Application developer support via IBM developerWorks
− Manuals, How-To Articles, Forums, …
 Fully Supported Product Version
− Full IBM 24x7 IBM Support Available
Open Source Via Derby
Downloadable from IBM
Derby
Fully Supported IBM Product
IBM Software Group | DB2 Information Management Software
Cloudscape- Summary
 100% Java
 Full RDMS functionality with a small footprint
 Embeddable
 Zero-admin
 Standards-compliant
 Low-cost development
 Open-source
IBM Software Group | DB2 Information Management Software
For More Information
 Apache Derby web site
 http://db.apache.org/derby
 Apache Derby mail lists
 http://db.apache.org/derby/derby_mail.html
 developerWorks Cloudscape Zone
 http://www.ibm.com/developerworks/cloudscape/
 Documentation
 http://publib.boulder.ibm.com/infocenter/cldscp10/index.jsp
IBM Software Group | DB2 Information Management Software
For More Information (continued)
 Samples:
 https://w3.opensource.ibm.com/horde/chora/cvs.php/db2drv/php/p
hp/tests
 PHP Driver & Zend Core Information
 http://www-306.ibm.com/software/data/info/zendcore/
 http://www128.ibm.com/developerworks/db2/library/techarticle/dm0507hutchison/
 http://livedocs.phpdoc.info/index.php?l=en&q=ref.ibm-db2
 http://cvs.php.net/co.php/pecl/ibm_db2
 http://cvs.php.net/pecl/ibm_db2
IBM Software Group | DB2 Information Management Software
Coming Soon New Book (Due in November):
Apache Derby -- Off to the Races
 Includes Details of IBM Cloudscape (Hardcover)
 By Paul C. Zikopolous, George Baklarz, Dan Scott
 ISBN 0131855255
 http://www.devx.com/IBMDB2/Link/29722
Informix User Forum 2005
Moving Forward With Informix
Cloudscape –
Past and Present
Frank Koconis
[email protected]
Atlanta, Georgia
December 8-9, 2005
40