IBM Database Conversion Workbench 3.5

Similar documents
IBM Database Conversion Workbench 3.5

Empowering DBA's with IBM Data Studio. Deb Jenson, Data Studio Product Manager,

IBM DB Getting started with Data Studio Hands-On Lab. Information Management Cloud Computing Center of Competence.

IBM DB DB2 application development Hands-On Lab. Information Management Cloud Computing Center of Competence. IBM Canada Lab

Deploying Windows Server 2003 Internet Authentication Service (IAS) with Virtual Local Area Networks (VLANs)

Documentation Accessibility. Access to Oracle Support. Supported Browsers

EDB Postgres Migration Portal Guide Version 1.0

Informatica PowerExchange for Microsoft Azure Blob Storage 10.2 HotFix 1. User Guide

DB2 for z/os Stored Procedure support in Data Server Manager

Oracle SQL. murach s. and PL/SQL TRAINING & REFERENCE. (Chapter 2)

Migrating to DB2 Tasks and Tools

SAS. Social Network Analysis Server 6.2: Installation and Configuration Guide, Third Edition. SAS Documentation

Oracle SQL Developer TimesTen In-Memory Database Support

DB2 for z/os: Programmer Essentials for Designing, Building and Tuning

Introduction to IBM Data Studio, Part 1: Get started with IBM Data Studio, Version and Eclipse

Introduction to IBM Data Studio, Part 1: Get started with IBM Data Studio, Version and Eclipse

User Scripting April 14, 2018

Documentation Accessibility

IBM Rational Developer for System z Version 7.5

Oracle SQL Developer. Oracle TimesTen In-Memory Database Support User's Guide Release 4.0 E

Interstage Business Process Manager Analytics V12.1 Studio Guide

Logi Ad Hoc Reporting Management Console Usage Guide

How To Generate XSD Schemas from Existing MDM Repositories

Database Explorer Quickstart

Oracle Revenue Management and Billing. File Upload Interface (FUI) - User Guide. Version Revision 1.1

Toad Data Point - Professional Edition. The Toad Data Point Professional edition includes the following new features and enhancements.

New Features Bulletin Replication Server Options 15.6

Rapid SQL 7.5 Evaluation Guide. Published: September 28, 2007

NSIGHT ECLIPSE EDITION

Informatica Cloud Spring Data Integration Hub Connector Guide

Symantec ediscovery Platform

NSIGHT ECLIPSE EDITION

Brainware Intelligent Capture Visibility

Table of Contents DATA MANAGEMENT TOOLS 4. IMPORT WIZARD 6 Setting Import File Format (Step 1) 7 Setting Source File Name (Step 2) 8

Rational Developer for IBM i (RDI) Distance Learning hands-on Labs IBM Rational Developer for i. Maintain an ILE RPG application using.

An Oracle White Paper October Release Notes - V Oracle Utilities Application Framework

SilkTest 2010 R2. Installation Guide

Oracle Application Express

Embarcadero PowerSQL 1.1 Evaluation Guide. Published: July 14, 2008

BEAWebLogic. Portal. MobileAware Interaction Server Installation Guide

Contents Overview... 5 Upgrading Primavera Gateway... 7 Using Gateway Configuration Utilities... 9

Using SQL Developer. Oracle University and Egabi Solutions use only

Oracle Standard Management Pack

APEX Times Ten Berichte. Tuning DB-Browser Datenmodellierung Schema Copy & Compare Data Grids. Extension Exchange.

Kintana Object*Migrator System Administration Guide. Version 5.1 Publication Number: OMSysAdmin-1203A

Using the VMware vcenter Orchestrator Client. vrealize Orchestrator 5.5.1

Version 1.2 Tivoli Integrated Portal 2.2. Tivoli Integrated Portal Customization guide

Getting Started with InfoSphere Streams Quick Start Edition (VMware)

Installation Instructions

iway Big Data Integrator New Features Bulletin and Release Notes

Oracle Enterprise Manager. 1 Introduction. System Monitoring Plug-in for Oracle Enterprise Manager Ops Center Guide 11g Release 1 (

IBM WebSphere Adapter for Oracle E-Business Suite Quick Start Tutorials

IBM Content Analytics with Enterprise Search Version 3.0. Expanding queries and influencing how documents are ranked in the results

TIBCO ActiveMatrix BusinessWorks Plug-in for REST and JSON Installation. Software Release 1.0 November 2012

Introducing SAP Enterprise Services Explorer for Microsoft.NET

Graphical debugging makes procedural SQL debugging on IBM i even easier

How To Customize the SAP User Interface Using Theme Editor

Manipulating Database Objects

Microsoft Dynamics GP. Extender User s Guide

IBM Decision Server Insights. Installation Guide. Version 8 Release 6

Getting Started with Tally.Developer 9 Series A Release 3.0

ORACLE USER PRODUCTIVITY KIT USAGE TRACKING ADMINISTRATION & REPORTING RELEASE SERVICE PACK 1 PART NO. E

Perceptive TransForm E-Forms Manager

InQuira Analytics Installation Guide

USER GUIDE. MADCAP FLARE 2017 r3. Import

BEA WebLogic Mobility Server Installation Guide

IBM Worklight V5.0.6 Getting Started

Version Overview. Business value

IBM WebSphere Adapter for Oracle E-Business Suite Quick Start Tutorials

Dashboard / Output Guide

CA IdentityMinder. Glossary

Tzunami Deployer Oracle WebCenter Interaction Exporter Guide

Oracle FLEXCUBE Investor Servicing BIP Report Development Guide Release 12.0 April 2012 Oracle Part Number E

Getting Started with Tally.Developer 9

IBM. Bulk Load Utilities Guide. IBM Emptoris Contract Management SaaS

WP710 Language: English Additional languages: None specified Product: WebSphere Portal Release: 6.0

IBM C Rational Functional Tester for Java. Download Full Version :

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

New Features Summary. SAP Sybase Event Stream Processor 5.1 SP02

Creating Domain Templates Using the Domain Template Builder 11g Release 1 (10.3.6)

Project Management Framework

Chapter 1 GETTING STARTED. SYS-ED/ Computer Education Techniques, Inc.

Roadmap to UPK 3.1 Session #1 UPK 3.1 Practice Exercises. A Solbourne White Paper April 2008

IBM Maximo Anywhere Version 7 Release 6. Planning, installation, and deployment IBM

IBM. IBM i2 Analyze Windows Upgrade Guide. Version 4 Release 1 SC

Using the VMware vrealize Orchestrator Client

Oracle Education Partner, Oracle Testing Center Oracle Consultants

ZENworks Reporting System Reference. January 2017

Getting Started with Team Coding Applicable to Toad for Oracle Suite 2016 (v12.9) and higher

Installation Guide Worksoft Certify

SOA Software Intermediary for Microsoft : Install Guide

EMC SourceOne Management Pack for Microsoft System Center Operations Manager

Build and Deploy Stored Procedures with IBM Data Studio

Oracle Reports Developer 10g: Build Reports

Netwrix Auditor for Active Directory

Master Guide for SAP HANA Smart Data Integration and SAP HANA Smart Data Quality

SQL Developer Oracle Migration Workbench Taking Database Migration to the next level

Mobile Application Workbench. SAP Mobile Platform 3.0 SP02

Tzunami Deployer Oracle WebCenter Interaction Exporter Guide

Veritas Enterprise Vault Setting up SharePoint Server Archiving 12.2

Transcription:

3.5 Oracle to IBM dashdb Conversion Guide Version: 3.5 Last Updated: June 12th, 2015

Table of Contents 1. Introduction... 4 2. Prerequisites... 5 3. Overview of the Conversion Process... 6 4. Set Up Your DCW Environment... 7 4.1. Create a new DCW Conversion Project... 7 4.2. Create a new connection profile to the source database... 8 5. The Oracle to IBM dashdb Task Launcher... 9 6. DDL Extraction... 10 6.1. Overview of the process... 10 6.2. Extract DDL by generating a custom extraction script... 10 6.2.1. Generate a custom DDL extraction script... 10 6.2.2. Run the custom extraction script on your source Oracle database... 11 6.3. Extract DDL using a Connection... 11 6.3.1. Prerequisites... 11 6.3.2. Extract DDL through a Connection... 11 6.4. Import DDL... 14 6.4.1. Import an existing DDL file... 14 7. Compatibility Evaluation... 15 7.1. Format of the Compatibility Evaluation Report... 15 7.2. Generate the Compatibility Evaluation Report... 15 7.2.1. Prerequisites... 15 7.2.2. Evaluate Compatibility... 15 7.2.3. Support for large DDL files... 16 7.2.4. Submitting your Compatibility Evaluation Report to IBM... 16 7.3. Using the Compatibility Evaluation Report... 17 7.3.1. Prerequisites... 17 7.3.2. View through your web browser... 17 7.3.3. Overall Summary... 17 7.3.4. PL/SQL Code Evaluation... 18 7.3.5. DDL Code Evaluation... 19 7.3.6. Unrecognized lines of code... 20 7.3.7. Support for BLU Acceleration... 20 8. Visualize Object Dependencies... 21 8.1. Load object dependencies from a connection... 21 8.1.1. Prerequisites... 21 8.1.2. Selecting your connection... 21 8.2. Load object dependencies from DDL extraction script output... 21 8.2.1. Prerequisites... 21 8.2.2. Specify CSV files... 21 8.3. Using the DB Objects Explorer view to Visualize objects... 22 8.3.2. Using the DB Objects Explorer... 22 8.3.3. Visualizing object dependencies... 23 Copyright IBM Corp. 2015. All rights reserved Page 2 of 35

8.4. Setting Visualizer preferences... 23 9. Code Conversion... 24 9.1. Auto-convert Oracle syntax to dashdb compatible syntax... 24 9.1.1. Pre-requisites... 24 9.1.2. Run the auto-conversion... 24 9.2. Split DDL Function... 24 9.2.1. Pre-requisites... 25 9.2.2. Run the Split DDL Function... 25 9.3. Reviewing the converted code... 25 10. Prepare the Target Database for Data Movement... 28 10.1. Deploy Objects for Data Movement... 28 10.1.1. Pre-requisites... 28 10.1.2. Execute the DDL statements to create table spaces and tables... 28 10.2. Executing the Converted DDL from the dashdb Console... 29 11. Data Movement... 31 11.1. Data-Type Conversion Table... 31 11.2. Extract Oracle Data to Flat Files... 31 11.2.1. Pre-requisites... 31 11.2.2. Extract data to flat files... 32 11.2.3. Load data from flat files... 33 12. Deploy Remaining Objects... 34 Copyright IBM Corp. 2015. All rights reserved Page 3 of 35

1. Introduction The IBM Database Conversion Workbench (DCW) integrates many of the tools used for converting from different database vendors to IBM database products, while providing an easy to use framework to take you through all the steps of the conversion process. DCW is provided as a plug-in to IBM Data Studio, a no-charge graphical tool based on an Eclipse platform. IBM Data Studio helps database developers and administrators manage, administer, and develop heterogeneous database environments for increased productivity and collaboration. For more information, visit: http://www.ibm.com/software/data/optim/data-studio/ As an integrated workbench, DCW provides the following benefits to the user: - Common graphical interface with uniform look and feel for all phases of the conversion - A consolidated process with well-defined steps based on best practices - Faster enablement for client and partner teams in conversion methodology - Wizards that guide users through all steps of the conversion DCW offers the following step-by-step functions to facilitate the process. 1. DCW Task Launcher - An integrated help guide, which provides step by step instructions through the conversion process. 2. DDL Extraction - Extracts objects in the source database, used by DCW to analyze the source database and provide compatibility assessment and work effort. 3. Compatibility Evaluation Provides a report of the estimated compatibility ratio of Oracle SQL and PL/SQL statements with dashdb, outlining the major issues of the conversion, code that was auto-converted, as well as code that must be fixed manually. 4. Code Conversion - Auto-converts Oracle syntax to dashdb compatible syntax. This streamlines a time consuming process. 5. Split DDL splits a single DDL file into multiple files, organized by object types, which can then be executed against the target database to create the required objects. 6. Package Visualizer - Generates a dependency graph of packages in the source database. This provides a visual representation of package relationships, which helps identify objects that might be impacted if a package requires manual conversion. 7. Data Extraction - Extracts data from the source Oracle database to CSV files.

2. Prerequisites The is a plug-in for IBM Data Studio. IBM Data Studio must first be installed on your machine before installing DCW. For the DCW 3.5 plug-in, the following requirements must be met: IBM Data Studio 4.1.1 full client o Available for download at: http://www.ibm.com/developerworks/downloads/im/data/ Oracle JDBC driver (required for access to Oracle databases only) o Needs to be downloaded separately and installed on the same machine where DCW is installed o Required to connect to Oracle databases For installation requirements and instructions, download the IBM DCW Plug-In Installation Guide: http://www.ibm.com/developerworks/data/ibmdcw. Copyright IBM Corp. 2015. All rights reserved Page 5 of 35

3. Overview of the Conversion Process A standard conversion consists of the following steps: 1. Extract DDL from source database 2. Generate Compatibility Evaluation report from extracted DDL a. Estimate efforts based on incompatible syntax occurrences in the report 3. Automatically convert extracted DDL to the target database s compatible syntax 4. Manually fix any additional incompatible syntax based on evaluation report 5. (Optional) Split converted DDL to ease deployment of database objects 6. Create target database 7. Execute converted DDL to recreate database schema(s) 8. Extract data from source database 9. Deploy data into target database The Database Conversion Workbench provides an integrated environment with many functions to help take the user through the conversion steps described above. It is highly recommended for novice users to follow the process from beginning to end. While DCW supports the use of the various conversion functions separately, this approach is beyond the scope of this guide and recommended only for more advanced users. Copyright IBM Corp. 2015. All rights reserved Page 6 of 35

4. Set Up Your DCW Environment 4.1. Create a new DCW Conversion Project In order to access the functions of the Database Conversion Workbench, you need to create a new DCW project. i. From Data Studio, navigate to menu File > New > Project then select the DCW Project wizard. ii. Enter the Project Name, select Oracle as the Source Database and dashdb as the Target Database. iii. Click Finish. You might be asked to switch to the Database Conversion perspective. Click Yes to confirm the switch, and note that the following views are available: Project Explorer view lists all projects and relevant files. Data Source Explorer view lists all existing database connection profiles. Administration Explorer view lists all existing database connection profiles and provides access to database administration functions. DCW Oracle to dashdb Task Launcher launches the various wizards and help topics. Copyright IBM Corp. 2015. All rights reserved Page 7 of 35

4.2. Create a new connection profile to the source database If you can directly connect to the source database from your local machine, you can set up a connection profile for the source database. This information is stored by Data Studio and provides quick and easy access to the source database. i. In the Data Source Explorer view, right click on Database Connections and select New. The New Connection wizard opens. ii. Select Oracle as the database manager and choose the appropriate JDBC driver. If this is the first time that you connect to an Oracle source, you must edit the location of the Oracle JDBC driver JAR files. iii. Enter the connection information for the source database then select Finish. You will see the new database connection listed in the Data Source Explorer view. Copyright IBM Corp. 2015. All rights reserved Page 8 of 35

5. The Oracle to IBM dashdb Task Launcher The Database Conversion Workbench comes with a built in Task Launcher, which acts as an assistant to launch the various steps of the conversion process. The Task Launcher is available after a DCW project has been created, and can be accessed at any time through the Help menu. Included with the task launcher are the DCW Help Topics which offer directions on how to access the various functions through your Project Explorer view, as well as helpful hints and step-by-step guidelines to follow for your conversion project. These help topics are automatically displayed when a process step is selected in the task launcher. Copyright IBM Corp. 2015. All rights reserved Page 9 of 35

6. DDL Extraction 6.1. Overview of the process The Database Conversion Workbench can extract the DDL for the source Oracle database objects through an online connection, or by generating a custom DDL extraction script that can be manually executed by the user. The DDL extraction process can be accessed using the DDL Extraction wizard. i. In the Project Explorer view, right-click on your DCW Project and navigate to Database Conversion > Extract DDL. The DDL Extraction Wizard opens. 6.2. Extract DDL by generating a custom extraction script 6.2.1. Generate a custom DDL extraction script If a connection to the source Oracle database is unavailable, DCW can still help you extract the DDL from the source Oracle database. This is done by using DCW to generate a custom DDL extraction script, which can then be manually run on your source Oracle database. Note that the Generate Custom DDL Extraction Script wizard can also be accessed through the Task Launcher. i. From the DDL Extraction wizard, select Generate DDL extraction script. Click Finish. The Generate Custom DDL Extraction Script wizard opens. Copyright IBM Corp. 2015. All rights reserved Page 10 of 35

ii. Complete the steps of the wizard. On the first page, specify the name of the DDL files that are to be generated as a result of the extraction script. Specify the name of the script file and the directory to which you want to save. It is recommended that you select Exclude all system schemas, so that the script extracts all the user generated schemas except for the Oracle default system schemas. Click Finish. iii. The custom extraction script can be found in the directory that you specified. 6.2.2. Run the custom extraction script on your source Oracle database You can execute the custom extraction script through Oracle SQL*Plus from a machine that has access to the source Oracle database server. Manually running the script is outside of the scope of this guide. Tip: This can be done by running the script through Oracle SQL*Plus, which should be started on the command line, under the same directory where the script was saved. This way the output files are saved on the same folder where the script is located. The extracted DDL is generated as a.out file. Ensure that the DDL and associated files (allobj.txt and alldep.txt) can be accessed from the system on which DCW is installed. You can import the files into your DCW Project by following the steps outlined in section 6.4. 6.3. Extract DDL using a Connection This is the recommended method if it is possible to directly connect to the source database through Data Studio. 6.3.1. Prerequisites Ensure that you have a connection profile of the source database as outlined in section 4.2 6.3.2. Extract DDL through a Connection The Database Conversion Workbench can extract the objects from an entire database or select schemas. i. From the DDL Extraction wizard, select Extract DDL using a connection. Click Finish. The Extract DDL through a connection wizard opens. Copyright IBM Corp. 2015. All rights reserved Page 11 of 35

ii. On the first page, select the connection profile of your source Oracle database. Click Next. iii. On the second page, select the schemas that you want to extract. Click Next. Note: The DDL Extraction creates a single file for all extracted objects. You might want to run the process separately for batches of schemas. Copyright IBM Corp. 2015. All rights reserved Page 12 of 35

iv. On the third and final page, select the objects types that you want to extract and specify the name of the DDL script file. Optionally, select the checkboxes for extracting storage and table space clauses, and opening the DDL script for editing. After all selections and changes are complete, click Finish. v. The DDL file is saved under the selected DCW Project in the Project Explorer view. Note: The DDL for invalid objects is also extracted but saved to a separate file with the suffix _INVALID.sql. Copyright IBM Corp. 2015. All rights reserved Page 13 of 35

6.4. Import DDL 6.4.1. Import an existing DDL file If you already have a DDL file of your source Oracle database (from the custom script or other sources), you can import the file into your DCW project. i. In the Project Explorer view, right-click on your DCW Project and navigate to Database Conversion > Import a DDL file. The Import wizard opens. ii. Specify the directory of the DDL file and select the DDL file you want to import. Select the folder (DCW project) into which you want to import the DDL file. Click Finish. iii. The DDL file is imported into your DCW Project, and automatically converted to a.sql extension. Note: You might want to also import the.allobj.txt and.alldep.txt files into your DCW Project, because they can be used in section 8. Copyright IBM Corp. 2015. All rights reserved Page 14 of 35

7. Compatibility Evaluation With a simple click of a button, the can analyze Oracle DDL and PL/SQL statements and create an assessment report which outlines the compatibility of the Oracle syntax in use with the syntax of dashdb. The compatibility evaluation report includes an executive summary and a detailed list of DDL and PL/SQL incompatibilities, as well as some suggested workarounds to fix the incompatible code. These issues can be addressed after the code conversion has been run in section 9. 7.1. Format of the Compatibility Evaluation Report By default, the report is saved in an encrypted format in a file with a.xmle extension. Section 7.3 explains how to decrypt and visualize the report. 7.2. Generate the Compatibility Evaluation Report The Compatibility Evaluation Report is generated by analyzing the DDL file of the source Oracle database. 7.2.1. Prerequisites Ensure that you have a DDL file of the source Oracle database as outlined in section 6. 7.2.2. Evaluate Compatibility i. Right-click on the.sql file containing the Oracle DDL. Navigate to Database Conversion > Evaluate Compatibility. The Compatibility Evaluation wizard opens. Hint: You can run the compatibility evaluation on multiple DDL files at once. This generates a separate report for each DDL file. Note: DCW automatically splits DDL files larger than 5 MB into separate files for processing. This process generates a single merged report. See section 7.2.3 Support for large DDL files for more information. Note: DCW has a 100 MB size restriction on the input DDL file. See section 7.2.3 Support for large DDL files for more information. ii. Select the Source SQL dialect as Oracle and the Target SQL dialect as dashdb then click Finish. iii. The Compatibility Evaluation Report (.xmle file) is saved to your project folder. Copyright IBM Corp. 2015. All rights reserved Page 15 of 35

7.2.3. Support for large DDL files For DDL files that are larger than 5 MB, DCW pre-processes the file by splitting the large DDL file into smaller more manageable components. DCW splits the large file into separate files, each of which is about 5 MB in size. The split files are created in a folder named <original_ddl_filename>_parts, which can be located within your DCW Project. To reduce the chance of error, DCW parses and processes each file separately and sequentially. Note: The progress of each file is displayed by DCW. Part 1 of 9 indicates that DCW split the original DDL file into 9 component files and is currently processing the 1 st file. Although processed separately, DCW generates a single and merged Compatibility Evaluation Report for the original large DDL file. At the end of the process, you receive a result message, which details any component files that were missed due to issues. You can rerun the Compatibility Evaluation on the missed files, which can be found in your DCW Project. 7.2.4. Submitting your Compatibility Evaluation Report to IBM The Compatibility Evaluation generates an encrypted.xmle report as <file_name>- <timestamp>_report.xmle. This encrypted report must be sent to IBM, and the decrypted report is emailed back to you. Copyright IBM Corp. 2015. All rights reserved Page 16 of 35

NOTE: The.xmle file does not contain any source code. It only contains the list of incompatibilities found and the number of occurrences in the original source code. Using your desired email client, submit the.xmle file to askdcw@ca.ibm.com NOTE: Emails sent by using gmail or hotmail accounts are not accepted. An email response is sent back containing the HTML version of the Compatibility Evaluation Report, which can be viewed through your web browser. 7.3. Using the Compatibility Evaluation Report The Evaluation Report is a key part of the conversion process, and outlines the various compatibility issues in the syntax between Oracle and dashdb. This section outlines how to use the Evaluation Report to correctly address any issues that are reported, after the code conversion has been run. 7.3.1. Prerequisites Ensure that you have the HTML version of the Evaluation Report. See section 7.2 Generate the Compatibility Evaluation Report for more details. 7.3.2. View through your web browser You can open the Evaluation Report using your preferred browser by double clicking on the file. You can also import the Evaluation Report into Data Studio, and use the native browser in Data Studio. i. Right-click on your DCW Project and select Import. The Import wizard opens. ii. Expand the General folder and select File System. Click Next. iii. Select Browse, and navigate to the directory in which the HTML Evaluation Report is located. After the folder is open, select the HTML Evaluation Report. Click Finish. iv. The report is now in your DCW Project. v. In your DCW Project, right-click on the HTML Evaluation Report and select Open With > Web Browser. The Evaluation Report opens. 7.3.3. Overall Summary This section of the report shows the compatibility percentage of all PL/SQL and DDL statements that can run natively on a dashdb database, which has been enabled for Oracle compatibility. PL/SQL Statistics by Object Type shows a breakdown and count of objects that were detected, as well as the number of object types that require attention. Copyright IBM Corp. 2015. All rights reserved Page 17 of 35

DDL Statistics by Statement Type shows the number of DDL statements that were detected, as well as the number of statements that require attention. Total Number is the total count of statements and objects that was detected. The Number that Require Attention is the count of Oracle statements/objects that are not immediately transferrable to dashdb and require attention. NOTE: Statements and objects that can be auto-converted by DCW are not included in the count of Number that Require Attention. 7.3.4. PL/SQL Code Evaluation This section outlines the PL/SQL features that are not supported on dashdb. These statements must be altered to comply with the syntax of dashdb or removed. This can be done after the code conversion has been run in section 9 Code Conversion. Copyright IBM Corp. 2015. All rights reserved Page 18 of 35

You can expand or collapse each incompatible feature by clicking on the featured text. For each issue identified, the report provides a list of all occurrences with the corresponding line number of the statement in the original code, the portion of the syntax that contains the error, and a recommended solution. 7.3.5. DDL Code Evaluation This section outlines the DDL features that are not supported on dashdb. These statements must be altered or removed before execution on dashdb. This can be done after the code conversion has been run in section 9 Code Conversion. You can expand or collapse each incompatible feature by clicking on the statement. For each issue identified, the report provides a list of all occurrences with the corresponding line number of the statement in the original DDL code, the portion of the syntax that contains the error, and a recommended solution. In addition to the features that are not supported, the report provides a DDL Features Informational section. These are statements that were automatically converted by DCW to the most appropriate dashdb compatible syntax, so no further actions are required. The list is provided to help consultants identify specific cases where the conversion applied might not be ideal. Copyright IBM Corp. 2015. All rights reserved Page 19 of 35

7.3.6. Unrecognized lines of code The very last section of the report contains lines of code that the Compatibility Evaluation was not able to recognize. These statements might or might not be compatible with dashdb. You can check the code by referring to the line number that is listed. 7.3.7. Support for BLU Acceleration Since dashdb takes advantage of BLU Acceleration technology, the Compatibility Evaluation report contains two extra sections that list the BLU specific issues. The two BLU specific sections are: BLU Incompatibilities: Lists features that are not supported by column-organized tables. Look at the proposed solution in the report to learn how to fix it. BLU Stats: Contains the number of tables (CREATE TABLE statements) in the DDL file that can be created as column-organized tables. Note, in the Overall Summary section, the compatibility ratio does NOT account for BLU specific issues found. Copyright IBM Corp. 2015. All rights reserved Page 20 of 35

8. Visualize Object Dependencies The DCW Object Dependencies Visualizer provides a user the ability to graphically explore the dependencies between database objects. This ability gives a clearer perspective on how the database is modeled, which can aid in defining the scope of the conversion project. Object dependencies can be visualized by connecting directly to the source Oracle database, or by using the output files generated from section 6.2 - Extract DDL by generating a custom extraction script. 8.1. Load object dependencies from a connection Use this option when a connection to the source Oracle database is available, and if the source DDL was extracted through a connection, as outlined in section 6.3 Extract DDL using a Connection. 8.1.1. Prerequisites Ensure that you have a connection profile of the source database as outlined in section 4.2 8.1.2. Selecting your connection i. Right-click on your DCW Project and navigate to Database Conversion > Visualize Object Dependencies The Visualize Object Dependencies Wizard opens. ii. In the wizard, select Load from a connection. Click Next. iii. On the second page of the wizard, select the connection profile of the source Oracle database. Click Finish. iv. All schemas that exist in the source Oracle database are shown in the DB Objects Explorer view. 8.2. Load object dependencies from DDL extraction script output Use this option if the source DDL was extracted using the custom extraction script as outlined in section 6.2 Extract DDL by generating a custom extraction script. 8.2.1. Prerequisites Ensure that you have the output files from section 6.2 Extract DDL by generating a custom extraction script. 8.2.2. Specify CSV files i. Right-click on your DCW Project and navigate to Database Conversion > Visualize Object Dependencies The Visualize Object Dependencies Wizard opens. ii. Select Load from CSV files. Click Next. iii. On the second page of the wizard, specify the location of the.allobj.txt and.alldep.txt files by clicking Browse These files were generated when the custom extraction script was run against your source Oracle database. Click Finish. Copyright IBM Corp. 2015. All rights reserved Page 21 of 35

iv. Only schemas that were extracted by the custom extraction script from your source Oracle database are shown in the DB Objects Explorer view. 8.3. Using the DB Objects Explorer view to Visualize objects DCW generates dependency graphs of objects in the source Oracle database by using two views: i. DB Objects Explorer view Lists the schemas in the source Oracle database (or extracted schemas), and the schema objects. ii. Visualizer view Generates the dependency graph of the database object selected. 8.3.2. Using the DB Objects Explorer The DB Objects Explorer view displays the schemas that were loaded, depending on the method that was selected earlier (through a connection or using the output files generated by the custom extraction script). Object dependencies can be visualized by expanding the schema and object type folders, then selecting the desired object. Double-click on the object to open the dependency graph in the visualizer view. Copyright IBM Corp. 2015. All rights reserved Page 22 of 35

8.3.3. Visualizing object dependencies The Object Dependencies Visualizer provides a graphical representation of the dependencies of the selected object. Navigate the graph by: i. Using the Search in the graph function ii. Double clicking on a dependent object to open its corresponding dependencies graph iii. Right-click on the visualizer view to navigate forward and backwards iv. Use the filter options on the right hand side NOTE: Synonyms are not displayed in the graph, instead they are replaced by the actual target objects referenced by them. 8.4. Setting Visualizer preferences i. Navigate to Window > Preferences. The Data Studio Preferences window opens. ii. Expand Database Conversion Workbench and select Object Dependencies Graph. iii. Customize the color scheme of your graph. Click Apply. Copyright IBM Corp. 2015. All rights reserved Page 23 of 35

9. Code Conversion The offers a powerful tool that can auto-convert well known Oracle syntax to dashdb compatible syntax. 9.1. Auto-convert Oracle syntax to dashdb compatible syntax 9.1.1. Pre-requisites Ensure that you have a DDL file of the source Oracle database as outlined in section 6 - DDL Extraction. 9.1.2. Run the auto-conversion i. Right-click on the DDL file of your source Oracle database in your DCW Project. Navigate to Database Conversion > Convert Code The Code Conversion wizard opens. ii. Select the Source SQL dialect and Target SQL dialect. Click Finish. iii. The converted DDL file is located in your DCW Project folder, named <originalfilename>- <timestamp>_converted.sql. Note: The code conversion automatically changes all statement terminators to @ 9.2. Split DDL Function After the Code Conversion has been run, DCW has an optional, yet useful, function to convert a single DDL file into multiple files organized by object type. This function helps to stream-line your Oracle to dashdb conversion process by providing a much more intuitive code organization. Furthermore, it breaks down a large DDL file into smaller and more manageable components, which provides multiple team members the ability to work on various files. *NOTE: Subsequent sections of this guide assumes that the Split DDL function has been run. Copyright IBM Corp. 2015. All rights reserved Page 24 of 35

9.2.1. Pre-requisites Ensure that you have a DDL file of the source Oracle database as outlined in section 6. Ensure that you have run the Code Conversion as outlined in section 9.1. 9.2.2. Run the Split DDL Function i. Right-click on the converted DDL File of your source Oracle database in your DCW Project. Navigate to Database Conversion > Split DDL Files The Split SQL Files wizard opens. ii. Select the appropriate Statement terminator. It is recommended that you use @ since the code conversion has automatically changed all terminators to @. Click Next. iii. View the list of objects. Click Next. iv. View the summary. Click Finish. v. A new folder is created in your DCW Project that contains the split code. 9.3. Reviewing the converted code You can review the converted code in Data Studio by double clicking on the SQL file. DCW does one of the following five things: Copyright IBM Corp. 2015. All rights reserved Page 25 of 35

i. Remove code fragment DCW comments out fragments of code that are not required on dashdb. These are tagged in the converted code with Code Fragment. ii. Auto-convert code DCW automatically makes updates to code to make it compatible with dashdb while maintaining the semantics of the original code. These statements are not tagged. iii. Requires Attention Code is marked as requires attention and is converted to dashdb compatible syntax so that the statement can compile and execute successfully. Although due to differences in behavior between dashdb and Oracle, it might raise issues during runtime in very specific scenarios. For instance, DCW converts any NUMBER(N) where N is greater than 31 (max precision in dashdb) to NUMBER(31) which works for a great majority of scenarios. iv. Evaluation Issue DCW highlights statements that were identified in the Evaluation Report as being a potential issue. These are tagged in the converted code as DCW Evaluation Issue v. DCW adds the ORGANIZE BY clause to all CREATE TABLE statements as follows: ORGANIZE BY COLUMN is added to those statements that do NOT have any issues preventing the table to be created as column-organized. ORGANIZE BY ROW is added to those statements that contain one or more issues preventing the table to be created as column-organized. Whenever possible, DCW modifies DDL statements in order to make them compatible with columnorganized tables. These cases are listed in the Compatibility Evaluation report as Informational only. All BLU specific issues are tagged in the converted code with the comment DCW BLU Evaluation Issue. At this point, you must manually edit the converted code to be fully compatible with dashdb. 1. Review code that requires attention. a. You can search the string requires attention by using CTRL+F. b. In the following example, the MAXVALUE statement was auto-converted from 28 digits to 27 digits, since dashdb only accepts up to 27 digits. In most cases, this is not a problem. However, DCW has identified it as requiring attention so that the user is aware that this change has been made, and might become an issue if 28 digits are required. c. You can search the remaining converted code for the next statement that requires attention and review it appropriately. 2. Review code with Evaluation Issue a. You can search the string DCW Evaluation Issue by using CTRL+F. b. In the following example, the BEFORE trigger must be invoked with a FOR EACH ROW statement. Copyright IBM Corp. 2015. All rights reserved Page 26 of 35

This was also outlined in the Compatibility Evaluation Report. You can add the FOR EACH ROW statement to the converted code, so that it can run on dashdb. Copyright IBM Corp. 2015. All rights reserved Page 27 of 35

10. Prepare the Target Database for Data Movement This step involves executing the extracted DDL statements against the target dashdb database to re-create the Oracle database objects. 10.1. Deploy Objects for Data Movement Before transferring data from the source Oracle database, the target tables and other required objects must first be created. In this step, you use the DDL files from the Split DDL function to create table spaces and tables on the target dashdb database. 10.1.1. Pre-requisites Ensure that you have extracted the DDL statements from the source Oracle database. Ensure that the Split DDL function has been executed on the extracted DDL file. If applicable, ensure that you reviewed and fixed any incompatibilities highlighted in the Compatibility Evaluation Report and Code Conversion. Ensure that the target database has been created and it is set up properly. 10.1.2. Execute the DDL statements to create table spaces and tables i. Using the Project Explorer view, navigate to DCW_project > folder_with_split_ddl_files > Base Objects. ii. Execute the DDL statements in DDL_tablespace.sql and DDL_table.sql. This can be done by using the SQL Editor in Data Studio, accessible by double clicking on any SQL file to open it. 1. Use the Click here to connect to a database link at the top of the editor and select the target database. 2. Switch to the Validation tab at the bottom of the SQL Editor and change the statement terminator to @. 3. Go back to the Editor tab and click on the green play button on the top right corner to run the DDL. 4. The results and status are displayed below the SQL Editor in the SQL Results tab. Copyright IBM Corp. 2015. All rights reserved Page 28 of 35

Alternatively, you can use the DCW Run SQL Files command to execute multiple files at once. 1. Select the SQL file(s) that you want to run. You can also select the folder to run all of the SQL files in a folder. 2. Right-click and navigate to Database Conversion > Run SQL Files 3. Set your Statement delimiter to @. Click Finish. 4. Select the Connection profile of your target database. Click Finish. 5. The scripts execute. Note: The listed files are only examples. Some of these files might not be present in your project because the objects were not extracted, or they do not exist in the source database. Note: You might also need to execute DDL statements to create objects required by your table definitions, such as user-defined types. 10.2. Executing the Converted DDL from the dashdb Console You also have the option to execute the converted DDL directly from the dashdb web interface. i. From the dashdb Console, select the option Run SQL. ii. Copy and paste the converted DDL into the text field area, or click on Open to upload a file from your local desktop. iii. Click the Options button and change the statement terminator to @. iv. Click on Run to execute the DDL. The results are displayed at the bottom of the pane. Copyright IBM Corp. 2015. All rights reserved Page 29 of 35

Copyright IBM Corp. 2015. All rights reserved Page 30 of 35

11. Data Movement After the target dashdb database has been created and properly set up, you are now ready to move your data from the source Oracle database to the target dashdb database. 11.1. Data-Type Conversion Table The following table summarizes the Oracle data types that are supported on dashdb, as well as the data types that are automatically converted by DCW. The table further details which data types are supported when moving data through flat files (CSV files). Data types that are not supported must be manually converted to a dashdb supported type before data movement can be done. Oracle Data Type IBM dashdb Equivalent Flat Files BFILE Not Supported Not Supported BINARY_DOUBLE Converted to DECFLOAT Supported BINARY_FLOAT Converted to DECFLOAT Supported BLOB Supported Supported BOOLEAN Converted to CHAR Supported CHAR(arg1) arg1 < 254 Supported Supported CHAR(arg1) 255 < arg1 < 32672 Converted to VARCHAR Supported CHAR(arg1) arg1 > 32672 Converted to VARCHAR, precision 32672 Supported CHAR Supported Supported CHARACTER Converted to CHAR Supported CLOB Supported Supported DATE Supported Supported DEC Supported Supported DECIMAL Supported Supported DOUBLE_PRECISION Supported Supported FLOAT Supported Supported INTEGER Supported Supported INTERVAL_YEAR_TO_MONTH Not Supported Not Supported INTERVAL_DAY_TO_SECOND Not Supported Not Supported LONG Converted to CLOB Supported LONG_RAW Converted to BLOB Supported NCHAR(arg1) arg1 < 254 Supported Supported NCHAR(arg1) 255 < arg1 < 16336 Converted to NVARCHAR Supported NCHAR(arg1) arg1 > 16336 Converted to NVARCHAR, precision 16336 Supported NCLOB Supported Supported NUMBER(arg) Supported Supported NUMBER(arg) arg >31 Converted to precision 31 Supported NUMERIC (arg) Supported Supported NUMERIC (arg) arg >31 Converted to precision 31 Supported NVARCHAR2 Supported Supported RAW Converted to CARCHAR Supported REAL Supported Supported ROWID Converted to VARCHAR Supported SYS.XMLTYPE Converted to XML Supported TIMESTAMP Supported Supported TIMESTAMP WITH LOCAL TIME ZONE Converted to TIMESTAMP Supported TIMESTAMP WITH TIME ZONE Converted to TIMESTAMP Supported UROWID Not Supported Not Supported VARCHAR2 Supported Supported XMLTYPE Converted to XML Supported 11.2. Extract Oracle Data to Flat Files 11.2.1. Pre-requisites Ensure that a connection to the source Oracle database exists You might need the appropriate database administrator privileges (DATAACCESS) You might need the appropriate OS administrator privileges Copyright IBM Corp. 2015. All rights reserved Page 31 of 35

11.2.2. Extract data to flat files Note that this wizard is also accessible from the Oracle Task Launcher. i. Right-click on the DCW Project and navigate to Database Conversion > Extract Data... The Extract Data to Flat Files wizard opens. ii. Complete the steps of the wizard. a. Select the source Oracle database. Click Next. b. Select the schema that you want to move. Enter the output directory for the flat files and logs. Click Next. c. Select the tables you want to move. Click Next. Copyright IBM Corp. 2015. All rights reserved Page 32 of 35

d. Specify the data movement configuration parameters. For novice users, this can be left as default. Click Next. You can choose to create LOAD scripts that make use of exception tables by selecting the LOAD EXCEPTION TABLES option. If you do, you must select YES to the option Add ORGANIZE BY ROW clause to exception tables DDL. Exception tables use a CLOB column which is a data type not supported in column-organized tables. By selecting YES, the exception tables are created as row-organized regardless of the default settings in your dashdb database. e. View the summary. Click Finish. f. The extraction log is automatically displayed in Data Studio. The data is extracted to the directory specified in step c with the file extension.tables. g. You can copy the specified directory to a desired storage medium and transfer it to a different computer. 11.2.3. Load data from flat files You can load your data into IBM dashdb using different options such as data file on a local network, an object store, and other locations. Consult the IBM dashdb Knowledge Center for the latest information available: http://www.ibm.com/support/knowledgecenter/ss6nhc/com.ibm.swg.im.dashdb.doc/learn_how/loaddata_ overview.html Copyright IBM Corp. 2015. All rights reserved Page 33 of 35

12. Deploy Remaining Objects After moving data from the source Oracle database to dashdb, execute any remaining DDL scripts against the target database to complete the creation of all database objects. Note: Ensure that you have completed the data transfer from all tables in the scope of your project. i. Using the Project Explorer view, navigate to DCW_project > folder_with_split_ddl_files> Base Objects and execute all of the DDL files. You can open each individual file using the SQL Editor then press the Run SQL button to execute the DDL statements. Alternatively, right-click on the.sql file and select Database Conversion > Run SQL files... ii. Repeat the previous steps for all folders inside DCW_project > folder_with_split_ddl_files. Note: Depending on the order that DDL statements are executed and the dependencies between the database objects, you might have to execute the DDL statements more than once until all of the dependencies are satisfied. Copyright IBM Corp. 2015. All rights reserved Page 34 of 35

Copyright IBM Corporation 2015 All Rights Reserved. IBM Canada 8200 Warden Avenue Markham, ON L6G 1C7 Canada IBM, the IBM logo, ibm.com and Tivoli are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol ( or ), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at Copyright and trademark information at ibm.com/legal/copytrade.shtml Other company, product and service names may be trademarks or service marks of others. References in this publication to IBM products and services do not imply that IBM intends to make them available in all countries in which IBM operates. No part of this document may be reproduced or transmitted in any form without written permission from IBM Corporation. Product data has been reviewed for accuracy as of the date of initial publication. Product data is subject to change without notice. Any statements regarding IBM s future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. THE INFORMATION PROVIDED IN THIS DOCUMENT IS DISTRIBUTED AS IS WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IBM EXPRESSLY DISCLAIMS ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. IBM products are warranted according to the terms and conditions of the agreements (e.g. IBM Customer Agreement, Statement of Limited Warranty, International Program License Agreement, etc.) under which they are provided.