US20030177146A1 - Method, system, and program product for migrating data from one data base management system to another data base management system - Google Patents
Method, system, and program product for migrating data from one data base management system to another data base management system Download PDFInfo
- Publication number
- US20030177146A1 US20030177146A1 US10/102,385 US10238502A US2003177146A1 US 20030177146 A1 US20030177146 A1 US 20030177146A1 US 10238502 A US10238502 A US 10238502A US 2003177146 A1 US2003177146 A1 US 2003177146A1
- Authority
- US
- United States
- Prior art keywords
- data
- program product
- target system
- source
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
Definitions
- the method, system, and program product described herein are used for migrating large volumes of data from a data source to a data target, and include organizing and interrelating data or files, e.g., providing an association between different schema and metadata, with, for example, data structure conversion, for optimization of database and file migration and storage, and for data compatibility between different or multiple databases.
- the method, system, and program product described herein use bulk data loading interfaces to migrate the source data into a target data store.
- the method, system, and program product of the invention eliminate the use of intermediate data stores on the target system, execute the extraction of the data from the source data store and the placement of the data into the target data store in parallel, minimize the datatype conversions that are performed, transfer the data in large blocks, and perform the migration in a fully automated fashion. This approach reduces the complexity and the elapsed time required for performing these types of data migrations.
- the method, system, and program product migrates data from a relational table in a data source to a relational table in a data target. This is accomplished through the use of two parallel batch processes. One of these batch processes unloads the subject data from the data source and uploads the subject data to the data target. The other batch process loads the subject data into the data target.
- the “unloading” batch process operating on the data source may use an SQL “SELECT * FROM tablename” command to identify the data to be unloaded, where “tablename” is the name of the source relational table.
- the “loading” batch process operating on the data target may use a LOAD Utility or other bulk data loading mechanism to load the source data into the data target.
- the unload of a particular database table at the source and the subsequent load of the database table at the target execute in parallel.
- the method, system, and program product allow for the parallel unload and load of the database table by eliminating the use of intermediate data files between the two batch processes. Data flows directly from the unload batch process to the load batch process, thereby reducing both the elapsed time and the complexity of the data migration.
- the method, system, and program product of the invention also permit a write of the data being migrated to disk on the target system, in parallel with the load of the database table. This copy allows the load of the data to be restartable from the last internal load utility checkpoint in the event of a load utility failure.
- the method, system, and program product may be used to facilitate migration of disparate source database data, such as Oracle, Sybase, or Microsoft SQL Server, to, for example, IBM “DB2 for OS/390.”
- disparate source database data such as Oracle, Sybase, or Microsoft SQL Server
- IBM “DB2 for OS/390” data type conversion may be required.
- Oracle long data may need to be mapped to IBM UDB DB2 varchar data.
- the method, system, and program product of the invention are intended for use in both peer to peer and client server environments.
- the program product of the invention is in the form of computer code on suitable media (such as magnetic or optical media that is machine readable for transmission, installation, instantiation, or execution).
- the code may be in the form of executable code, in the form of code that requires loading to memory for execution, or (physical or electronic) distribution code that requires one or both of decompression and decryption to be executable.
- FIG. 1 illustrates a system with two platforms configured for transferring data between the source and the target through a data link.
- FIG. 2 illustrates the method of transferring data from a data source to a data target, utilizing two target side steps in copying data from the source to the target.
- FIG. 3 is a high level illustration of software modules that comprise a preferred embodiment of the method, system, and program product of the invention.
- the method, system, and program product described herein provides for the migration of relational tables from a data source to a data target. This is accomplished through the unloading of a particular database table at the data source and subsequent loading of the database table at a data target. Through the use of a data pipe between the parallel batch processes for (1) unloading the source data and (2) loading the target data, the data being migrated never needs an intermediate write to disk on the target, thereby reducing both the elapsed time and the complexity of the data migration.
- FIG. 1 illustrates a source-target system configured for transferring data between the data source, 1 , and the data target, 3 , through a data link, 5 .
- SQL identifies the data to be extracted from the source system.
- the target system initiates the unload of the data at the source system, receives the data, and then loads it into the data target on the target system. It is understood that in a multi-data platform system, there can be more then one data source, and also more then one data target, and that data transfers between the data sources and the data targets may involve data type conversions. Previously, as described above, this was at best, a partially automated and inefficient data transfer system.
- FIG. 2 illustrates the two data target side steps, 21 and 23 , used to migrate data from the data source, 1 , to the data target, 3 .
- the target system, 3 starts the process that will load the data in the second step, uses an unload process to issue an SQL request to unload selective data from the source system, uploads the unloaded data and streams the data to the second step, 23 , which, as mentioned earlier, comprises a process that loads the data into the target system.
- the two steps, 21 and 23 , in FIG. 2, are actually two batch jobs executing on the target system.
- the first batch job, 21 connects to the source system, issues an SQL statement to retrieve data from a source system table, uploads the selected data, and streams the data to the second batch job, 23 which loads the data into the target system using the DB2 UDB for z/OS Load utility.
- FIG. 3 is a high level illustration of the software modules used to implement the method and system of the invention.
- the source system, 1 includes source data, 11 , a source database management system, 31 , for example, a relational database management system, and potentially a middleware product, such as DB2 UDB Relational connect, which allows access to various data sources.
- a source database management system for example, a relational database management system, and potentially a middleware product, such as DB2 UDB Relational connect, which allows access to various data sources.
- the target system, 3 is associated with a database management system, 43 , preferably a relational database management system, an associated database, 45 , preferably a relational database, application code to unload and upload data from the data source, and a utility program to load data into the source target.
- a database management system 43
- preferably a relational database management system 43
- an associated database 45
- application code to unload and upload data from the data source
- a utility program to load data into the source target.
- the target system, 3 initiates data transfer from source to target, for example, an IBM DB2 UDB target or similar target, with the application, DMTFUNLD, 37 , which both (1) unloads data from the source table and (2) uploads the data to the target system, 3 , using, for example, IBM's Distributed Relational Database Architecture (DRDA) protocol.
- DRDA Distributed Relational Database Architecture
- DMTFUNLD identifies the data to be unloaded through the execution of an SQL statement.
- the SQL statement can be executed against a remote DBMS source, and through the use of DB2 UDB Relational Connect, the remote DBMS source can be one of a variety of DBMS products.
- the SQL statement issued to unload data from the source DBMS is of the form SELECT * FROM tablename.
- DMTFUNLD drives the unload and load processes and executes as a batch program.
- DMTFUNLD has the psuedocode representation:
- this batch application unloads the database table from the data source, 11 , using middleware, such as Relational Connect, 33 , and a relational database management system, such as IBM DB2 UDB, 35 . Unloading is initiated using the SQL expression
- the method, system, and program product upload the selected data to the data target using Distributed Relational Database Architecture (DRDA) flows, and then generate the LOAD control statement for the load of the extracted table from the source system, 1 , into the target system, 3 .
- the load control statement and the unloaded data are passed from DMTFUNLD, 37 , to the DB2 LOAD utility, 41 , using batch pipes, 39 .
- batch pipes, 39 permits (i) upload of data from the source system, 1 , and (ii) loading of data into the target system, 3 , to be substantially simultaneous.
- the use of batch pipes, 39 also reduces I/O operations and the use of Direct Access Storage Devices (DASD) by transferring data through processor storage rather then through DASD.
- DASD Direct Access Storage Devices
- the first batch job, 21 performs the unload of the data from one or more tables of the source, 1 , and uploads the extracted data to the DB2 for OS/390 server, 43 , on the target, 3 .
- a second batch job performs the load of the data into a DB2 for OS/390 table using the LOAD Utility, 41 .
- the second batch job for each table, 23 is automatically submitted for execution by the first batch job, 21 .
- the first, 21 , and second, 23 batch jobs for an individual table execute in parallel.
- multiple first batch jobs can execute in parallel.
- the methodology also includes a process for generating the Job Control Language (JCL) for the batch jobs.
- JCL Job Control Language
- the unload environment on the source data platform, 1 requires special setup and configuration.
- the system, method, and program product include a process for accomplishing this prior to the execution of the batch jobs that migrate the tables.
- the data being migrated always resides in memory and never needs to be written to an intermediate file or any other type of intermediate data store on the target machine, e.g., an IBM OS/390 machine.
- Source to target datatype conversions for example, Oracle to DB2 datatype conversions, occur once, at the time the data is unloaded from the source database.
- the DRDA protocol is used to transfer the data.
- the method, system, and program product of the invention also has the capability to create a copy of the data being loaded—in parallel with the execution of the extraction from the source and the load to the target.
- This copy is useful in situations where the amount of data being migrated is large and the LOAD Utility, 41 , for whatever reason, fails to execute to completion, as the copy can be used to restart the load of the data from the last internal LOAD Utility checkpoint rather than from the start of the load.
- this optional facility does create a copy of the data in an intermediate data store, the local target file system, for example, an IBM OS/390 file system.
- the data migration process is initiated by the batch application (DMTFUNLD), 37 , that executes under the target's operating system, for example IBM z/OS.
- DMTFUNLD batch application
- (3) generates the target machine's LOAD Utility, 41 , control statement for the subsequent load of the table into the target machine's database management system, for example, IBM DB2 UDB for OS/390, 43 .
- the LOAD Utility control statement has the form:
- the batch application passes the LOAD Utility control statement and the data to the target's database management system's LOAD utility using Batch Pipes, 39 .
- Batch Pipes 39 .
- the source DBMS system and target DBMS system contain identical tables or the source DBMS tables can be mapped to the target DBMS tables using a mechanism such as a relational view.
- This example illustrates the creation, modification, and execution of various commands, jobs, and SQL statements used to establish and configure the execution environment for the data migration tool.
- the execution environment had the following characteristics:
- OS/390 Database Server stplex4a.stl.ibm.com
- Source library for DMTFUNLD USRNDO 1 .SBL1.SDSNSAMP
- JCL library USRNDO 1 .SBL1.JCL
- REXX EXEC library USRNDO 1 .SBL1.REXX
- AIX Database Server yoda13_tr0.stl.ibm.com
- DB2 UDB for AIX database DMTDB271 (DB2 for UDB V7.1 fix pack 2)
- the data migration tool used the federated database support provided by DB2 UDB V7 and the federated database support for Oracle data sources provided by DB2 Relational Connect.
- DB2 UDB and Relational Connect were configured for access to Oracle data.
- Step 1 Install and configure the Oracle client software on the DB2 federated server using the documentation provided by Oracle.
- the documentation for this example was from Oracle Version 8.1.6 and Net8.
- Step 2 Set data source environment variables by modifying the DB2 DJ.ini file and issuing the db2set command.
- the db2set command updates the DB2 profile registry with the specified settings.
- the db2dj.ini file was edited to set the ORACLE_HOME, ORACLE_BASE, ORA_NLS, and TNS_ADMIN environment variables, as shown in the Appendix.
- Step 3 Insure that the SQL*Net or Net8 tnsnames.ora file is updated for each Oracle server to which communications are configured, and update the tnsnames.ora file for the server yoda13_tr0.stl.ibm.com.
- Step 4 Recycle the DB2 instance:
- Step 5 Use the CREATE WRAPPER statement to define the wrapper library that will be used to access Oracle data sources. Wrappers are the mechanism that federated servers use to communicate with and retrieve data from data sources.
- Step 6 Set the DB2_DJ_COMM environment variable to include the wrapper library that corresponds to the wrapper module created in the previous step.
- Step 7 Next, use the CREATE SERVER statement to define each Oracle server to which communications are configured. We created the Oracle server orac8i.
- Step 8 If a user ID or password at the federated server was different from a user ID or password at an Oracle data source, use the CREATE USER MAPPING statement to map the local user ID to the user ID and password defined at the Oracle data source.
- the Oracle user ID SYS was one of the DBA users that is created when a database is installed and initialized.
- the DBA role has all system privileges and the ability to grant all privileges to other users.
- the Oracle user SYS owns all base tables and user-accessible views of the data dictionary.
- Step 9 For Oracle tables in the Oracle data source that do not contain long columns, use the CREATE NICKNAME statement to assign a nickname to the table. Note that the nickname must be the same as the table name specified for the DB2 for OS/390 target table.
- Step 10 For Oracle tables in an Oracle data source that do contain long columns, use the CREATE NICKNAME statement to assign a nickname to each table located in the Oracle data source and the CREATE VIEW statement to cast the datatype of each long column to varchar. Note that the view name must be the same as the table name specified for the DB2 for OS/390 target table.
- Step 11 Increase the APPLHEAPSZ configuration parameter setting to 1024.
- the APPLHEAPSZ configuration parameter defines the number of private memory pages available to be used by the database manager on behalf of a specific agent or subagent.
- the default APPLHEAPSZ value is inadequate for applications that retrieve data from Oracle tables that contain one or more columns having a datatype of long.
- Step 12 Next insure that a temporary tablespace exists of adequate size for the transfer of the largest table stored in Oracle.
- Step 13 Migrate the schema from Oracle to DB2 for OS/390, as shown in the Appendix.
- Step 14 Install the source code for DMTFUNLD, the JCL for the precompile, assemble, link edit, and bind of DMTFUNLD, and the UNLOAD and RELOAD REXX EXECs, in your favorite assembler source code, JCL, and REXX libraries.
- Step 15 Configure the DB2 for OS/390 Communications Database so that DB2 for OS/390 can function as a DRDA Application Requester to access the remote Oracle server via DB2 UDB, as shown in the Appendix.
- This step included inserting a row into the SYSIBM.USERNAMES table with a column TYPE value of “O” for outbound translation, an AUTHID value of blank indicating that translation applies to all authorization ids, a LINKNAME value identical to the SYSIBM.LOCATIONS LINKNAME column value, and a userid and password values respectively for the NEWAUTHID and PASSWORD columns that specify a user ID and password of a user that has the authority to access the Oracle tables via the nicknames and views created above.
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
A method, system, and program product to migrate data from a data table in a data source to a data table in a target. This is done initiating processes, typically two parallel batch processes, with one of the processes unloading the data from the data source and uploading the data into the data target, and the other of the processes loading the source data into a database at the data target. Preferably the processes are parallel batch process. The processes are initiated from the data target.
Description
- The method, system, and program product described herein are used for migrating large volumes of data from a data source to a data target, and include organizing and interrelating data or files, e.g., providing an association between different schema and metadata, with, for example, data structure conversion, for optimization of database and file migration and storage, and for data compatibility between different or multiple databases.
- Current approaches for migrating large quantities (for example, gigabytes) of data from relational data stores on various database platform sources, such as Windows NT, AIX, Linux, Solaris, and other database platforms, to databases on disparate target platforms, such as IBM “DB2 UDB for OS/390,” do not perform well and are overly complex. Poor performance and complexity can be attributed to a variety of causes including (1) using SQL in a multi-step process to both extract the data from the source data store and place the data into the target data store, (2) storing the data in one or more intermediate data stores (e.g. local file systems) during data migration, (3) performing multiple datatype conversions as the data is moved between environments, (4) using less efficient and inefficient data transfer mechanisms, and (5) using data migration processes that are not fully automated.
- The method, system, and program product described herein use bulk data loading interfaces to migrate the source data into a target data store. The method, system, and program product of the invention eliminate the use of intermediate data stores on the target system, execute the extraction of the data from the source data store and the placement of the data into the target data store in parallel, minimize the datatype conversions that are performed, transfer the data in large blocks, and perform the migration in a fully automated fashion. This approach reduces the complexity and the elapsed time required for performing these types of data migrations.
- Specifically, the method, system, and program product migrates data from a relational table in a data source to a relational table in a data target. This is accomplished through the use of two parallel batch processes. One of these batch processes unloads the subject data from the data source and uploads the subject data to the data target. The other batch process loads the subject data into the data target. The “unloading” batch process operating on the data source may use an SQL “SELECT * FROM tablename” command to identify the data to be unloaded, where “tablename” is the name of the source relational table. The “loading” batch process operating on the data target may use a LOAD Utility or other bulk data loading mechanism to load the source data into the data target.
- The unload of a particular database table at the source and the subsequent load of the database table at the target execute in parallel. The method, system, and program product allow for the parallel unload and load of the database table by eliminating the use of intermediate data files between the two batch processes. Data flows directly from the unload batch process to the load batch process, thereby reducing both the elapsed time and the complexity of the data migration. The method, system, and program product of the invention also permit a write of the data being migrated to disk on the target system, in parallel with the load of the database table. This copy allows the load of the data to be restartable from the last internal load utility checkpoint in the event of a load utility failure.
- The method, system, and program product may be used to facilitate migration of disparate source database data, such as Oracle, Sybase, or Microsoft SQL Server, to, for example, IBM “DB2 for OS/390.” In some situations data type conversion may be required. For example, Oracle long data may need to be mapped to IBM UDB DB2 varchar data.
- Overall, according to the method, system, and program product of the invention, the complexity of generating SQL view mapping structures, generating batch jobs and coordinating and executing the migration task is reduced due to automated processes and tools.
- The method, system, and program product of the invention are intended for use in both peer to peer and client server environments.
- The program product of the invention is in the form of computer code on suitable media (such as magnetic or optical media that is machine readable for transmission, installation, instantiation, or execution). The code may be in the form of executable code, in the form of code that requires loading to memory for execution, or (physical or electronic) distribution code that requires one or both of decompression and decryption to be executable.
- Aspects of the invention are illustrated in the FIGURES.
- FIG. 1 illustrates a system with two platforms configured for transferring data between the source and the target through a data link.
- FIG. 2 illustrates the method of transferring data from a data source to a data target, utilizing two target side steps in copying data from the source to the target.
- FIG. 3 is a high level illustration of software modules that comprise a preferred embodiment of the method, system, and program product of the invention.
- The method, system, and program product described herein provides for the migration of relational tables from a data source to a data target. This is accomplished through the unloading of a particular database table at the data source and subsequent loading of the database table at a data target. Through the use of a data pipe between the parallel batch processes for (1) unloading the source data and (2) loading the target data, the data being migrated never needs an intermediate write to disk on the target, thereby reducing both the elapsed time and the complexity of the data migration.
- FIG. 1 illustrates a source-target system configured for transferring data between the data source,1, and the data target, 3, through a data link, 5. In the data source, 1, SQL identifies the data to be extracted from the source system. The target system initiates the unload of the data at the source system, receives the data, and then loads it into the data target on the target system. It is understood that in a multi-data platform system, there can be more then one data source, and also more then one data target, and that data transfers between the data sources and the data targets may involve data type conversions. Previously, as described above, this was at best, a partially automated and inefficient data transfer system.
- FIG. 2 illustrates the two data target side steps,21 and 23, used to migrate data from the data source, 1, to the data target, 3. In the first data target side step, 21, the target system, 3, starts the process that will load the data in the second step, uses an unload process to issue an SQL request to unload selective data from the source system, uploads the unloaded data and streams the data to the second step, 23, which, as mentioned earlier, comprises a process that loads the data into the target system.
- The two steps,21 and 23, in FIG. 2, are actually two batch jobs executing on the target system. The first batch job, 21, connects to the source system, issues an SQL statement to retrieve data from a source system table, uploads the selected data, and streams the data to the second batch job, 23 which loads the data into the target system using the DB2 UDB for z/OS Load utility.
- FIG. 3 is a high level illustration of the software modules used to implement the method and system of the invention. The source system,1, includes source data, 11, a source database management system, 31, for example, a relational database management system, and potentially a middleware product, such as DB2 UDB Relational connect, which allows access to various data sources.
- The target system,3, is associated with a database management system, 43, preferably a relational database management system, an associated database, 45, preferably a relational database, application code to unload and upload data from the data source, and a utility program to load data into the source target.
- As illustrated in FIG. 3, there is substantial code execution on the target system,3. The target system, 3, initiates data transfer from source to target, for example, an IBM DB2 UDB target or similar target, with the application, DMTFUNLD, 37, which both (1) unloads data from the source table and (2) uploads the data to the target system, 3, using, for example, IBM's Distributed Relational Database Architecture (DRDA) protocol.
- DMTFUNLD identifies the data to be unloaded through the execution of an SQL statement. Through the use of DRDA, the SQL statement can be executed against a remote DBMS source, and through the use of DB2 UDB Relational Connect, the remote DBMS source can be one of a variety of DBMS products. The SQL statement issued to unload data from the source DBMS is of the form SELECT * FROM tablename. Once DMTFUNLD issues the SQL statement, the data is uploaded to the target system using DRDA blocking.
- DMTFUNLD drives the unload and load processes and executes as a batch program.
- DMTFUNLD has the psuedocode representation:
- Open the SYSIN dataset and the SYSP UNCH pipe
- Read table name from SYSIN dataset
- Build the SQL statement to be executed: SELECT * FROM <table_name>
- Build the LOAD Utility control statement for the load of the data and write it to
- SYSPUNCH
- Close the SYSPUNCH pipe
- Open the SYSREC pipe
- Execute the SELECT statement to retrieve and upload the data to be migrated and write the data to SYSREC
- Close the SYSREC pipe
- Close the SYSIN dataset
- As illustrated in FIG. 3, this batch application unloads the database table from the data source,11, using middleware, such as Relational Connect, 33, and a relational database management system, such as IBM DB2 UDB, 35. Unloading is initiated using the SQL expression
- SELECT * FROM tablename.
- The method, system, and program product upload the selected data to the data target using Distributed Relational Database Architecture (DRDA) flows, and then generate the LOAD control statement for the load of the extracted table from the source system,1, into the target system, 3. The load control statement and the unloaded data are passed from DMTFUNLD, 37, to the DB2 LOAD utility, 41, using batch pipes, 39. To be noted is that the first, 21, and second, 23, batch jobs execute in parallel. The use of batch pipes, 39, permits (i) upload of data from the source system, 1, and (ii) loading of data into the target system, 3, to be substantially simultaneous. The use of batch pipes, 39, also reduces I/O operations and the use of Direct Access Storage Devices (DASD) by transferring data through processor storage rather then through DASD.
- Two batch jobs are required for each table to be migrated. The first batch job,21, performs the unload of the data from one or more tables of the source, 1, and uploads the extracted data to the DB2 for OS/390 server, 43, on the target, 3. For each table, a second batch job performs the load of the data into a DB2 for OS/390 table using the LOAD Utility, 41. The second batch job for each table, 23, is automatically submitted for execution by the first batch job, 21. The first, 21, and second, 23, batch jobs for an individual table execute in parallel. In addition, multiple first batch jobs can execute in parallel. The methodology also includes a process for generating the Job Control Language (JCL) for the batch jobs.
- The unload environment on the source data platform,1, requires special setup and configuration. The system, method, and program product include a process for accomplishing this prior to the execution of the batch jobs that migrate the tables.
- The data being migrated always resides in memory and never needs to be written to an intermediate file or any other type of intermediate data store on the target machine, e.g., an IBM OS/390 machine. Source to target datatype conversions, for example, Oracle to DB2 datatype conversions, occur once, at the time the data is unloaded from the source database. The DRDA protocol is used to transfer the data.
- The method, system, and program product of the invention also has the capability to create a copy of the data being loaded—in parallel with the execution of the extraction from the source and the load to the target. This copy is useful in situations where the amount of data being migrated is large and the LOAD Utility,41, for whatever reason, fails to execute to completion, as the copy can be used to restart the load of the data from the last internal LOAD Utility checkpoint rather than from the start of the load. When used, this optional facility does create a copy of the data in an intermediate data store, the local target file system, for example, an IBM OS/390 file system.
- The data migration process is initiated by the batch application (DMTFUNLD),37, that executes under the target's operating system, for example IBM z/OS. Each invocation of the application:
- (1) unloads a table from a source database,11, using, for example, IBM DB2 UDB for AIX with Relational Connect by executing SELECT * FROM tablename,
- (2) uploads the table to the target machine using DRDA flows
- (3) generates the target machine's LOAD Utility,41, control statement for the subsequent load of the table into the target machine's database management system, for example, IBM DB2 UDB for OS/390, 43.
- The LOAD Utility control statement has the form:
- LOAD DATA LOG NO INDDN ddname ENFORCE NO RESUME YES
- SORTKEYS 150000000 INTO TABLE into_table_specification
- The batch application passes the LOAD Utility control statement and the data to the target's database management system's LOAD utility using Batch Pipes,39. The use of Batch Pipes:
- (1) permits the upload and the load of the data to proceed in parallel
- (2) reduces the number of I/O operations and the use of DASD by transferring data through processor storage rather than to and from DASD
- The bulk data migration method, system, and program product makes the following assumptions about the source and target schemas:
- (1) The source DBMS system and target DBMS system contain identical tables or the source DBMS tables can be mapped to the target DBMS tables using a mechanism such as a relational view.
- (2) The source and target tables have the same table and column names.
- (3) The datatypes associated with columns of the source and target tables are identical or the datatypes of the source table will be replaced with equivalent target datatypes.
- These assumptions permit the existing middleware applications to access the tables that have been migrated to the target system, for example, DB2 for OS/390 tables, and preserve the referential integrity relationships that are introduced and managed by those middleware applications.
- This example illustrates the creation, modification, and execution of various commands, jobs, and SQL statements used to establish and configure the execution environment for the data migration tool.
- The execution environment had the following characteristics:
- 1. OS/390 Database Server: stplex4a.stl.ibm.com
- 2. DB2 for OS/390 Subsystem: SBL1 (DB2 for OS/390 V6)
- 3. Source library for DMTFUNLD: USRNDO1.SBL1.SDSNSAMP
- 4. JCL library: USRNDO1.SBL1.JCL
- 5. REXX EXEC library: USRNDO1.SBL1.REXX
- 6. AIX Database Server: yoda13_tr0.stl.ibm.com
- 7. DB2 UDB for AIX database: DMTDB271 (DB2 for UDB V7.1 fix pack 2)
- 8. Oracle Server: orac8i (Oracle Version 8.1.6 using Net8)
- The data migration tool used the federated database support provided by DB2 UDB V7 and the federated database support for Oracle data sources provided by DB2 Relational Connect. DB2 UDB and Relational Connect were configured for access to Oracle data. The steps included installing Relational Connect and adding an Oracle data source to a federated system, as described in “Setting Up a Federated System to Access Oracle Data Sources” in the chapter “Configuring a Federated Database System” of the DB2 UDB and DB2 Connect Installation and Configuration Supplement.
- In order to add Oracle data sources to the federated system, the following steps were performed:
- Step 1: Install and configure the Oracle client software on the DB2 federated server using the documentation provided by Oracle. The documentation for this example was from Oracle Version 8.1.6 and Net8.
- Step 2: Set data source environment variables by modifying the DB2 DJ.ini file and issuing the db2set command. The db2set command updates the DB2 profile registry with the specified settings. The db2dj.ini file was edited to set the ORACLE_HOME, ORACLE_BASE, ORA_NLS, and TNS_ADMIN environment variables, as shown in the Appendix.
- Step 3: Insure that the SQL*Net or Net8 tnsnames.ora file is updated for each Oracle server to which communications are configured, and update the tnsnames.ora file for the server yoda13_tr0.stl.ibm.com.
- Step 4: Recycle the DB2 instance:
- Step 5: Use the CREATE WRAPPER statement to define the wrapper library that will be used to access Oracle data sources. Wrappers are the mechanism that federated servers use to communicate with and retrieve data from data sources.
- Step 6: Set the DB2_DJ_COMM environment variable to include the wrapper library that corresponds to the wrapper module created in the previous step.
- Step 7: Next, use the CREATE SERVER statement to define each Oracle server to which communications are configured. We created the Oracle server orac8i.
- Step 8: If a user ID or password at the federated server was different from a user ID or password at an Oracle data source, use the CREATE USER MAPPING statement to map the local user ID to the user ID and password defined at the Oracle data source. We used the Oracle user ID SYS to access the Oracle data on server orac8i. SYS is one of the DBA users that is created when a database is installed and initialized. The DBA role has all system privileges and the ability to grant all privileges to other users. The Oracle user SYS owns all base tables and user-accessible views of the data dictionary.
- Step 9: For Oracle tables in the Oracle data source that do not contain long columns, use the CREATE NICKNAME statement to assign a nickname to the table. Note that the nickname must be the same as the table name specified for the DB2 for OS/390 target table.
- Note: Due to schema restrictions, for the tables migrated in this example, Oracle Long data types had to be cast to DB2 UDB for z/OS varchar(length) data types, where length was the max actual length of the data contained in the Oracle Long column.
- Step 10. For Oracle tables in an Oracle data source that do contain long columns, use the CREATE NICKNAME statement to assign a nickname to each table located in the Oracle data source and the CREATE VIEW statement to cast the datatype of each long column to varchar. Note that the view name must be the same as the table name specified for the DB2 for OS/390 target table.
- Next, it was necessary to modify the configuration for the DB2 UDB Database.
- Step 11: Increase the APPLHEAPSZ configuration parameter setting to 1024. The APPLHEAPSZ configuration parameter defines the number of private memory pages available to be used by the database manager on behalf of a specific agent or subagent. The default APPLHEAPSZ value is inadequate for applications that retrieve data from Oracle tables that contain one or more columns having a datatype of long.
- To update the database configuration for the target database, we used the DB2 Command Line Processor to set the default application heap parameter (APPLHEAPSZ) for this database to 1024:
- Step 12: Next insure that a temporary tablespace exists of adequate size for the transfer of the largest table stored in Oracle.
- Configuring DB2 for OS/390
- Step 13: Migrate the schema from Oracle to DB2 for OS/390, as shown in the Appendix.
- Step 14: Install the source code for DMTFUNLD, the JCL for the precompile, assemble, link edit, and bind of DMTFUNLD, and the UNLOAD and RELOAD REXX EXECs, in your favorite assembler source code, JCL, and REXX libraries.
- Step 15: Configure the DB2 for OS/390 Communications Database so that DB2 for OS/390 can function as a DRDA Application Requester to access the remote Oracle server via DB2 UDB, as shown in the Appendix.
- This step included inserting a row into the SYSIBM.USERNAMES table with a column TYPE value of “O” for outbound translation, an AUTHID value of blank indicating that translation applies to all authorization ids, a LINKNAME value identical to the SYSIBM.LOCATIONS LINKNAME column value, and a userid and password values respectively for the NEWAUTHID and PASSWORD columns that specify a user ID and password of a user that has the authority to access the Oracle tables via the nicknames and views created above.
-
Claims (36)
1. A method of migrating data from a table in a source system to a table in a target system comprising the steps of:
a. initiating two parallel batch processes,
b. one of said batch processes unloading the data from the source system and uploading the data into the target system, and
c. the other of said batch processes loading the source data into a database table at the target system.
2. The method of claim 1 comprising using an SQL “SELECT * FROM tablename” command to unload the data from the source system, where “tablename” is the name of the source table.
3. The method of claim 1 comprising using a LOAD Utility to load the data into a database at the target system.
4. The method of claim 1 comprising
a. initiating the two parallel batch processes on the target system,
b. first initiating the said batch process to load the source data into a database at the target system; and
c. thereafter initiating the other of one of said batch processes to unload the data from the source system and uploading the data into the target system.
5. The method of claim 1 wherein the tables are relational database tables.
6. The method of claim 1 comprising generating on the target system control languages to submit and execute batch jobs for data transfer.
7. A computer system comprising at least one database management system configured and controlled as a target system and adapted for communication with a second database management system functioning as a source system, said computer system comprising at least one database management system configured and controlled as a target system, said computer system being further configured and controlled to execute two batch processes from the target system,
a. one of said batch processes unloading data from the source system and uploading the data to the target system, and
b. the other of said batch processes loading the data into a database at the target system.
8. The system of claim 7 comprising using an SQL “SELECT * FROM tablename” command to unload the data from the source system, where “tablename” is the name of the source table.
9. The system of claim 7 comprising using a LOAD Utility to load the source data into a database at the target system.
10. The system of claim 7 further adapted to:
a. initiate the two parallel batch processes on the target system,
b. first initiate the said batch process to load the data into a database at the target system; and
c. thereafter initiate the other of one of said batch processes to unload the data from the source system and upload the data into the target system.
11. The system of claim 7 wherein the tables are relational database tables.
12. The system of claim 7 further adapted and controlled to generate on the target system control languages to submit and execute batch jobs for data transfer.
13. A program product comprising computer readable instructions on a media, said instructions being capable of controlling and configuring a computer to carry out the method of migrating data from a data base in a source system to a data base in a target system and comprising the steps of:
a. initiating two parallel batch processes,
b. one of said batch processes unloading data from the source system and uploading the data to the target system, and
c. the other of said batch processes loading the data into a data table at the target system.
14. The program product of claim 13 wherein the program product further comprises computer readable instructions for using an SQL “SELECT * FROM tablename” command to unload the data from the source system, where “tablename” is the name of the source table.
15. The program product of claim 13 wherein the program product further comprises computer readable instructions for using a LOAD Utility to load the data into the table at the target system.
16. The program product of claim 13 wherein the media is magnetic or optical media.
17. The program product of claim 13 wherein the computer readable instructions are readable for at least one of transmission, installation, instantiation, or execution.
18. The program product of claim 13 wherein the computer readable instructions are in the form of executable code.
19. The program product of claim 13 wherein the computer readable instructions are in the form of code that requires loading to memory for execution.
20. The program product of claim 13 wherein the computer readable instructions are in the form of distribution code that requires one of both of decompression or decryption to be executable.
21. The program product of claim 13 further containing instructions to:
a. initiate the two parallel batch processes on the target system,
b. first initiate the said batch process to load the data into a database at the target system; and
c. thereafter initiate the other of one of said batch processes to unload the data from the source system and upload the data into the target system.
22. The program product of claim 13 wherein the tables are relational database tables.
23. The program product of claim 13 further containing instructions to generate on the target system control languages to submit and execute batch jobs for data transfer.
24. A program product comprising computer readable instructions on a media, said instructions being capable of controlling and configuring a computer to carry out the method of migrating data from a data base in a source system to a data base in a target system and comprising the steps of:
a. initiating two processes on the target system,
b. one of said processes unloading data from the source system and uploading the data to the target system, and
c. the other of said processes loading the data into a table at the target system.
25. The method of claim 24 wherein the processes are parallel processes.
26. The method of claim 24 wherein the processes are batch processes.
27. The program product of claim 24 wherein the program product further comprises computer readable instructions for using an SQL “SELECT * FROM tablename” command to unload the data from the source system, where “tablename” is the name of the source table.
28. The program product of claim 24 wherein the program product further comprises computer readable instructions for using a LOAD Utility to load the data into a table at the target system.
29. The program product of claim 24 wherein the media is magnetic or optical media.
30. The program product of claim 24 wherein the computer readable instructions are readable for at least one of transmission, installation, instantiation, or execution.
31. The program product of claim 24 wherein the computer readable instructions are in the form of executable code.
32. The program product of claim 24 wherein the computer readable instructions are in the form of code that requires loading to memory for execution.
33. The program product of claim 24 wherein the computer readable instructions are in the form of distribution code that requires one of both of decompression or decryption to be executable.
34. The program product of claim 24 further containing instructions to:
a. initiate the two parallel batch processes on the target system,
b. first initiate the said batch process to load the data into a database at the target system; and
c. thereafter initiate the other of one of said batch processes to unload the data from the source system and upload the data into the target system.
35. The program product of claim 24 wherein the tables are relational database tables.
36. The program product of claim 24 further containing instructions to generate on the target system control languages to submit and execute batch jobs for data transfer.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/102,385 US20030177146A1 (en) | 2002-03-18 | 2002-03-18 | Method, system, and program product for migrating data from one data base management system to another data base management system |
US12/473,070 US8010582B2 (en) | 2002-03-18 | 2009-05-27 | Method, system, and program product for migrating data from one data base management system to another data base management system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/102,385 US20030177146A1 (en) | 2002-03-18 | 2002-03-18 | Method, system, and program product for migrating data from one data base management system to another data base management system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/473,070 Continuation US8010582B2 (en) | 2002-03-18 | 2009-05-27 | Method, system, and program product for migrating data from one data base management system to another data base management system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20030177146A1 true US20030177146A1 (en) | 2003-09-18 |
Family
ID=28040203
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/102,385 Abandoned US20030177146A1 (en) | 2002-03-18 | 2002-03-18 | Method, system, and program product for migrating data from one data base management system to another data base management system |
US12/473,070 Expired - Fee Related US8010582B2 (en) | 2002-03-18 | 2009-05-27 | Method, system, and program product for migrating data from one data base management system to another data base management system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/473,070 Expired - Fee Related US8010582B2 (en) | 2002-03-18 | 2009-05-27 | Method, system, and program product for migrating data from one data base management system to another data base management system |
Country Status (1)
Country | Link |
---|---|
US (2) | US20030177146A1 (en) |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039748A1 (en) * | 2002-08-23 | 2004-02-26 | Netdelivery Corporation | Systems and methods for implementing database independent applications |
US20040153459A1 (en) * | 2003-01-21 | 2004-08-05 | Gary Whitten | System and method for transferring a database from one location to another over a network |
US20060122960A1 (en) * | 2004-12-03 | 2006-06-08 | International Business Machine Corporation | Information processing system and control |
US20060200504A1 (en) * | 2005-03-02 | 2006-09-07 | International Business Machines Corporation | Method and apparatus for role mapping methodology for user registry migration |
US20070226251A1 (en) * | 2006-03-24 | 2007-09-27 | Rocket Software, Inc. | Method of augmenting and controlling utility program execution for a relational database management system |
US20080275944A1 (en) * | 2007-05-04 | 2008-11-06 | International Business Machines Corporation | Transaction-initiated batch processing |
US20080288920A1 (en) * | 2007-02-19 | 2008-11-20 | Shinji Takai | Apparatus for generating job network flow from job control statement described in job control language and its method |
US20090037313A1 (en) * | 2003-10-22 | 2009-02-05 | Scottrade, Inc. | System and Method for the Automated Brokerage of Financial Instruments |
US20100269097A1 (en) * | 2009-04-21 | 2010-10-21 | Ca, Inc. | Scripting language assembler exit |
US7822780B1 (en) * | 2004-10-20 | 2010-10-26 | Embarq Holdings Company, LP | Computerized method and system for generating procedures capable of being used with multiple databases |
US20120030247A1 (en) * | 2010-07-29 | 2012-02-02 | Accenture Global Services Limited | Document migration |
CN103020021A (en) * | 2012-11-23 | 2013-04-03 | 成都飞机工业(集团)有限责任公司 | Heterogeneous PDM (product data management) system data conversion method and conversion adapter |
US20140114924A1 (en) * | 2012-10-19 | 2014-04-24 | International Business Machines Corporation | Data loading tool |
US20140372872A1 (en) * | 2008-04-29 | 2014-12-18 | Accenture Global Services Limited | Content migration tool and method associated therewith |
US20140379636A1 (en) * | 2013-06-25 | 2014-12-25 | Sap Ag | Automated resolution of database dictionary conflicts |
US20150006589A1 (en) * | 2010-05-26 | 2015-01-01 | Pivotal Software, Inc. | Apparatus and method for expanding a shared-nothing system |
US20150120224A1 (en) * | 2013-10-29 | 2015-04-30 | C3 Energy, Inc. | Systems and methods for processing data relating to energy usage |
US20150248404A1 (en) * | 2014-02-28 | 2015-09-03 | Red Hat, Inc. | Database schema migration |
CN106202111A (en) * | 2015-05-06 | 2016-12-07 | 阿里巴巴集团控股有限公司 | The method of calibration of database data and device |
US9811527B1 (en) * | 2013-09-30 | 2017-11-07 | EMC IP Holding Company LLC | Methods and apparatus for database migration |
US20170344599A1 (en) * | 2016-05-30 | 2017-11-30 | Sap Se | Memory optimization using data aging in full text indexes |
CN107958057A (en) * | 2017-11-29 | 2018-04-24 | 苏宁云商集团股份有限公司 | A kind of code generating method and device for being used for Data Migration in heterogeneous database |
CN108256034A (en) * | 2018-01-11 | 2018-07-06 | 北京潘达互娱科技有限公司 | Data migration method and equipment |
US20180260458A1 (en) * | 2017-03-09 | 2018-09-13 | Bank Of America Corporation | Transforming Data Structures and Data Objects for Migrating Data Between Databases Having Different Schemas |
WO2019001272A1 (en) * | 2017-06-25 | 2019-01-03 | 平安科技(深圳)有限公司 | Data migration system and method |
US10346374B1 (en) * | 2014-03-14 | 2019-07-09 | Open Invention Network Llc | Optimized data migration application for database compliant data extraction, loading and transformation |
US20200104376A1 (en) * | 2018-09-28 | 2020-04-02 | Oracle International Corporation | Data Migration Using Customizable Database Consolidation Rules |
US10817530B2 (en) | 2015-01-23 | 2020-10-27 | C3.Ai, Inc. | Systems, methods, and devices for an enterprise internet-of-things application development platform |
US11042517B2 (en) * | 2019-06-07 | 2021-06-22 | Sap Se | Online migration of database systems |
US11392561B2 (en) | 2018-09-28 | 2022-07-19 | Oracle International Corporation | Data migration using source classification and mapping |
CN114925074A (en) * | 2022-06-21 | 2022-08-19 | 中国建设银行股份有限公司 | Data unloading method, device, equipment and medium |
US12099483B2 (en) | 2018-09-28 | 2024-09-24 | Oracle International Corporation | Rules based scheduling and migration of databases using complexity and weight |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120016856A1 (en) * | 2010-07-15 | 2012-01-19 | Google Inc | Content extractor |
US8566137B1 (en) * | 2011-03-22 | 2013-10-22 | Amazon Technologies, Inc. | Inventory across multiple marketplaces |
CN102739703A (en) * | 2011-04-02 | 2012-10-17 | 中兴通讯股份有限公司 | Method and system for data migration in peer-to-peer network |
CN102999537B (en) * | 2011-09-19 | 2017-01-18 | 阿里巴巴集团控股有限公司 | System and method for data migration |
US20130304553A1 (en) | 2012-05-09 | 2013-11-14 | Google Inc. | Point of sale offer redemptions |
US9256472B2 (en) * | 2012-07-10 | 2016-02-09 | Sears Brands, Llc | System and method for economical migration of legacy applications from mainframe and distributed platforms |
US9734221B2 (en) | 2013-09-12 | 2017-08-15 | Sap Se | In memory database warehouse |
US9734230B2 (en) | 2013-09-12 | 2017-08-15 | Sap Se | Cross system analytics for in memory data warehouse |
US9773048B2 (en) | 2013-09-12 | 2017-09-26 | Sap Se | Historical data for in memory data warehouse |
US10135749B2 (en) * | 2013-09-23 | 2018-11-20 | Sears Brands, L.L.C. | Mainframe migration tools |
CN104536994A (en) * | 2014-12-11 | 2015-04-22 | 北京京东尚科信息技术有限公司 | Universal data migration method and device |
US10970277B2 (en) | 2016-01-20 | 2021-04-06 | Oracle International Corporation | System and method for dynamic conversion of database accessing scripts during runtime in a mainframe rehosting platform |
US10691712B2 (en) * | 2016-01-20 | 2020-06-23 | Oracle International Corporation | System and method for merging a mainframe data file to a database table for use by a mainframe rehosting platform |
US10331897B2 (en) | 2016-01-20 | 2019-06-25 | Oracle International Corporation | System and method for protecting plain text scripting language programs in a mainframe rehosting platform |
US10379914B2 (en) | 2016-01-20 | 2019-08-13 | Oracle International Corporation | System and method for achieving specific behaviors by intercepting file access calls in a mainframe rehosting platform |
CN107368486B (en) * | 2016-05-12 | 2020-06-09 | 阿里巴巴集团控股有限公司 | Service migration method and device |
US11042471B2 (en) | 2017-08-25 | 2021-06-22 | Oracle International Corporation | System and method for providing a test manager for use with a mainframe rehosting platform |
US11461357B2 (en) | 2020-07-23 | 2022-10-04 | Bank Of America Corporation | Data conversion bulk validation automated framework |
US11360952B2 (en) | 2020-08-03 | 2022-06-14 | Bank Of America Corporation | System and method for managing data migration based on analysis of relevant data |
Citations (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US13038A (en) * | 1855-06-12 | Abbangkement of bttmpebs fob self-acting cab-bbakes | ||
US5678044A (en) * | 1995-06-02 | 1997-10-14 | Electronic Data Systems Corporation | System and method for improved rehosting of software systems |
US5761667A (en) * | 1996-08-07 | 1998-06-02 | Bmc Software, Inc. | Method of optimizing database organization using sequential unload/load operations |
US5890159A (en) * | 1996-11-12 | 1999-03-30 | International Computers Limited | Data transfer mechanism between databases using a separate pipe at each database |
US5899990A (en) * | 1997-03-31 | 1999-05-04 | Sun Microsystems, Inc. | Java-to-Database Connectivity Server |
US5937415A (en) * | 1995-12-13 | 1999-08-10 | Sybase, Inc. | Data base development system with methods facilitating copying of data from one data source to another |
US6016501A (en) * | 1998-03-18 | 2000-01-18 | Bmc Software | Enterprise data movement system and method which performs data load and changed data propagation operations |
US6029178A (en) * | 1998-03-18 | 2000-02-22 | Bmc Software | Enterprise data movement system and method which maintains and compares edition levels for consistency of replicated data |
US6035307A (en) * | 1998-03-30 | 2000-03-07 | Bmc Software | Enterprise data movement system and method including opportunistic performance of utilities and data move operations for improved efficiency |
US6092086A (en) * | 1998-03-31 | 2000-07-18 | Bmc Software | System and method for handling backout processing during capture of changed data in an enterprise computer system |
US6115722A (en) * | 1998-10-27 | 2000-09-05 | Computer Associates Think, Inc. | Method for checking tablespaces involved in referential integrity |
US6115704A (en) * | 1991-09-27 | 2000-09-05 | Bmc Software, Inc. | Extended SQL change definition language for a computer database system |
US6151602A (en) * | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6167405A (en) * | 1998-04-27 | 2000-12-26 | Bull Hn Information Systems Inc. | Method and apparatus for automatically populating a data warehouse system |
US6170045B1 (en) * | 1997-04-30 | 2001-01-02 | International Business Machines Corporation | Cross-system data piping using an external shared memory |
US6219662B1 (en) * | 1997-07-10 | 2001-04-17 | International Business Machines Corporation | Supporting database indexes based on a generalized B-tree index |
US6219660B1 (en) * | 1997-09-30 | 2001-04-17 | International Business Machines Corporation | Access path selection for SQL with variables in a RDBMS |
US20010013038A1 (en) * | 1997-09-09 | 2001-08-09 | Purcell Keith J. | Technique for providing a universal query for multiple different databases |
US20020161748A1 (en) * | 2001-02-28 | 2002-10-31 | International Business Machines Corporation | Data loading from a remote data source |
US6490590B1 (en) * | 2000-02-14 | 2002-12-03 | Ncr Corporation | Method of generating a logical data model, physical data model, extraction routines and load routines |
US6567823B1 (en) * | 2000-08-07 | 2003-05-20 | Corigin Ltd. | Change propagation method using DBMS log files |
US6643671B2 (en) * | 2001-03-14 | 2003-11-04 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio consistency group |
US6789096B2 (en) * | 2001-06-25 | 2004-09-07 | Informatica Corporation | Real time sessions in an analytic application |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5657823A (en) * | 1995-11-13 | 1997-08-19 | Kogure; Eiji | Near surface disconnect riser |
US6092088A (en) * | 1996-09-20 | 2000-07-18 | Canon Kabushiki Kaisha | Method for controlling document processing apparatus connected to network |
US6151608A (en) * | 1998-04-07 | 2000-11-21 | Crystallize, Inc. | Method and system for migrating data |
JP2000029891A (en) | 1998-07-10 | 2000-01-28 | Toshiba Corp | Data preparation device for relational database management system |
JP2000029898A (en) | 1998-07-14 | 2000-01-28 | Hitachi Ltd | SQL generation system |
US7251747B1 (en) * | 2001-09-20 | 2007-07-31 | Ncr Corp. | Method and system for transferring data using a volatile data transfer mechanism such as a pipe |
-
2002
- 2002-03-18 US US10/102,385 patent/US20030177146A1/en not_active Abandoned
-
2009
- 2009-05-27 US US12/473,070 patent/US8010582B2/en not_active Expired - Fee Related
Patent Citations (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US13038A (en) * | 1855-06-12 | Abbangkement of bttmpebs fob self-acting cab-bbakes | ||
US6115704A (en) * | 1991-09-27 | 2000-09-05 | Bmc Software, Inc. | Extended SQL change definition language for a computer database system |
US5678044A (en) * | 1995-06-02 | 1997-10-14 | Electronic Data Systems Corporation | System and method for improved rehosting of software systems |
US5937415A (en) * | 1995-12-13 | 1999-08-10 | Sybase, Inc. | Data base development system with methods facilitating copying of data from one data source to another |
US5761667A (en) * | 1996-08-07 | 1998-06-02 | Bmc Software, Inc. | Method of optimizing database organization using sequential unload/load operations |
US5890159A (en) * | 1996-11-12 | 1999-03-30 | International Computers Limited | Data transfer mechanism between databases using a separate pipe at each database |
US5899990A (en) * | 1997-03-31 | 1999-05-04 | Sun Microsystems, Inc. | Java-to-Database Connectivity Server |
US6170045B1 (en) * | 1997-04-30 | 2001-01-02 | International Business Machines Corporation | Cross-system data piping using an external shared memory |
US6219662B1 (en) * | 1997-07-10 | 2001-04-17 | International Business Machines Corporation | Supporting database indexes based on a generalized B-tree index |
US20010013038A1 (en) * | 1997-09-09 | 2001-08-09 | Purcell Keith J. | Technique for providing a universal query for multiple different databases |
US6219660B1 (en) * | 1997-09-30 | 2001-04-17 | International Business Machines Corporation | Access path selection for SQL with variables in a RDBMS |
US6151602A (en) * | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6016501A (en) * | 1998-03-18 | 2000-01-18 | Bmc Software | Enterprise data movement system and method which performs data load and changed data propagation operations |
US6029178A (en) * | 1998-03-18 | 2000-02-22 | Bmc Software | Enterprise data movement system and method which maintains and compares edition levels for consistency of replicated data |
US6035307A (en) * | 1998-03-30 | 2000-03-07 | Bmc Software | Enterprise data movement system and method including opportunistic performance of utilities and data move operations for improved efficiency |
US6092086A (en) * | 1998-03-31 | 2000-07-18 | Bmc Software | System and method for handling backout processing during capture of changed data in an enterprise computer system |
US6167405A (en) * | 1998-04-27 | 2000-12-26 | Bull Hn Information Systems Inc. | Method and apparatus for automatically populating a data warehouse system |
US6115722A (en) * | 1998-10-27 | 2000-09-05 | Computer Associates Think, Inc. | Method for checking tablespaces involved in referential integrity |
US6490590B1 (en) * | 2000-02-14 | 2002-12-03 | Ncr Corporation | Method of generating a logical data model, physical data model, extraction routines and load routines |
US6567823B1 (en) * | 2000-08-07 | 2003-05-20 | Corigin Ltd. | Change propagation method using DBMS log files |
US20020161748A1 (en) * | 2001-02-28 | 2002-10-31 | International Business Machines Corporation | Data loading from a remote data source |
US6643671B2 (en) * | 2001-03-14 | 2003-11-04 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio consistency group |
US6789096B2 (en) * | 2001-06-25 | 2004-09-07 | Informatica Corporation | Real time sessions in an analytic application |
Cited By (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039748A1 (en) * | 2002-08-23 | 2004-02-26 | Netdelivery Corporation | Systems and methods for implementing database independent applications |
US7346635B2 (en) * | 2003-01-21 | 2008-03-18 | Connection Concepts, Inc. | System and method for transferring a database from one location to another over a network |
US20040153459A1 (en) * | 2003-01-21 | 2004-08-05 | Gary Whitten | System and method for transferring a database from one location to another over a network |
US8069138B2 (en) * | 2003-10-22 | 2011-11-29 | Scottrade, Inc. | Database migration in an automated financial instrument brokerage system |
US20090037313A1 (en) * | 2003-10-22 | 2009-02-05 | Scottrade, Inc. | System and Method for the Automated Brokerage of Financial Instruments |
US7822780B1 (en) * | 2004-10-20 | 2010-10-26 | Embarq Holdings Company, LP | Computerized method and system for generating procedures capable of being used with multiple databases |
US20060122960A1 (en) * | 2004-12-03 | 2006-06-08 | International Business Machine Corporation | Information processing system and control |
US7539679B2 (en) * | 2004-12-03 | 2009-05-26 | International Business Machines Corporation | Information processing system and control |
US20060200504A1 (en) * | 2005-03-02 | 2006-09-07 | International Business Machines Corporation | Method and apparatus for role mapping methodology for user registry migration |
US8103640B2 (en) * | 2005-03-02 | 2012-01-24 | International Business Machines Corporation | Method and apparatus for role mapping methodology for user registry migration |
US20070226251A1 (en) * | 2006-03-24 | 2007-09-27 | Rocket Software, Inc. | Method of augmenting and controlling utility program execution for a relational database management system |
US20080288920A1 (en) * | 2007-02-19 | 2008-11-20 | Shinji Takai | Apparatus for generating job network flow from job control statement described in job control language and its method |
US8326867B2 (en) * | 2007-02-19 | 2012-12-04 | Nec Corporation | Apparatus for generating job network flow from job control statement described in job control language and its method |
US20080275944A1 (en) * | 2007-05-04 | 2008-11-06 | International Business Machines Corporation | Transaction-initiated batch processing |
US20140372872A1 (en) * | 2008-04-29 | 2014-12-18 | Accenture Global Services Limited | Content migration tool and method associated therewith |
US9495376B2 (en) * | 2008-04-29 | 2016-11-15 | Accenture Global Services Limited | Content migration tool and method associated therewith |
US20100269097A1 (en) * | 2009-04-21 | 2010-10-21 | Ca, Inc. | Scripting language assembler exit |
US9323791B2 (en) * | 2010-05-26 | 2016-04-26 | Pivotal Software, Inc. | Apparatus and method for expanding a shared-nothing system |
US20150006589A1 (en) * | 2010-05-26 | 2015-01-01 | Pivotal Software, Inc. | Apparatus and method for expanding a shared-nothing system |
US20120030247A1 (en) * | 2010-07-29 | 2012-02-02 | Accenture Global Services Limited | Document migration |
US8473458B2 (en) * | 2010-07-29 | 2013-06-25 | Accenture Global Services Limited | Document migration |
US9471607B2 (en) * | 2012-10-19 | 2016-10-18 | International Business Machines Corporation | Data loading tool |
US9773027B2 (en) | 2012-10-19 | 2017-09-26 | International Business Machines Corporation | Data loading tool |
US20140114924A1 (en) * | 2012-10-19 | 2014-04-24 | International Business Machines Corporation | Data loading tool |
CN103020021A (en) * | 2012-11-23 | 2013-04-03 | 成都飞机工业(集团)有限责任公司 | Heterogeneous PDM (product data management) system data conversion method and conversion adapter |
US20140379636A1 (en) * | 2013-06-25 | 2014-12-25 | Sap Ag | Automated resolution of database dictionary conflicts |
US9176996B2 (en) * | 2013-06-25 | 2015-11-03 | Sap Se | Automated resolution of database dictionary conflicts |
US9811527B1 (en) * | 2013-09-30 | 2017-11-07 | EMC IP Holding Company LLC | Methods and apparatus for database migration |
US20150120224A1 (en) * | 2013-10-29 | 2015-04-30 | C3 Energy, Inc. | Systems and methods for processing data relating to energy usage |
US10884039B2 (en) | 2013-10-29 | 2021-01-05 | C3.Ai, Inc. | Systems and methods for processing data relating to energy usage |
US11320469B2 (en) | 2013-10-29 | 2022-05-03 | C3.Ai, Inc. | Systems and methods for processing different data types |
US20150248404A1 (en) * | 2014-02-28 | 2015-09-03 | Red Hat, Inc. | Database schema migration |
US11645248B1 (en) | 2014-03-14 | 2023-05-09 | International Business Machines Corporation | Optimized data migration application for database compliant data extraction, loading and transformation |
US10346374B1 (en) * | 2014-03-14 | 2019-07-09 | Open Invention Network Llc | Optimized data migration application for database compliant data extraction, loading and transformation |
US11954112B2 (en) | 2015-01-23 | 2024-04-09 | C3.Ai, Inc. | Systems and methods for data processing and enterprise AI applications |
US11126635B2 (en) | 2015-01-23 | 2021-09-21 | C3.Ai, Inc. | Systems and methods for data processing and enterprise AI applications |
US10817530B2 (en) | 2015-01-23 | 2020-10-27 | C3.Ai, Inc. | Systems, methods, and devices for an enterprise internet-of-things application development platform |
US10824634B2 (en) | 2015-01-23 | 2020-11-03 | C3.Ai, Inc. | Systems, methods, and devices for an enterprise AI and internet-of-things platform |
CN106202111A (en) * | 2015-05-06 | 2016-12-07 | 阿里巴巴集团控股有限公司 | The method of calibration of database data and device |
US20170344599A1 (en) * | 2016-05-30 | 2017-11-30 | Sap Se | Memory optimization using data aging in full text indexes |
US11288257B2 (en) * | 2016-05-30 | 2022-03-29 | Sap Se | Memory optimization using data aging in full text indexes |
US20180260458A1 (en) * | 2017-03-09 | 2018-09-13 | Bank Of America Corporation | Transforming Data Structures and Data Objects for Migrating Data Between Databases Having Different Schemas |
US10540366B2 (en) * | 2017-03-09 | 2020-01-21 | Bank Of America Corporation | Transforming data structures and data objects for migrating data between databases having different schemas |
WO2019001272A1 (en) * | 2017-06-25 | 2019-01-03 | 平安科技(深圳)有限公司 | Data migration system and method |
CN107958057A (en) * | 2017-11-29 | 2018-04-24 | 苏宁云商集团股份有限公司 | A kind of code generating method and device for being used for Data Migration in heterogeneous database |
CN108256034A (en) * | 2018-01-11 | 2018-07-06 | 北京潘达互娱科技有限公司 | Data migration method and equipment |
US20200104376A1 (en) * | 2018-09-28 | 2020-04-02 | Oracle International Corporation | Data Migration Using Customizable Database Consolidation Rules |
US11392561B2 (en) | 2018-09-28 | 2022-07-19 | Oracle International Corporation | Data migration using source classification and mapping |
US11847103B2 (en) * | 2018-09-28 | 2023-12-19 | Oracle International Corporation | Data migration using customizable database consolidation rules |
US12099483B2 (en) | 2018-09-28 | 2024-09-24 | Oracle International Corporation | Rules based scheduling and migration of databases using complexity and weight |
US11042517B2 (en) * | 2019-06-07 | 2021-06-22 | Sap Se | Online migration of database systems |
CN114925074A (en) * | 2022-06-21 | 2022-08-19 | 中国建设银行股份有限公司 | Data unloading method, device, equipment and medium |
Also Published As
Publication number | Publication date |
---|---|
US8010582B2 (en) | 2011-08-30 |
US20090240704A1 (en) | 2009-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8010582B2 (en) | Method, system, and program product for migrating data from one data base management system to another data base management system | |
US6163776A (en) | System and method for exchanging data and commands between an object oriented system and relational system | |
EP3365807B1 (en) | Application containers for container databases | |
US6321374B1 (en) | Application-independent generator to generate a database transaction manager in heterogeneous information systems | |
US5018060A (en) | Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters | |
US6983277B2 (en) | Method and system of database management for replica database | |
US8341120B2 (en) | Apparatus and methods for transferring database objects into and out of database systems | |
US8521706B2 (en) | Low-downtime and zero-downtime upgrades of database-centric applications | |
CA2441960C (en) | Data loading from a remote data source | |
US7933869B2 (en) | Method and system for cloning a tenant database in a multi-tenant system | |
US10114626B2 (en) | Database level containers | |
US9600269B1 (en) | Deployment of database objects | |
US10528341B2 (en) | User-configurable database artifacts | |
US9996330B2 (en) | Deployment process plugin architecture | |
EP1091305B1 (en) | Method for upgrading a database | |
US8086810B2 (en) | Rapid defragmentation of storage volumes | |
US5857195A (en) | Method of developing and modifying self-describing database management system to generate a new database management system from an existing database management system | |
US20050278280A1 (en) | Self update mechanism for update module | |
WO2017070572A1 (en) | Application containers for container databases | |
US8239402B1 (en) | Standard file system access to data that is initially stored and accessed via a proprietary interface | |
US20080162587A1 (en) | Server synchronization for maintenance activities | |
US7305410B2 (en) | Low-latency method to replace SQL insert for bulk data transfer to relational database | |
Ravikumar et al. | Oracle database migration | |
Bai | JDBC API and JDBC Drivers | |
Putnikovic et al. | Database Migration Using Standard Data Unload and Load Procedures On z/OS Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ZIMOWSKI, MELVIN RICHARD;REEL/FRAME:012736/0675 Effective date: 20020318 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |