Introduction to Data migrations

Nowadays, it's easier than ever before to describe everything with data. There's no such thing which couldn't be turned into a set of numbers and letters. That's how computers work and that's what almost everything depends on, currently. When you use any machine, you may be sure that it's somehow connected with data. However, the problems begin when there's a need to make data from different sources work together. What's even less optimistic, problems tend also to occur even if the sources don't differ significantly - sometimes a minor change between old and newer version of application to make data used by them incompatible.

For instance, users of old versions of Microsoft Office suite used to three-letter file extensions - .doc, .xls, .ppt and so on. Since Office 2007 has been released, default extensions changed. There was letter x added to each of them, and even though it was no problem to save new files in the old format, hardly anybody remembered to. Opening old documents in new Office applications was possible, but opening new files in old Offices was not. It was a problem of data incompatibility. What has been needed to read new files on old computers was opening them in new Office (or any external, dedicated program) and saving as old Office files. However, changing the format of thousands of files would be also easy, but way more time-consuming.

It also would be necessary - and, moreover, a bit more problematical - to run data migration if there were new systems installed on computers within the organization. For instance, old ones running on Windows with Microsoft Office and the new ones on freely-distributed Linux supplied with OpenOffice suite.

Changing format of Office files or migrating from Windows to Linux is one of the simplies example illustrating the concept. In the real-world business in the data migration projects there are many systems involved, many different database engines, many teams and people (both business and technical), many decisions are to be made, and usually many extra hours are involved...
Data migration is a business process but also a set of technical applications and people's knowledge, usually supported by ETL Tools (extract-transform-load).