WO2018176356A1 - Système et procédé de détermination de la réussite d'une migration d'application entre plates-formes - Google Patents
Système et procédé de détermination de la réussite d'une migration d'application entre plates-formes Download PDFInfo
- Publication number
- WO2018176356A1 WO2018176356A1 PCT/CN2017/078914 CN2017078914W WO2018176356A1 WO 2018176356 A1 WO2018176356 A1 WO 2018176356A1 CN 2017078914 W CN2017078914 W CN 2017078914W WO 2018176356 A1 WO2018176356 A1 WO 2018176356A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- database
- platform
- modification events
- application
- job
- Prior art date
Links
- 238000013508 migration Methods 0.000 title claims abstract description 47
- 230000005012 migration Effects 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000012986 modification Methods 0.000 claims abstract description 86
- 230000004048 modification Effects 0.000 claims abstract description 86
- 238000013515 script Methods 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 10
- 241000677635 Tuxedo Species 0.000 description 21
- 238000012545 processing Methods 0.000 description 15
- 238000012360 testing method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 239000000872 buffer Substances 0.000 description 4
- 239000003999 initiator Substances 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000010923 batch production Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000002513 implantation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3696—Methods or tools to render software testable
Definitions
- Embodiments of the invention are generally related to application servers and application rehosting, and are particularly related to a system and method for determining the success of an application migration from a mainframe platform to an open platform.
- a system and method for determining the migration success of an application from a mainframe platform to an open platform can include the same data baseline.
- a set of triggers can be created on the first database and the second database, to capture database modification events generated by the execution of a job associated with the application on each platform, and to store the database modification events in a table in each database.
- the database modification events from the mainframe platform and the open platform can be downloaded and compared to determine the success of the application migration.
- Figure 1 illustrates an exemplary open system, in accordance with an embodiment.
- FIGs 2-3 illustrate an example of the transactional middleware system as shown in Figure 1, in accordance with an embodiment.
- FIG. 4 illustrates a system for providing a Job Control Language (JCL) execution engine in an open platform, in accordance with embodiment.
- JCL Job Control Language
- Figure 5 illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- Figure 6 further illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- Figure 7 further illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- Figure 8 illustrates a flowchart for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- Figure 9 illustrates a method for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- a rehosting platform and an open platform can be used in interchangeably.
- the Oracle TM Tuxedo Application Runtimes (ART) is an example open platform or rehosting platform.
- Figure 1 illustrates an exemplary open platform, in accordance with an embodiment.
- a rehosting platform 101 and a rehosting workbench 125 can provide an open system/platform for rehosting mainframe applications and data 129 on lower-cost platforms without losing business value or sacrificing Quality of Service (QoS) .
- QoS Quality of Service
- the mainframe applications and data 129 to be rehosted can currently run on a mainframe platform (mainframe platform) 127, for example, an IBM @ mainframe platform; and can include a customer information control system (CICS) 131, an information management system (IMS) 135, a DB2 database 137, one or more data files (e.g., sequential files) 138, and a virtual storage access method (VSAM) file management system 139.
- mainframe platform for example, an IBM @ mainframe platform
- CICS customer information control system
- IMS information management system
- DB2 database 137 e.g., DB2 database
- data files e.g., sequential files
- VSAM virtual storage access method
- the CICS and the IMS can be middleware products on the mainframe platform.
- the CICS is a heavy and rigid transaction processing management system designed to support rapid, high-volume online transaction processing.
- the IMS is a light-weight message-based transaction processing management system.
- the middleware products can be used to host business logic written in COBOL, PL/I, C, Assembly or 4GLs.
- the VSAM can comprise different file organizations which can be used by application programs to manage their data.
- the file organizations can include key sequenced data set key (KSDS) , relative record data set (RRDS) , entry sequenced data set (ESDS) , and linear data set (LDS) .
- KSDS key sequenced data set key
- RRDS relative record data set
- ESDS entry sequenced data set
- LDS linear data set
- the mainframe platform 127 can include a batch execution environment 140 that can support JOB Control Language (JCL) 141 and a job entry subsystem (JES) 143.
- JCL can be a script language to implement batch processes on the mainframe platform.
- JES can be a major component of an operating system on the mainframe platform, can receive jobs into the mainframe platform, schedule the jobs for processing, and control their output processing.
- the rehosting platform can include a software stack compatible with the mainframe platform to run mainframe applications with little to no change to minimize the risks and cost of migration; and an integrated management and monitoring component 113 for use in monitoring the rehosting platform.
- the software stack can provide a set of mainframe-compatible functionalities to preserve CICS, IMS, and batch application logic and data.
- the software stack can include a plurality of application runtimes (ART) 109 for hosting mainframe applications, for example, a CICS application runtime 115, an IMS application runtime 117, and a batch application runtime 119.
- the plurality of application runtimes and a rehosting workbench 125 can be used to migrate 142 the mainframe applications 129 from the mainframe platform 127 to the rehosting platform 101.
- the CICS application runtime can include a set of Tuxedo servers to simulate core features of the mainframe CICS.
- the Tuxedo system servers can provide underlying application server functions, including cluster management, request routing, health monitoring, restarts, failover, load balancing, transaction management, communication channels and gateways (ATMI, CICS, IMS, SOAP/HTTP web services, Java/JCA, . Net, ESB) , and protocol conversion.
- the IMS application runtime can provide a set of DL/I calls for use by COBOL/C applications migrated from the mainframe platform 127; a robust session environment to handle concurrent connections from a plurality of 3270 terminals; a robust execution environment to provide OLTP to process transaction codes received from the 3270 terminals via calling the migrated COBOL/C applications; and a DB plug-in on the rehosting platform.
- the batch application runtime 119 can include a set of Tuxedo servers to simulate mainframe JES core features.
- the batch application runtime can provide batch management and a plurality of JES functions (e.g., job queues, classes, priorities, and initiators) .
- the rehosting workbench can be used to automate code and data migration using migration tools in the rehosting workbench.
- the code and data can include COBOL programs, copybooks, BMS screens, JCL, and DB2 DDL.
- the code and data can be transferred from the mainframe platform 127 to the rehosting workbench, which can parse source objects, calculate dependencies, generate metadata, and produce reports to indicate any missing objects or unused ones in the code and data.
- data migration tools for files and DB2 tables can run, followed by code migration tools for COBOL JCL.
- the code migration tools can apply sophisticated language processing to adapt COBOL code between compiler dialects, transform JCL, adapt SQL calls for differences between DB2 and Oracle DB.
- the data migration tools can generate target schemas, including Oracle DDL, in the rehosting platform 101, and can automate data reloading to the generated target schemas.
- the rehosting workbench can be used in UNIX command line mode, and an Eclipse IDE graphical environment; and can generate system configuration files for the rehosting platform to facilitate configuration management and to simplify the deployment process.
- the software stack can execute on a distributed transactional processing middleware system 121, for example, Oracle Tuxedo.
- the distributed transactional processing middleware system can run on an open system environment, for example, UNIX, Linux, or Windows.
- the distributed transactional processing middleware system can include a native distributed architecture to provide transaction manager features for IMS and CICS from the perspective of applications.
- the distributed transactional processing middleware system can represent a transaction-oriented middleware, or an enterprise application server designed for high availability and to provide scalable applications to support transactions on various distributed systems.
- Examples of the distributed transactional processing middleware system can include Tuxedo (Transactions for UNIX, Enhanced for Distributed Operation) , a message-based communications system to distribute applications across various operating system platforms and databases.
- Tuxedo Transactions for UNIX, Enhanced for Distributed Operation
- message-based communications system to distribute applications across various operating system platforms and databases.
- Tuxedo allows messages to be queued to persistent or non-persistent storage (memory) for later processing or retrieval.
- An application-to-transaction monitor interface (ATMI) in Tuxedo can provide an interface that allows messages to be added to or read from queues.
- Tuxedo can pass service request messages between ATMI clients and servers through operating system (OS) inter-processes.
- OS operating system
- Tuxedo requests are sent to named services, and Tuxedo uses memory based inter-process communication facilities to queue the requests to servers.
- Rehosted mainframe applications can run as Tuxedo services, and can take advantage of SOA integration and enablement capabilities via a plurality of adapters 102, for example, a web service gateway adapter 103, an enterprise service bus (ESB) adapter 105, and an enterprise repository adapter 107.
- adapters 102 for example, a web service gateway adapter 103, an enterprise service bus (ESB) adapter 105, and an enterprise repository adapter 107.
- rehosted/migrated applications can be configured to expose a plurality of service interfaces in legacy components via standard WSDLs, and to provide robust bi-directional web services gateway capabilities.
- the web service gateway adapter 103 an example of which can be Oracle Service Architecture Leveraging Tuxedo (SALT) adapter, can enable the rehosted applications to participate in SOA environments.
- SALT Oracle Service Architecture Leveraging Tuxedo
- the rehosted applications can also use the ESB adapter 105 with built-in Tuxedo Transport for heterogeneous messaging.
- Web services and ESB end points can be imported into an enterprise repository via the enterprise repository adapter 107 to provide visibility, service dependency tracking, and other benefits of service lifecycle governance.
- the distributed transactional processing middleware system can execute on an engineered system and hardware 100, such as Oracle Exalogic and Oracle Exadata; and can include a clustered database 123, such as Oracle REAL Application Clusters.
- the clustered database can support usage of multiple individual systems as one clustered, virtual database server; and can provide transparent synchronization of read and write accesses to databases shared by all nodes in a cluster, dynamic distribution of database workload, and transparent protection against systems failures.
- the system described above by combining a distributed transactional processing middleware system, a clustered database, an engineered system, and a plurality of open system products, can provide required reliability, availability, scalability and performance to rehosted mainframe applications.
- FIGs 2-3 illustrate an example of the transactional middleware system 121 as shown in Figure 1, in accordance with an embodiment.
- Tuxedo Transactions for UNIX, Enhanced for Distributed Operation
- Tuxedo represents a middleware product or system that can operate as an extension of an operation system (for example, UNIX) .
- Tuxedo is designed for the creation and administration of e-commerce online transaction processing (OLTP) systems.
- the Tuxedo system shown in Figures 2-3 can include an Application-to-Transaction Monitor Interface (ATMI) environment for use in communications, transactions, and management of data buffers.
- ATMI Application-to-Transaction Monitor Interface
- the ATMI environment can include an external interface layer 211, an ATMI layer 213, a system services layer 215, and a resource manager layer 217.
- the external interface layer can provide a plurality of interfaces between users and the ATMI environment.
- the ATMI layer can represent an interface between applications and the ATMI environment.
- the system services layer can provide services and/or capabilities for developing and administering applications.
- the Tuxedo system can use a message-based communications system to distribute applications across various operating system platforms and databases.
- the Tuxedo system can pass service request messages between ATMI clients and servers through operating system (OS) inter-process communications (IPC) message queues, for example, a request queue 311 and a reply queue 313.
- OS operating system
- IPC inter-process communications
- System messages and data can be passed between the OS-supported, memory-based queues of clients and servers in buffers.
- messages in the ATMI environment can be packaged in typed buffers, which can represent buffers that contain both message data and data identifying the types of message data being sent.
- FIG. 4 illustrates a system for providing a Job Control Language (JCL) execution engine in an open platform, in accordance with embodiment.
- JCL Job Control Language
- the batch application runtime 119 can provide a combination of utilities and services that allow a mainframe batch application to run unchanged, preserving existing business logic and data.
- a mainframe batch job can represent a unit of work that can comprise a plurality of job steps, and each job step can be specified by a set of job control statements in a JCL script.
- the JCL script can identify one or more programs to be executed, the inputs that are required, and location of the input/output.
- artifacts for a mainframe batch job can include a JCL script, and related programs (e.g., COBOL program) and data.
- the batch job can be submitted for execution using the JCL script via a client application.
- the JCL script of the mainframe batch job needs to be converted into one or more KSH scripts for execution in the rehosting platform.
- the mainframe application would be a different application, which makes the knowledge and skills of maintaining the original application useless, and makes it difficult to compare the converted application with the original application when the need arises to determine whether the converted application has executed successfully on the rehosting platform.
- the rehosting platform 101 can provide native support for JCL jobs.
- the native support can enable the rehosting platform to run the JCL jobs without converting them.
- the batch application runtime 119 can provide a plurality of software modules/components in multiple layers to enable native support for JCL jobs, for example, a life cycle control layer 421, an execution layer 424, and a utilities/applications layer 431.
- the life cycle control layer can be configured to manage the life cycle of a JCL job, and to manage high availability, scalability, management and monitoring of the JCL job.
- the execution layer can include a KSH execution engine 427 configured to parse a KSH job converted from a mainframe JCL job, and a JCL execution engine 429 configured to execute mainframe JCL jobs without converting them.
- the life cycle control layer can include a logical job queue 411 that can receive submissions of KSH jobs 437 and JCL jobs 439 from a client application 409, and a plurality of job initiators (e.g., job initiator 413) distributed on a plurality of servers.
- the client application can be a command interface used to submit jobs, hold job, release jobs, cancel jobs, purge a jobs, display job information, or subscribe to events for job status changes.
- An example client application can be the Oracle Tuxedo client.
- the logical job queue can queue the KSH jobs and the JCL jobs, with each job associated with metadata specifying a job priority.
- the plurality of job initiators can be configured to dequeue jobs from the logical job queue, and dispatch each of the dequeued jobs, either to the job execution engine or the KSH execution engine, based on the nature of the job, for example, whether the job is a KSH job or a JCL job.
- the utilities/applications layer 431 can include one or more z/OS built-in utilities 433 and one or more applications 435 configured to be invoked by the JCL execution engine.
- the applications can be the programs identified for execution in a JCL script.
- An example application in this layer can be a COBOL program or a COBOL executable.
- the JCL execution engine when it receives a JCL job, it can generate a statement sequence from the JCL job, and order statements in the sequence into a double-link sequence.
- the JCL execution engine can execute JCLLIB &INCLUDE statements in the JCL job to include code referenced by the JCL job, and parse the statement sequence to composite a logical job tree or a job element hierarchy.
- the job element hierarchy can include a plurality of steps (e.g., IF/THEN/ELSE/ENDIF, CNTL/ENDCNTL) , each step containing one or more DDs, each DD containing one or more concatenated DDs.
- the JCL job can be executed.
- the migration success of a mainframe application can be determined by the execution success of a job that utilizes the programs, data and scripts associated with the application.
- the job’s return code can be checked to determine if an expected value has been received.
- a zero means that the job has executed successfully, and a non-zero value means that a warning/error occurs.
- This type of verification can be checked from the exit code of a job execution process, or a job execution log file.
- a job execution may require external resources, for example, data residing on either disk files, or database tables.
- external resources for example, data residing on either disk files, or database tables.
- return code changes on external resources are also needed to be verified to determine the job has been executed successfully.
- a job needs to be launched on both the mainframe platform and the open platform, and database results from both platforms need to be compared to determine whether the job has performed the same data update operations on both platforms.
- the system and method described herein can be used to determine the migration success of an application from a mainframe platform to an open platform.
- a first database associated with the mainframe platform and a second database associated with the open platform can include the same data baseline.
- a set of triggers can be created on the first database and the second database, to capture database modification events generated by the execution of a job associated with the application on each platform, and to store the database modification events in a table in each database.
- the database modification events from the mainframe platform and the open platform can be downloaded and compared to determine the success of the application migration.
- the first database can be a DB2 database
- the second database can be an Oracle database.
- the database triggers can be used to capture all data update operations resulted from the execution of the job on both platforms.
- a testing application can be configured to access both platforms to install database triggers on the DB2 and Oracle databases, and launch JCL jobs on the mainframe platform and the open platform.
- a database trigger can be installed on each of a plurality of tables that the JCL job is associated with.
- database triggers can be installed in a similar fashion.
- the database triggers on the database for each platform can be triggered to generate modification events.
- the testing application can be used to download the database modification events from each database, and invoke a comparison logic to compare the two sets of database modification events.
- Figure 5 illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- mainframe application A 511 (abatch application) can be associated with a JCL script, one or more programs, and data; and can be migrated to the rehosting platform/open platform, as shown by application A’ 513.
- mainframe application A can be associated with a plurality of tables (for example, table A 529 and Table B 530) for storing data associated with the mainframe application in a mainframe database (e.g., a DB2 database) 537.
- a mainframe database e.g., a DB2 database
- application A’ can be associated with a plurality of tables (for example, table A’ 522 and Table B’ 524) for storing data associated with the mainframe application in a rehosting database (e.g., an Oracle database) 521.
- a rehosting database e.g., an Oracle database
- a rehosting workbench can be used to recreate the plurality of tables associated with mainframe application A in the rehosting database, and clone the data in the plurality of tables to the rehosting platform, so that that the two databases can have the same data baseline.
- a test manager application 520 for example, Oracle test manager, can be used by a user 501 to create scripts for use in creating database triggers 523 for the plurality of tables in the rehosting database, and for creating database triggers 535 for the plurality of tables in the mainframe database.
- a modification events table e.g., modification events table C 531 and modification events table C’ 525) can be created respectively the mainframe database and the rehosting database, for storing database modification events captured by the database triggers in each platform.
- one or more batch jobs can be launched or submitted from the test manager application.
- the rehosting platform can provide a JCL execution engine for executing JCL jobs without the JCL jobs being converted them into KSH jobs.
- the JCL script of the batch application can be used to submit or launch batch jobs from the test manager application to both the rehosting platform and the mainframe platform.
- the JCL script can reside in the test manager application, and can be submitted via FTP to each platform, to launch batch jobs on each platform.
- the database triggers in each database can can listen on SQL statements issued by the batch application in each platform, capture database modification events generated by the SQL statements, and save the database modification events into a corresponding modification events table 525 or 531.
- the test manager application can include a modification events comparison logic component 545.
- database modification events data can be downloaded 547, 549 from the rehosting database and the mainframe database, and provided to the modification events comparison logic component.
- the modification events comparison logic component can compare the modification events data from the two platforms, to determine whether the data from each platform contains the same set of database modification events. If the data from each platform contains the same database modification events, the migration of the batch application is successful; otherwise, the migration is unsuccessful.
- Figure 6 further illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- the test manager application can run on the rehosting platform or another open system, and can be associated with a rehosting database client 619 and a mainframe database client 613.
- the rehosting database can be an Oracle database and the mainframe database can be a DB2 database.
- the rehosting database client can an Oracle client configured to connect to the Oracle database
- the mainframe client can be a DB2 client configured to connect to the DB2 database.
- a trigger script for the mainframe database 615 and a trigger script for the rehosting database 617 can be generated, and executed via the database clients for the mainframe database and the rehosting database, to create a plurality of triggers 535 and a plurality of triggers 523 in each database.
- Figure 7 further illustrates a system for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- modification events data from each database can be downloaded 711, 713 to the client application, and can be provided to the modification events comparison logic component.
- the database modification events data from each database can be contained in a plain text file.
- Each plain text file can include a plurality of database events, for example, INSERT, UPDATE and DELETE, from each database.
- the modification events comparison logic component can include code to parse each plain text file, and format the modification events from each database, so that a meaningful comparison can be performed between the two plain text files to determine whether the same set of modification events have occurred on each platform.
- the test manager application can determine whether the mainframe application has executed successfully on the open/rehosting platform, and thus the migration success of the mainframe application.
- Figure 8 illustrates a flowchart for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- an application is migrated from a mainframe platform to a rehosting platform/open platform, and one or more tables associated with the application are replicated from a mainframe database of the mainframe platform, to a rehosting database of the rehosting platform.
- resources required by the application can be downloaded to a workbench from the mainframe platform.
- the resources can include JCL job scripts, SYSIN, PROC scripts, COBOL programs, COPYBOOK script, and DB2 DDL scripts.
- the downloaded resources can be merged and categorized, and can be placed into a workbench project.
- SQL scripts can be used to create corresponding tables on the rehosting (e.g., Oracle) database; and reload scripts can be used to reload the mainframe database (e.g., DB2 database) content into the rehosting database, so that the rehosting database can contain a full copy of the mainframe database data.
- rehosting e.g., Oracle
- mainframe database e.g., DB2 database
- a modification events table and associated sequence are created in the mainframe database and the rehosting database using a client application.
- database trigger scripts are generated for the mainframe database and the rehosting database.
- a first set of trigger scripts are generated for creating database triggers for the one or more tables in the mainframe database, and a second set of triggers are generated for creating database triggers for the one or more tables in the rehosting database.
- the trigger scripts are executed to create database triggers in the mainframe database and the rehosting database.
- the batch job is submitted to the mainframe platform and the rehosting platform for execution, wherein the execution of the batch job causes the database triggers in each platform to store database modification events generated by the batch job into the modification events table in each platform.
- the return code of the batch job from the rehosting/open platform is checked to determine whether the return code indicates an error during the execution of the batch job in the rehosting platform. If the job execution returns an error code, the migration would be determined to be unsuccessful as shown at step 833.
- the database modification events data is downloaded from each platform as shown at step 823.
- step 827 the database modification events data from the rehosting platform and the database events data from the mainframe platform are compared.
- the client application is used to determine whether the batch job execution generates the same set of database operations. If the same set of database operations are generated on each platform, the migration of the batch job is determined to be successful, at shown at step 831; otherwise, the job migration is determined to be a failure.
- the BLOG data when storing a data update to a BLOG data for a BLOB column in a modification events table, the BLOG data can be converted to readable hex character using hex () function provided by DB2.
- the database triggers can capture the first 16352 bytes of the BLOB data update.
- the modification events tables on both platform can be cleaned for the next job execution, including dropping the triggers created previously, and cleaning the modification events data and associated sequence.
- Figure 9 illustrates a method for determining the success of an application migration from a mainframe platform to an open platform, in accordance with embodiment.
- a rehosting platform is provided on a computer including one or more microprocessors, wherein the rehosting platform includes an application container for executing a batch job migrated from a mainframe platform.
- one or more database triggers and a modification events table are created in a first database associated with the rehosting platform, and a second database associated with the mainframe platform.
- the batch job is submitted from a client application to the rehosting platform and the mainframe platform for execution, where the batch job execution on each platform generates a plurality of database modification events.
- the database triggers on each platform are used to capture the database modification events, and store them to the modification events table on that platform.
- the database modification events from each database are downloaded to the client application, which is configured to determine a success of the batch job migration by comparing the database modification events from the first database and the database modification events from the second database.
- the present invention may be conveniently implemented using one or more conventional general purpose or specialized digital computer, computing device, machine, or microprocessor, including one or more processors, memory and/or computer readable storage media programmed according to the teachings of the present disclosure.
- Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art.
- the present invention includes a computer program product which is a non-transitory storage medium or computer readable medium (media) having instructions stored thereon/in which can be used to program a computer to perform any of the processes of the present invention.
- the storage medium can include, but is not limited to, any type of disk including floppy disks, optical discs, DVD, CD-ROMs, microdrive, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards, nanosystems (including molecular memory ICs) , or any type of media or device suitable for storing instructions and/or data.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (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
La présente invention concerne, selon un mode de réalisation, un système et un procédé destinés à déterminer la réussite de la migration d'une application d'une plate-forme de macroordinateur à une plate-forme ouverte. Une première base de données associée à la plate-forme de macroordinateur et une seconde base de données associée à la plate-forme ouverte peuvent comprendre la même référence de données. Un ensemble de déclencheurs peut être créé sur la première base de données et la seconde base de données, pour capturer des événements de modification de base de données générés par l'exécution d'un travail associé à l'application sur chaque plate-forme, et pour stocker les événements de modification de base de données dans une table de chaque base de données. Les événements de modification de base de données issus de la plate-forme de macroordinateur et de la plate-forme ouverte peuvent être téléchargés et comparés pour déterminer la réussite de la migration d'application.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/078914 WO2018176356A1 (fr) | 2017-03-31 | 2017-03-31 | Système et procédé de détermination de la réussite d'une migration d'application entre plates-formes |
CN201780089089.5A CN110494849B (zh) | 2017-03-31 | 2017-03-31 | 用于确定跨平台应用迁移的成功的系统和方法 |
US15/660,484 US10534640B2 (en) | 2017-03-24 | 2017-07-26 | System and method for providing a native job control language execution engine in a rehosting platform |
US15/660,492 US10592277B2 (en) | 2017-03-24 | 2017-07-26 | System and method for determining the success of a cross-platform application migration |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/078914 WO2018176356A1 (fr) | 2017-03-31 | 2017-03-31 | Système et procédé de détermination de la réussite d'une migration d'application entre plates-formes |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/660,492 Continuation-In-Part US10592277B2 (en) | 2017-03-24 | 2017-07-26 | System and method for determining the success of a cross-platform application migration |
US15/660,484 Continuation-In-Part US10534640B2 (en) | 2017-03-24 | 2017-07-26 | System and method for providing a native job control language execution engine in a rehosting platform |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018176356A1 true WO2018176356A1 (fr) | 2018-10-04 |
Family
ID=63673907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/078914 WO2018176356A1 (fr) | 2017-03-24 | 2017-03-31 | Système et procédé de détermination de la réussite d'une migration d'application entre plates-formes |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110494849B (fr) |
WO (1) | WO2018176356A1 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131128A (zh) * | 2020-09-29 | 2020-12-25 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
CN112261095A (zh) * | 2020-10-12 | 2021-01-22 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708753A (zh) * | 2020-05-18 | 2020-09-25 | 北京金山云网络技术有限公司 | 数据库迁移的评估方法、装置、设备及计算机存储介质 |
CN112181435B (zh) * | 2020-09-24 | 2024-02-23 | 中国建设银行股份有限公司 | 一种跨平台的作业转换方法、装置、电子设备和存储介质 |
CN114625415B (zh) * | 2022-03-09 | 2024-09-27 | 南京联迪信息系统股份有限公司 | 一种大型机现代化软件移植方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101218565A (zh) * | 2005-07-06 | 2008-07-09 | 瑞士银行股份有限公司 | 用于将主机环境迁移至新系统平台的技术 |
CN101727383A (zh) * | 2008-10-16 | 2010-06-09 | 上海市医疗保险信息中心 | 数据库的仿真测试方法和系统 |
CN104063320A (zh) * | 2014-06-27 | 2014-09-24 | 上海斐讯数据通信技术有限公司 | 一种软件测试平台的移植方法及系统 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003214975A1 (en) * | 2002-02-01 | 2003-09-02 | John Fairweather | System and method for navigating data |
US20060195436A1 (en) * | 2005-02-28 | 2006-08-31 | Fujitsu Network Communications, Inc. | Phased migration of database software application |
US7958188B2 (en) * | 2007-05-04 | 2011-06-07 | International Business Machines Corporation | Transaction-initiated batch processing |
US8751627B2 (en) * | 2009-05-05 | 2014-06-10 | Accenture Global Services Limited | Method and system for application migration in a cloud |
US8458651B2 (en) * | 2010-06-18 | 2013-06-04 | International Business Machines Corporation | Seamless migration of tuxedo® applications to a CICS® hosting environment |
US8356010B2 (en) * | 2010-08-11 | 2013-01-15 | Sap Ag | Online data migration |
US8812806B2 (en) * | 2010-10-29 | 2014-08-19 | Netapp, Inc. | Method and system for non-disruptive migration |
CN103109271B (zh) * | 2012-08-30 | 2016-01-20 | 华为技术有限公司 | 一种平台间迁移应用的实现方法及系统 |
US9507837B2 (en) * | 2012-10-01 | 2016-11-29 | Oracle International Corporation | Reference data segmentation from single to multiple tables |
CN103729204B (zh) * | 2012-10-16 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 一种网络平台中应用更新的数据在线迁移方法和装置 |
US9069805B2 (en) * | 2012-11-16 | 2015-06-30 | Sap Se | Migration of business object data in parallel with productive business application usage |
US9996562B2 (en) * | 2013-07-09 | 2018-06-12 | Oracle International Corporation | Automated database migration architecture |
US10135749B2 (en) * | 2013-09-23 | 2018-11-20 | Sears Brands, L.L.C. | Mainframe migration tools |
US9569224B2 (en) * | 2014-05-06 | 2017-02-14 | Oracle International Corporation | System and method for adaptively integrating a database state notification service with a distributed transactional middleware machine |
US20160179573A1 (en) * | 2014-12-22 | 2016-06-23 | Bull Hn Information Systems Inc. | Method for providing mainframe style batch job processing on a modern computer system |
CN104899332A (zh) * | 2015-06-24 | 2015-09-09 | 浪潮(北京)电子信息产业有限公司 | 一种Sybase数据库跨平台迁移方法和系统 |
CN104899333A (zh) * | 2015-06-24 | 2015-09-09 | 浪潮(北京)电子信息产业有限公司 | 一种Oracle数据库跨平台迁移方法和系统 |
US10079730B2 (en) * | 2015-09-30 | 2018-09-18 | Amazon Technologies, Inc. | Network based resource configuration discovery service |
-
2017
- 2017-03-31 CN CN201780089089.5A patent/CN110494849B/zh active Active
- 2017-03-31 WO PCT/CN2017/078914 patent/WO2018176356A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101218565A (zh) * | 2005-07-06 | 2008-07-09 | 瑞士银行股份有限公司 | 用于将主机环境迁移至新系统平台的技术 |
CN101727383A (zh) * | 2008-10-16 | 2010-06-09 | 上海市医疗保险信息中心 | 数据库的仿真测试方法和系统 |
CN104063320A (zh) * | 2014-06-27 | 2014-09-24 | 上海斐讯数据通信技术有限公司 | 一种软件测试平台的移植方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131128A (zh) * | 2020-09-29 | 2020-12-25 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
CN112131128B (zh) * | 2020-09-29 | 2023-08-22 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
CN112261095A (zh) * | 2020-10-12 | 2021-01-22 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
CN112261095B (zh) * | 2020-10-12 | 2023-11-24 | 国电南瑞科技股份有限公司 | 基于两级代理的负载分流实现系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110494849A (zh) | 2019-11-22 |
CN110494849B (zh) | 2023-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10970277B2 (en) | System and method for dynamic conversion of database accessing scripts during runtime in a mainframe rehosting platform | |
US11829742B2 (en) | Container-based server environments | |
US10691712B2 (en) | System and method for merging a mainframe data file to a database table for use by a mainframe rehosting platform | |
US10768923B2 (en) | Release orchestration for performing pre release, version specific testing to validate application versions | |
US7716377B2 (en) | Clustering server providing virtual machine data sharing | |
US10379914B2 (en) | System and method for achieving specific behaviors by intercepting file access calls in a mainframe rehosting platform | |
CN110494849B (zh) | 用于确定跨平台应用迁移的成功的系统和方法 | |
US10802954B2 (en) | Automated-application-release-management subsystem that provides efficient code-change check-in | |
US20090300093A1 (en) | Server computer | |
US10678775B2 (en) | Determining integrity of database workload transactions | |
US20180081652A1 (en) | Accelerating software builds | |
US10592277B2 (en) | System and method for determining the success of a cross-platform application migration | |
US20190317840A1 (en) | Integrating transaction processing system interfaces with event-driven polyglot runtime modules | |
US11176115B2 (en) | Dependency locking | |
US20170206363A1 (en) | System and method for protecting plain text scripting language programs in a mainframe rehosting platform | |
US10521272B1 (en) | Testing in grid computing systems | |
CN110737510A (zh) | 块设备管理系统 | |
Greenberg | Building Applications on Mesos: Leveraging Resilient, Scalable, and Distributed Systems | |
Uyar et al. | Twister2 Cross‐platform resource scheduler for big data | |
US11681522B2 (en) | Self-healing build pipelines for an application build process across distributed computer platforms | |
Li et al. | Prajna: Cloud Service and Interactive Big Data Analytics | |
US20250077300A1 (en) | Performing a recovery drill for an application stack using a recovery protection group | |
US20250077365A1 (en) | Recovering an application stack from a primary region to a standby region using a recovery protection group | |
Cimmino | Fault-tolerance classification in virtualized redundant environment using Docker containers technology | |
Demirbas et al. | Does the cloud need stabilizing? |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17903899 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17903899 Country of ref document: EP Kind code of ref document: A1 |