Computing

=Computing Migration= Researched by: John Zhang

//Page Navigation://
 * 1) PC Migration
 * 2) Data Migration
 * 3) Process Migration
 * 4) System Migration


 * __ PC Migration __
 * ** en.wikipedia.org/wiki/PC_migration **
 * Switch between 2 computer systems through the transfer of the user environment (e.g. personal files/settings)
 * Concept of “Total Cost of Ownership” – depends on expense to purchase new computer (exist also for business software/hardware upgrades)
 * Required during change to new computer/hardware or software (OS)
 * Hardware + software connection pose problem to consumers/enterprises
 * ** www.answers.com/topic/pc-migration **
 * Moving folders + registry entries from old computer to new
 * There are many programs to help smoothen process but otherwise it can be done manually
 * Moving data is easier than applications (can be placed in few folders)
 * **www.capitalismmagazine.com/science/technology/2313-Migration-Tools-Bad-Idea.html**
 * PC Fear Factor: book describing steps to PC Migration
 * Due to large amount of applications, more PC Migration Programs
 * E.g. Eisenworld’s PC Relocator Ultra (reviewed high)
 * His reasons for believing these tools are bad:
 * Cost – expensive (e.g. $70) and only allows to be used once
 * Practicality – new OS may not be compatible or new versions of applications already pre-installed
 * Difficulty – easier to reinstall programs (downloads)
 * Allows to check for compatibility issues (narrow problem)
 * Data migration does not require PC migration tools


 * 1)** http://www.filebuzz.com/software_screenshot/full/37965-stepup.gif


 * 2)** http://www.ghacks.net/wp-content/uploads/2008/06/pc_mover-500x387.jpg
 * 3)** http://i.technet.microsoft.com/Cc507855.aa905115_figure2(en-us,TechNet.10).gif


 * 4)** http://www.laplink.com/system/galleries/pics/laplink/pcmover-to-mac-web.jpg


 * 5**) http://0.tqn.com/d/macs/1/0/8/B/-/-/pcmigration500x352.jpg




 * __ Data Migration __
 * ** en.wikipedia.org/wiki/Data_migration **
 * Transferring data between storage types, formats or computer systems
 * Uses programs for automation to free up human resources (tedious)
 * Required when individual or organization want to upgrade to new systems or when systems merge (merger/takeover of business)
 * If a certain file format is required, there is a data validation step
 * Tests data being transferred to ensure it meets criteria of target environment and input file specification
 * Can be validated “on-the-fly” during loading but when data is highly integrated with one another (system function), it is difficult to migrate
 * After migration, results subject to data verification if it is properly translated, complete and supports process in new system
 * It may test on both systems to identify data loss/corruption
 * Automated/manual cleaning is used to improve data quality, eliminate redundant or obsolete information and match requirements of new system
 * Migration phases: design, extraction, cleansing, load, verification
 * Moderate to high complexity system repeat these phases several times before new system is used
 * Data migration stored in various medias (files/databases) and is consumed by software applications to support business operations
 * Approach to transferring + conversion of data driven by business requirements
 * Migration categories:
 * Storage migration: using physical devices to move data using virtualization techniques (no change in format/content)
 * Database migration: transfer from one database vendor to another or to upgrade software being used
 * May not need physical data migration unless upgrade is major
 * May affect applications depending on if data language or protocol has changed
 * Change from Oracle to MySQL, DB2 or SQL server only require testing cycle to determine impact
 * Application migration: change of application vendor (e.g. CRM or ERP) may require huge transformations due to every application/suite operating on its own data model
 * Metadata is used to sell to widest possible market
 * API protect integrity of data (condition of software warranty)
 * Business process migration: business processes use combination of human/application system actions supervised by business process management tools to operate
 * When changed, require migration of data from store, database or application to reflect changes to organization and information about consumers, products and operations
 * E.g. mergers, business optimization and reorganization
 * Project versus Process: data migration is moving data from one environment to another while removing it from source
 * During migration (months/years) data can flow in multiple directions and multiple migrations can happen simultaneously
 * ETL (extract, transform and load)
 * Migration as digital preservation: transforming outdated medium to current medium (e.g. newspapers)
 * Disadvantages of migration: certain technologies can be abandoned, time consuming, and costly
 * Emulation is alternative to migration
 * ** www.infotechnet.org/ntca/DataMigration.htm **
 * Common belief: data on 2 systems must have performed similar tasks but it is rarely the case
 * Key terms:
 * Legacy data: recorded data in existing storage program (database records, spreadsheets, text files, scanned images, paper documents)
 * Data migration: importing legacy data to new system (involves entering data manually, moving disks, database insert queries, etc.)
 * Data cleansing: preparing data for migration due to different system (manipulates and cleans legacy data to conform to new environment)
 * Key variables needed to be considered during data migration:
 * Data volume: quantity of data records (check for technical barriers and if it affects performance)
 * Data value: examine usefulness of data and if it is useful in long-term (filtering information for migration)
 * Phases: examine + define source structure + target structure, perform field mapping (data cleansing), define migration process (manual or automated)
 * Analysis: understand how it works, who uses it and what they use it for (starting point: documentation)
 * Also examine how data in systems are stored (flat files, files, or tables – documentation)
 * Example - Migrating PM Data from TIMS Legacy System: information linked by client/patient to PM and Surveillance data
 * TIMS is a client-centered application
 * ** www.computerworld.com/s/article/93284/How_to_plan_for_data_migration **
 * Common difficulties in data migration:
 * There is little to no clear definition of requirements for all data
 * Should focus on security, availability and recoverability
 * Temporary/permanent documents mixed (hard to determine which is valuable)
 * Distributed islands of data
 * Implement new application and request infrastructure to remain close (organization politics add to problem)
 * Funding constraints
 * Tight budgets limit technological options
 * Lack of expertise in heterogeneous storage environments
 * Storage technologies incompatibility with each other
 * Data migration is usually used on smaller scale and have limited tactical objectives (minimize project size/potential returns)
 * Advice:
 * Detail security + availability requirements: needs of IT environments identified by security + infrastructure teams to determine which data may be segregated and protected (data access, retention requirements and security measures)
 * Define migration requirements: new service level agreements, expectations for new storage infrastructure and objectives
 * Survey IT environment: understand how infrastructure works including networks and file servers
 * Design appropriate consolidation or replacement platform: includes technology, management and backup tools and procedures
 * Crucial to minimize down-time (communication is key)


 * 1)** http://quipoz.com/images/gr_data_migration.png


 * 2)** http://www.lecorpio.com/Portals/51098/images/ip_management_software_data_migration.jpg


 * 3)** http://www.amakozi.com/images/TridionDataMigration.jpg


 * 4)** http://img.tfd.com/cde/HSM.GIF


 * 5)** http://cache.gizmodo.com/assets/resources/2007/12/ivy_external_hd.jpg


 * __Process Migration__
 * **en.wikipedia.org/wiki/Process_migration**
 * Definition: computer processes in clusters are transferred between machines
 * Implemented in OpenMosix (there are others)
 * Also known as layout migration: create new technology node through using the design flow to change and shrink existing IC layout
 * Implementation process can be manual (redrawing layout feature by feature) or by automatic EDA/CAD tools
 * **www.klammeraffe.org/~fritsch/uni-sb/fsinfo/Papers/migrate/node4.html**
 * Refers to “mobility of executing (or suspended_ processes in a distributed computing environment
 * Utilizes network to migrate to another machine for further operation there
 * Sometimes used for changing processors within one machine
 * Problems in process migration:
 * I/O redirection: if there is an input/output to files/devices bound to specific machine, redirection is required after migration (redirection of data stream over network but may cause problem in security, performance and reliability
 * Inter-process communication: Messages sent to process with different ID on a different machine needs new ID codes (require records)
 * Shared memory: network must used to emulate shared memory access if a group of processes migrates away (slows down access + increase complexity of system)
 * Residual Dependency: host computer still needs to provide services to processes that migrated away
 * Process-based OS still need to maintain variety of tables and states for running processes (need to be altered during migration)
 * **www.circlemud.org/~jelson/writings/process-migration/node3.html**
 * Motivations for process migration: is the benefit of process migration worth the cost? (no-clear cut answer)
 * Different environments have different needs
 * Example: parallel supercomputers IBM SP/2
 * ‘They can scale evenly to virtually any number of processing elements’
 * Not shared with multiple users but a node is assigned to user
 * Can determine optimal distribution of processes to processors before loading (always evenly balanced – does not require process migration)
 * Example: environment with many processes running + belonging to different users (impossible to predict duration + resource consumption)
 * Typical usage pattern of central university computing facility
 * Solutions: buy large + expensive multi-processor SMP machine or numerous smaller, lower powered workstations
 * 1st choice: effective load-balancing across processors but expensive and depends solely on one machine
 * 2nd choice: scalable + resistant to failures but suffer from unbalanced load
 * Process migration can help even out user load and can increase number of nodes when load increases
 * Other options: allow machines to distribute load while idle but become individual when it is not (Static scheduling)
 * Problems: there are not enough processing power when they both require the memory


 * 1)** http://www.ibm.com/developerworks/websphere/library/techarticles/1008_xie/images/image013.jpg


 * 2)** http://omuscd.sourceforge.net/images/devcluster.jpg


 * 3)** http://www.ibm.com/developerworks/linux/library/l-colinux/figure1.gif


 * 4)** http://raulespinola.files.wordpress.com/2008/11/jeffspence_openmosix_logo.png


 * 5)** http://www.ibcbiz.net/images/NetworkComputers.jpg


 * __System Migration__
 * **en.wikipedia.org/wiki/System_migration**
 * Definition: the movement of a set of instructions or programs from one platform to another while minimizing reengineering
 * Downtime (old system is replaced with new)
 * E.g. mainframe computers to separate systems (cost-saving)
 * Simplified using automatic tools to convert data/code to be compiled or interpreted (e.g. LING 4GL)
 * **www.itworld.com/nls_solutions060928**
 * Example of system migration: Mailbank.com, the Boulder, Colo-based merged NetIdentity with Tucows
 * Through merger, there are missing contact data, missing folders, can’t customize name in FROM address
 * Downtime during migration (features)
 * Testing + quality assurance is essential to system migration
 * Require same amount of time as developing software/changes
 * It is not always possible to have parallel systems: production + development and testing
 * Require testing of all scenarios to ensure it works
 * **www.osedge.com/?q=node/5**
 * Average Linux System Admin only migrates services few times a year
 * Small details lead to large amount of time spent on fixing unusual results, lost data, productivity and missing results
 * Common migration tasks:
 * Updating OS, web server, service software
 * Transfer of hardware/services
 * Switching ISPs
 * Adding redundancy to systems through High Availability


 * 1)** http://www.fritzcartoons.com/wp-content/uploads/2009/08/system-migration-cartoon.jpg


 * 2)** http://www.cultofmac.com/wordpress/wp-content/uploads/2010/05/Manual-Migration.jpg


 * 3)** http://www.isrus.com/images/sites_migration_system.jpg


 * 4)** http://farm2.static.flickr.com/1115/944416281_15540a6998.jpg


 * 5)** http://www.osgindia.com/images/lsm.jpg