Skip to main content

Data Conversion vs. Data Migration: What’s The Difference?

In the past I have worked as Migration lead and now I am working as conversion lead for one of the ERP implementation project. As having worked on both(migration/conversion) this is an effort to put forward the difference between migration and conversion.

The terms Data Conversion and data migration are still sometimes used interchangeably on the internet. However, they do mean different things. Data conversion is thetransformation of data from one format to another. It implies extracting data from the source, transforming it and loading the data to the target system based on a set of requirements.
Data Migration is the process of transferring data between silos, formats, or systems. Therefore, data conversion is only the first step in this complicated process. Except for data conversion, data migration includes data profiling, data cleansing, data validation, and the ongoing data quality assurance process in the target system.
Both terms are used as synonymous by many internet resources. I think the reason for that might be that there are very few situations when a company has to convert the data without migrating it.
What is the need of Migration/Conversion?
Migration/Conversion are required when we are upgrading to one version to another (e.g. Oracle Apps R11 to Oracle Apps R12) or moving data from some legacy system to Oracle Apps. There will be bulk  of data (sometimes millions or even more than that) that needs to be moved from one system to another  and  before moving the data it should be validated and only valid records should be entered into Oracle Apps.
If both the systems (Target and source) are not having same structure for data (Tables are not same/Table Structure is not same/The data is being stored in database is not same), it needs to be translated (e.g. upgrading from Oracle 11i to R12 where table structures are not same) then we say it as conversion (any kind of translation of data on Source data to make it suitable for Target system) otherwise migration. Reimplementation of same Oracle apps version is good example of Data Migration.

What is Conversion?
Conversion of data means translating the data to suite target system (data should be formatted according to target system) and then move the translated data using Interface Programs/APIs.
• Identify the data to be imported to new system (Business requirement).
• Extract into flat file/Staging table
• Translate/Convert/Format the data
• Load the data into Interface Table (using SQL* Loader/DB Link/Others) after validation (If loading the data using Interface) and then launch standard Interface concurrent program to load the data to Oracle Apps Base Tables
• If using API, fetch the data, validate it and then call API to import the data

Conversion can be complex because you need to have a complete understanding of the source you’re converting 
from, and then format you’re converting to. If you don’t, you run the risk of compromising your data and ruining its integrity during the conversion process.
Example: Conversion of data like suppliers, customers from Oracle ERP to Workday ERP.
What is Migration?
Migration of data means moving the data from one system to another using Interface Programs/APIs where both the systems have same structure of data.
Process of Migrating of data:
• Identify the data to be imported to new system (Business requirement).
• Extract the data into flat file/Staging table
• Load the data into Interface Table (using SQL* Loader/DB Link/Others) after validation (If loading the data using Interface)
The migration process is very detailed and can take months to complete. Here is a general process a typical data migration would follow.
  1. Database Review: Review of the database and a review of the current implementation is conducted.
  2. Data Mapping: Thoroughly review the tables and data in the database to find unique tables and columns, as well as potential data discrepancies or inconsistencies. It’s important to track which tables the data currently resides in and where the data will be migrated to using data mapping.
  3. Migration: Once the mapping is complete, the migrated data can be transferred from the original database to the new database that can be tested and put into production. 
Where data conversion deals with individual data fields, data migration is the process of moving and merging entire databases or programs. 
For example clients migrates data from multiple databases into a single database, or migrates data from one CRM/ERP system to another.
Data migration may appear simple at first glance, but just like data conversion, it’s actually pretty complex! It usually involves what’s called data mapping, a strategic process that maps data from one database to another by looking at where the data lives currently, and where it will live once it’s moved.
Before migrating data, you need to be sure that the data fields in your old database exist in the new database. You also have to understand how both programs handle different types of file formats, and whether or not any data fields will be merged during the process.
How conversion/Migration and interface differ?
There are good numbers of parameter on which they can be categorized. Take few of them:

Frequency 
• Conversions/Migration are a one-time event
• interfaces are ongoing
Occurrence in the project timeline
• conversions/Migration executed before production
• interfaces executed during production
Manner of execution• Conversions/Migration are batch
• Interfaces may be batch or real time
Complexity
• Conversion/Migration does have very complex, it’s totally depends upon the data mapping activity.
• Coordinating with other systems make interfaces more complex
 
Maintenance
• Maintenance of interface is bit cost intensive task.

Comments

Popular posts from this blog

Create Accounting for a Payment generates errors 95333 and 95359

Create Accounting for a Payment generates errors 95333 and 95359 Error: 95333: A conversion rate does not exist to convert USD to AUD for the conversion type Corporate and conversion date 20-MAR-09 for line -25. Please use the Daily Rates form in General Ledger to enter a conversion rate for these currencies, conversion date and conversion type. 95359: There is no accounted amount for the subledger journal entry line. Please inform your system administrator or support representative that: The source assigned to the accounting attribute Accounted Amount has no value for extract line number 88547. Please make sure the source assigned to the accounting attribute Accounted Amount has a valid value, or assign a different source to this accounting attribute. Solution: 1. Specify a conversion rate for the currencies and conversion date mentioned in the error message 95333 Navigation under the General Ledger responsibility: Setup > Currencies > Currency Rates Manager > Daily Rates ...

Public API’s for FA Transactions

Public API’s for FA Transactions So far Oracle FA is have all the good things except the lack on reporting.Oracle FA is now offer lot of public API's that can be used to interfacing with third party or Oracle application other modules. Here are some of transaction's API's:   Additions API if you have requirement to add assets directly via PL/SQL then use  FA_ADDITION_PUB.DO_ADDITION. If you have selected the Allow CIP Assets check box on the Book Controls window of a tax book when adding CIP assets using the Additions API, the this API automatically adds those CIP assets to that tax book at the same time that they are added to the corporate book. Adjustments API you can make cost adjustments to your assetsdirectly via PL/SQL using  FA_ADJUSTMENT_PUB.DO_ADJUSTMENT  for any  process adjustment. Detail can be found in appendix H) You can use this API if you have a custom interface that makes it difficult to use with the existing Oracle Assets interfaces for adjusti...

AP Table Relation Oracle Apps

AP Table Relation Oracle Apps ORACLE PAYABLE TABLE RELATION Source Table Dependent Table Condition AP_INVOICE_LINES_ALL AIL ZX_LINES_SUMMARY ZLS AIL.invoice_id = ZLS.trx_id and  ZLS.application_id  = 200 and  ZLS.entity_code  = 'AP_INVOICES' and  ZLS.event_class_code  in ('STANDARD INVOICES', 'PREPAYMENT INVOICES', 'EXPENSE REPORTS') and  AIL.summary_tax_line_id = ZLS.summary_tax_line_id AP_INVOICE_LINES_ALL AIL ZX_LINES ZL AIL.invoice_id = ZL.trx_id and  ZL.application_id  = 200 and  ZL.entity_code  = 'AP_INVOICES' and  ZL.event_class_code  in ('STANDARD INVOICES', 'PREPAYMENT INVOICES', 'EXPENSE REPORTS') and  AIL.line_number = ZL.trx_line_number AP_INVOICE_DISTRIBUTIONS_ALL AID ZX_REC_NREC_DIST ZD AID.invoice_id = ZD.trx_id and  ZD.application_id  = 200 and  ZD.entity_code  = 'AP_INVOICES' and  ZD.event_class_code  in ('STANDARD INVOICES', 'PREPAYMENT INVOICES', 'EXPENSE REPORTS') and...