You are on page 1of 12

I Intertec Case Study

Case Study
Oracle to DB2 Migration
For a leading European Energy Utility

Confidential 1-12 July 2001


I Intertec Case Study

Project EMS: “Energy Management System”

Project Challenge

Meet the business goal of delivering business intelligence to


more number of end users, at a lower cost of ownership.

Solution Snapshot

Renovate existing Client/Server based Energy Management


System to Web based solution. Replace the Oracle/NT database
server with a DB2/Linux database.

Result

Provide the customers a secure, reliable, and fast access to


their information base and related reports at an affordable
cost.

Confidential 2-12 July 2001


I Intertec Case Study

Background

A fast growing European utility Management Company offers Energy Management


System (EMS) to industrial and commercial customers with cutting-edge
technologies for management of consumption of power across the client’
s
premises. The companies' solution was based on client/server technology using
PowerBuilder (PB) client and Oracle server.

In early 2000 several customers of the Company preferred delivery of information


through the Internet. To meet the immediate demand, the company provided a
quick solution using Citrix Metaframe. However, it was soon realized that the cost
of adding additional users with the Citrix solution was too high. Further, the
current NT/Oracle based solution was not able to support the increasing number of
users effectively.

The company engaged a consultant to study the problem and suggest most
suitable strategy to effectively meet expected growth rate of the customer base,
and the need for a robust, scalable, secure and affordable solution. The consultant
suggested migrating to Linux, and implementing an n-tier architecture solution
using DB2 as the database.

Based on the Consultant’


s recommendations the Company decided to shift to a
Java / web application, to be implemented on a combination of DB2/Linux and
J2EE platform, which can be securely (SSL) accessed by prospective clients
through popular web browsers, IE and NS.

They contracted with Intertec Communications to develop this solution.

Confidential 3-12 July 2001


I Intertec Case Study

Solution Approach
The table below summarizes the whole project:

Application Distributed Energy Management System

Business ü Lower cost of Ownership


Benefits ü Distributed Web based access
ü Ease of software distribution; wider user base
reach
ü Improved productivity
ü Saving in clients’energy utility expenditure

Software ü JDK 1.2


ü Apache Web Server
ü TomCat JSP/ Servlet engine
ü IBM DB2® Universal Database(tm) for Linux

Hardware Compaq Pro. (Intel Pentium-III server)

Development Intertec’
s eStudio, Erwin, Stored Procedure Builder of
Tools IBM, Rational Visual Test, Front Page 2000, Web
Intelligence of Business Objects

Services Team from Intertec Communications Ltd., comprised of


four developers, a DBA, a Solution Specialist, a QA
specialist, and a Project Manager.

As platform solution, Intertec proposed a platform consisting of Apache


WebServer, Tomcat for JSP and DB2 running on Linux, since the Company wanted
a cost effective solution. The Company found this acceptable.

The software solution approach needed to be handled in several strata as


listed below.

1. The Company stipulated that the reports (more than 30 in number, and
growing) must be dynamically identified, constructed, populated and
presented as Web pages.

Confidential 4-12 July 2001


I Intertec Case Study

2. A J2EE type solution consisting of a request dispatcher, JSPs for


presentation, and Java Beans to hold the business logics and to interface
with DB2/Linux.

3. An Oracle to DB2/Linux Platform & Data Migration strategy.

Overall, this approach provided the best development plan and project
management [see Appendix A for initial project stage considerations].

Solution Details:
Below is a schematic of the existing Power Builder application setup:

Client Server

Database
(Oracle 7.3)

Below is a schematic of the renovated solution setup:

Table Report JSP

Client
Graph Report JSP
Browser Request Java
(IE or Dispatcher Beans
NS) Channel Report JSP

Custom Report JSP

HTML
Database
(DB2)

Confidential 5-12 July 2001


I Intertec Case Study

Automatic Table Handling:

We retained the PowerBuilder designed report formats and, by parsing the text
version of the report definitions, we created Java Objects with properties like
graphs/ tables, # of bars/ # of columns, etc. In order to minimize tool-relearning
strains we retained the basic look and feel of the pages for the logged in user.
The Request Dispatcher would identify the report type chosen by the user and
redirect the request to the corresponding JSP module. The JSP modules would …

ü Further identify the specific report variant and access the matching report
object
ü Interpret the report properties and build it
ü Using the Client ID, prepare a dynamic SQL query to populate the table
ü Send an HTML response to present the report.

The report formats were thoroughly refurbished to behave like web pages, as
against the plain windows of PB system. The web pages further provided options
to reformat the presented report in 10 other ways. User could simultaneously
view as many report pages as required.
We used Business Objects Designer to design the static reports of the existing PB
system and presented them using Web Intelligence. This enabled quick
customization saving lot of development time and efforts [ref. Appendix C for an
example Business Objects report].

Database Migration:

The Company has already converted their business solution process into a set of
intricate SQL Table relationships, which, from the ID of the user logged in,
systematically lead to all the information stores and report formats the user is
privileged to access. One set of tables contains parametric data to identify the
user and related report definitions and privileges. The definitions contain
mathematically derived functional relationships among the data tables
A second set of tables contains data relating to minute-by-minute Kwh of power
consumed at various metered points in the user premises. Each meter feeds a

Confidential 6-12 July 2001


I Intertec Case Study

distinct table and so the number of data tables getting defined in the table space
with identical structures is quite high.
Following table summarizes some of the important database metrices

Existing Oracle 7.3 New DB2/ Linux


Metrix system system
# Tables 90 90
26 Parametric tables 26 Parametric tables
74 Data tables based on 74 Data tables based on
6 table structure types 6 table structure types
# Views 16 16
# Indexes 40 40
# Stored Procedures 7 (PL/ SQL) 4 (Java), other 3 made
into Beans
# Triggers 4 4
Total database size 730 Mb. (including 636 Mb.
(development site some replicated data)
only)

The Database Migration was found to be a critical part of this project as the
existing Oracle 7.3 database had to be completely moved onto DB2/Linux which
includes Schemas, Tables, Views, Stored procedures, Triggers, Indexes and last
but not least, the actual data, stored in Oracle tables.

• The Schema for the existing database was extracted using Erwin, the data
modeler.
• The extracted Schema was migrated to DB2/Linux using Erwin with some
limitations in transferring Stored Procedures and some datatypes. [see
appendix B for screen shots of some ER diagrams]
• Four of the Stored Procedures (SPs) from Oracle PL/SQL were manually
transformed using Stored Procedure Builder of IBM and put into DB2/Linux.
Three other SPs were effectively transformed into middle tier Java Bean
components as they were either not table specific or involved significant
business logic.

Confidential 7-12 July 2001


I Intertec Case Study

• Data from the Oracle 7.3 has been migrated to DB2/Linux using data
migration tool developed by Intertec.

Testing processes

§ Checksum, row level and table level, for ensuring correctness of data
migration.
§ Use of Rational Visual Test for checking functionality of renovated application
Ø 17 Scenarios
Ø 3 Suite Managers

Post-Project experiences

§ Java Stored Procedures affect performance. Using C++ code may be a


better alternative.
§ Business Intelligence based reports provide higher development productivity
and greater user experience.
§ The MVC approach recommended under J2EE paradigm truly provides an
intuitively convenient arrangement for related development efforts.

Confidential 8-12 July 2001


I Intertec Case Study

Appendix A
List of Issues & considerations while designing
the solution strategy
ü DB admin to be considered

ü Performance tuning

ü Use of Erwin tool

ü Databases & Table spaces

ü Table level statistics

ü Design change in Migration effort? – Re-customization

ü # Programs customized

ü # New programs

ü # Changed programs

ü # Of SQL calls – classify

ü Cursor handling

ü Static / Dynamic / CLI interfaces for SQL

ü Automatic Reports considerations

ü Applications outside of the current application accessing or feeding the db

ü Current application accessing or feeding other databases

ü Stored procedure issues

ü Trigger issues

ü Past data migration strategy

ü Transition strategy

ü Lessons Learnt

ü Test automation – Visual test / WinRunner

Confidential 9-12 July 2001


I Intertec Case Study

Appendix B
E R Diagram in the application

Zoom B

Zoom A

Confidential 10-12 July 2001


I Intertec Case Study

Appendix B (contd..)

Zoom A

Zoom B.

Confidential 11-12 July 2001


I Intertec Case Study

Appendix C
A Typical Channel Report generated using
Business Objects.

Channel Report - Chn101


Dstamp Tstamp Value Code
20010128 100 8034 44
20010128 200 8033 44
20010128 300 8067 44
20010128 400 8033 44
20010128 500 8000 44
20010128 600 8067 44
20010128 700 8033 44
20010128 800 8067 44
20010128 900 8000 44
20010128 1000 8066 44
20010128 1100 8034 44
20010128 1200 8033 44 1 2 3 4 5 6 7
20010128 1300 8033 44 8 9 10 11 12 13 14
20010128 1400 8067 44
15 16 17 18 19 20 21
20010128 1500 8033 44
22 23 24 25
20010128 1600 8034 22
20010128 1700 8066 22
20010128 1800 8034 22
20010128 1900 8033 22
20010128 2000 8067 22
20010128 2100 8066 22
20010128 2200 8067 22
20010128 2300 8033 22
20010128 2400 8067 22
20010128 2500 8033 22

Confidential 12-12 July 2001

You might also like