10
Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri Technical Editor Ward Spangenberg AMSTERDAM BOSTON HEIDELBERG LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE SYDNEY TOKYO Syngress is an imprint of Elsevier SVNGRESS

Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Embed Size (px)

Citation preview

Page 1: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Migrating to the Cloud

Oracle Client/Server

Modernization

Tom Laszewski

Prakash Nauduri

Technical Editor

Ward Spangenberg

AMSTERDAM BOSTON • HEIDELBERG • LONDON

NEW YORK • OXFORD • PARIS • SAN DIEGO

SAN FRANCISCO • SINGAPORE • SYDNEY • TOKYO

Syngress is an imprint of Elsevier

SVNGRESS

Page 2: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Contents

About the Authors xv

About the Technical Editor xvii

Introduction xix

CHAPTER 1 Migrating to the Cloud: Client/Server Migrationsto the Oracle Cloud 1

What Is Cloud Computing? 2

Cloud Computing Service Models 3

Cloud Computing Deployment Models 5

The Oracle Cloud 6

Legacy Client/Server Databases and Applications 10

Why Migrate? 11

Why Oracle? 13

Migration Strategies 16

Summary 19

Endnotes 19

CHAPTER 2 Identifying the Level of Effort and Cost 21

Complexity of Database and Application SQL

Migration Defined 24

Overall Estimating and Scoping Approach 25

Questionnaires 25

First-Pass Migration with Oracle SQL Developer 27

On-site Visit or Web Conference(s) 27

Migration Workshop 28

Scope Deliverables 28

Analysis and Design 28

Database Migration 29

Schema and Data 29

Stored Procedures 30

Triggers 30

Views 31

Application Migration 32

SQL Only 32

Language Migration 33

Language Migration: Sybase and SQL Server

C/C++ APIs 33

Service Enablement 34

Integration Architecture 34

Infrastructure Products, Utilities, and Tools 34

V

Page 3: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

vi Contents

Application Server Migration to Oracle WebLogic 34

Hardware and Software 35

Exadata and Exalogic: Database and Middleware

Hardware and Software 35

Oracle Virilization and Oracle Enterprise Linux:

Database and Middleware Hardware and Software 36

Operating System Migration 36

System, Customer Acceptance, and Performance

Testing 36

Moving to Production 37

Other Things to Consider.. 38

Project Management and Enterprise Architect 38

Migration Effort Examples 38

SQL Server Visual Basic Migration Estimate 39

Sybase C++, PowerBuilder, Java, and Business

Object Migration Estimate 40

DB2 PowerBuilder and Java Migration Estimate 40

Summary 42

Endnotes 43

CHAPTER 3 Methodology and Design 45

Migration Options 45

Methodology and Design 46

Assessment 47

Analysis and Design 51

Migration 55

Testing 62

Optimization 63

Deployment 65

Post-Production Support 66

Migration Services 66

Summary 67

CHAPTER 4 Relational Migration Tools 69

Initial Database Migration 70

Database API and Protocol Options 70

SQL Loader and External Tables 73

Oracle SQL Developer Migration WorkbenchDatabase Migration 73

Oracle Gateways 74

Oracle ETL and ELT Tools 75

Oracle Tuxedo Workbench for DB2 z/OS 76

Oracle GoldenGate 77

Page 4: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Contents vii

Third-Party Tools 77

Reducing Data Migration Time and Disk

Requirements 78

Matrix of Oracle and Third-Party Database MigrationTools 79

Initial Stored Object Migration 79

Matrix of Oracle and Third-Party Stored Object

Migration Tools 81

Application SQL Migration 83

Oracle SQL Developer Migration Workbench

Application Migration 84

Ispirer 84

SwisSQL 85

Unit Testing 86

Performance Testing 86

System Testing 86

Production Rollout 87

Oracle GoldenGate 87

Oracle CDC 88

ODI CDC Knowledge Modules 89

Matrix of Production Rollout Tools 89

Global and Niche Service Providers 89

Summary 90

Endnotes 91

CHAPTER 5 Database Schema and Data Migration 93

Database Migration Tools from Oracle 93

Database Schema Migration Tasks 95

Data Migration 102

Data Extraction 103

Data Staging and Transfer 104

Data Loading 106

Data Loading Using Oracle SQL*Loader 107

Data Loading Using the External Table Feature 110

Data Loading Using SQL Developer 112

Data Migration Using ETL Tools Such as ODI 113

Data Validation 113

Sample Sybase Database Migration to Oracle UsingOracle SQL Developer 115

Prerequisites for Schema Migration Using SQL

Developer 115

Database Schema Migration 117

Summary 129

Page 5: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

vifi Contents

CHAPTER 6 Database Stored Object Migration 131

SQL Developer Environment for Sample Migrations 133

Translation Scratch Editor 135

Stored Procedure Migrations 136

Oracle Differences 137

Top Challenges and Solutions 138

Example Sybase Stored Procedure Migration 139

Triggers I42

Oracle Differences 142

Top Challenges and Solutions 143

Example SQL Server Trigger Migration 144

Views 147

Oracle Differences and Top Challenges and

Solutions 147

Example SQL Server View Migration 148

Unit Testing 150

Setting Up the Unit Testing Environment and Creatingthe Unit Test 151

Unit Test of Oracle Stored Procedure 151

Unit Test of Sybase and SQL Server Stored Procedures ....151

Summary 153

CHAPTER 7 Application Migration/Porting Due to

Database Migration 155

Types of Application Changes 155

Factors Influencing Application Changes 156

Migration Options and Solutions 159

Manually Identifying Changes and Modifying

Applications 159

Migrating Applications Using Scripts and Tools 159

Emulation Technology-based Solutions 162

Application Migration Tasks 163

Database Connectivity Changes 164

Embedded SQL Changes 168

Application Code Changes 171

Database API Changes 173

Changes to External Interfaces and ReplicationSolutions 173

Error Handling 175

Performance Optimization 175

Application Build Process Changes 178

Summary 179

Page 6: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Contents ix

CHAPTER 8 Migrating Applications to the Cloud 181

Application Migration Options 182

Emulation/Web Service Enablement 183

Rearchitecture/Rewrite 184

Automated Migration 184

COTS 185

Moving to Noncoding Fusion Products 186

Rehosting 186

Portfolio Rationalization 187

Application Analysis 188

3GL Applications 190

4GL Applications 190

Target Languages and Environments 191

Java and Java EE 192

Java EE Frameworks 192

Oracle Application Development Framework (ADF) 193

Oracle Application Express (APEX) 193

Oracle Fusion Product Solutions 194

Application-Supporting Tools and Custom Scripts 195

Applications in the Cloud 195

Target Hardware and Software Stack Options 197

Building Your Own Nonvirtualized Cloud 198

Building Your Own Virtualized Cloud Platform 200

Oracle Virtualized Red Stack 202

"Cloud in a Box": Exalogic 203

Pros and Cons of Each Hardware and Software

Stack Option 205

Hosting Options 207

Summary 207

Endnotes 208

CHAPTER 9 Service Enablement of Client/Server

Applications 209

The Unique Client/Server Dilemma 210

Replacing Client/Server Systems with a

Cloud-based Application 211

Restructuring Client/Server Code 211

Reusing Client/Server Applications Using SOA 212

LegaSuite: Platform for SOA-Enabling Windows

Client/Server Applications 213

Step by Step for Creating an SOA Interface from a

Legacy Windows Client/Server Application 214

Page 7: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

x Contents

Development Process 217

LegaSuite Runtime Considerations 228

Sizing for Performance and Scalability 230

Load Balancing 231

Infrastructure Changes 233

Including Client/Server Application Logic with

Oracle Middleware 233

From Windows Client/Server Applications to SOA in

the Real World 234

Case Study In-Depth: Social Interest Solutions

Modernizes Public Assistance Enrollment Process

with LegaSuite 235

Summary 236

Endnotes 238

CHAPTER 10 Oracle Database Cloud Infrastructure

Planning and Implementation 239

Oracle Database Cloud Implementation Considerations 239

Server Consolidation and Virtualization

(IaaS and PaaS) 240

Workload Consolidation and Database Migrations to

Oracle (PaaS or DBaaS) 241

Database Considerations for Multitenant Applications(Software as a Service or SaaS) 245

Infrastructure Planning for Database Migrations to

Oracle (DBaaS) 247

Platform Considerations 248

Platform Sizing 252

Exadata System Sizing 254

Backup and Recovery and Disaster Recovery

Strategy 258

Monitoring and Management of the Oracle

Database Cloud 260

Summary 260

CHAPTER 11 Sybase Migrations from a Systems IntegratorPerspective, and Case Study 261

Why Consider Database Migration from Sybase to

Oracle? 262

Technical Challenges 266

Key Architectural Differences between SybaseASE and Oracle 267

Page 8: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Contents xi

Database Server 267

Memory Model 268

Transaction Processing 269

Analytics 269

Procedural Languages 270

Security 271

Backup and Recovery 271

High Availability 271

Partitioning and Storage 272

Database Clustering 272

Sybase Analytics Appliance versus Oracle Exadata. 273

Performance 273

Development Tools 273

Keeping the Current Sybase Environment Running

during the Migration 274

Migration Tools 274

Cost of Migration 275

Sizing the Target Oracle Database Environment 276

Infrastructure Migration Challenges 276

Server Consolidation 277

Oracle mLogica Case Study 278

Business Drivers 279

Situation Analysis 279

The Challenge 279

Implementing the Solution 280

Results 280

Summary 280

Endnotes 281

CHAPTER 12 Application Migration: Oracle Forms to

Oracle Application DevelopmentFramework 11g 283

Oracle Application Development Framework Introduction ..283

Oracle ADF Organizational Impact 284

Options: Rearchitect or Rewrite 285

Rearchitecting 285

Rewriting from Scratch 286

Migration/Rewrite: Common Implementation Steps 288

Forms-to-ADF Mapping 288

What Doesn't Map? 290

The ADF Data Model 290

Migrating Forms to ADF 290

Application Module Client Exposed Methods 292

Page 9: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

xii Contents

View Objects and Queries in the Application Module 293

ADF Task Flows 293

Other Forms-to-ADF Mappings 296

Table-based Search/Edit 296

List of Values versus Drop Downs 298

Post-Query versus View 298

Keystrokes and Menu Items versus Buttons 299

Case Study: Manufacturing and Logistics 300

Background and Challenge 300

Analysis and Design 301

Assessing Complexity 302

Mapping Forms to ADF with ART 304

Project Results 305

ADF in the Cloud 306

Amazon and Oracle Cloud Templates 306

Summary 308

CHAPTER 13 Application Migration: PowerBuilder to

Oracle APEX 309

Oracle Application Express Overview 309

Why Migrate PowerBuilder to APEX? 310

Background on Carter's, Inc 311

The OMNIA Sales Order Management Pilot Project 312

Legacy System Characteristics and Technical Architecture.,313

Legacy System Characteristics 313

Legacy Technical Architecture 314

Legacy System Challenges 315

Carter's Priorities 317

Migration Options Considered 317

Pilot Project Results 319

The OMNIA2 Project 320

Design Objectives 321

The New OMNIA2 Architecture 323

PL/SQL Emphasis When Using Oracle APEX 325

APEX in the Cloud 326

Summary 328

CHAPTER 14 Challenges and Emerging Trends 331

Business Challenges in Database and ApplicationMigration 331

Technological Challenges in Database and

Application Migration 332

Page 10: Migrating to the Cloud - Verbundzentrale des GBV · Migrating to the Cloud Oracle Client/Server Modernization Tom Laszewski Prakash Nauduri TechnicalEditor Ward Spangenberg AMSTERDAM

Contents

Emerging Trends in Database and Application

Migration Technology 333

Business Challenges in the Adoption of Cloud

Computing 335

Technical Challenges of Cloud Computing 335

Emerging Trends in Cloud Services and Offerings 335

Summary 339

341