Migrating Data-Centric Applications

1y ago
55 Views
2 Downloads
1.98 MB
144 Pages
Last View : 24d ago
Last Download : 3m ago
Upload by : Evelyn Loftin
Transcription

Migrating Data-CentricApplications to Windows AzureKun Cheng, Selcin Turkarslan, Norberto Garcia, SteveHoward, Shaun Tinline-Jones, Sreedhar Pelluru, SilvanoCoriani, Jaime Alva BravoContributors: James Podgorski, Rama RamaniReviewers: Paolo Salvatori, Stuart Ozer, Drew McDaniel, Jason Chen,Ganesh Srinivasan, Lindsey Allen, Evgeny Krivosheev, Valery Mizonov,Avilay Parekh, Christian Martinez, Shawn Hernan, Mark Simms, AdrianBethune, Bill Gibson, Adam MahoodSummary: The guide, Migrating Data-Centric Applications to Windows Azure,provides experienced developers and information technology (IT) professionals withdetailed guidance on how to migrate their data-centric applications to WindowsAzure Cloud Services, while also providing an introduction on how to migrate thosesame applications to Windows Azure Virtual Machines. By using this guide, you willhave the planning process, migration considerations, and prescriptive how to’sneeded for a positive migration experience.Capturing the best practices from the real-world engagements of CAT and thetechnical expertise of the SQL Database Content team, Migrating Data-CentricApplications to Windows Azure can help you simplify the migration process, provideguidance on the most appropriate migration tools, and drive a successfulimplementation of your migration plan.Category: GuideApplies to: Windows AzureSource: MSDN Library (link to source content)E-book publication date: June 2012

Copyright 2012 by Microsoft CorporationAll rights reserved. No part of the contents of this book may be reproduced or transmitted in any form or by anymeans without the written permission of the publisher.Microsoft and the trademarks listed lectualProperty/Trademarks/EN-US.aspx are trademarks of theMicrosoft group of companies. All other marks are property of their respective owners.The example companies, organizations, products, domain names, email addresses, logos, people, places, and eventsdepicted herein are fictitious. No association with any real company, organization, product, domain name, emailaddress, logo, person, place, or event is intended or should be inferred.This book expresses the author’s views and opinions. The information contained in this book is provided withoutany express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its resellers, ordistributors will be held liable for any damages caused or alleged to be caused either directly or indirectly by thisbook.

ContentsAbout This Guide . 1Part 1: Planning and Implementing a MigrationOverview of the Migration Life Cycle. 4Analysis Phase . 4Application Migration Phase . 6Data Migration Phase. 6Testing and Optimization Phase . 7Operation and Management Phase . 7Planning a Migration . 8Plan for cost . 8Identify key business and technical requirements that Windows Azure can help resolve. 9Perform analysis and design. 10Plan the timeline. 13Make a plan for the interim . 13Make a plan for testing . 14Identify the resources needed. 14Plan the application management in Windows Azure . 15See Also . 15Implementing the Migration Plan. 16Setting up for validation tests . 16Synchronizing databases to minimize cut over time . 17Windows Azure SQL Data Sync. 18Replication, mirroring or log shipping . 19Custom Extract Transform and Load (ETL) . 19Export a Data-Tier Application (DAC) . 19Backup and restore . 19Cut over to Windows Azure. 20i

Part 2: Migration Considerations, Best Practices, and How ToMigrating with Windows Azure Virtual Machines . 22Overview of Windows Azure Virtual Machines . 23Windows Azure and Virtual Machines . 23Windows Azure Supplied Virtual Machine Images . 25List of important concepts . 26High Availability and Disaster Recovery when using Windows Azure Virtual Machines . 26Common Application Patterns when using Windows Azure Virtual Machines. 27Application Programming Interface Support for Windows Azure Virtual Machines . 27Migrating with SQL Server in Windows Azure Virtual Machines . 28When to use SQL Server in a Windows Azure Virtual Machine . 28Choosing between SQL Server in Windows Azure Virtual Machine vs. Windows AzureSQL Database . 29Migrating database schema and data to SQL Server in a Windows Azure VirtualMachine. 30How to prepare schema and data on–premises and upload them to an instance of SQLServer in VM . 30Option 1: Data-tier Applications .BACPAC or .DACPAC files . 31Option 2. Backup and Restore . 31Option 3. Detach and Attach . 32Option 4. Other SQL Server Techniques . 33How to move your database schema and data file to Windows Azure Virtual Machine . 33Migrating with Windows Azure Cloud Services. 36Development Considerations for Windows Azure Cloud Services . 38Creating a cloud service in Windows Azure . 38Application Development in Windows Azure. 40Logging, Testing, Diagnosing, and Debugging Windows Azure Applications . 41Cloud-based networking and connectivity options in Windows Azure . 43Application Deployment and Management in Windows Azure . 44See Also . 45Overview of Data Management Services in Windows Azure . 46Windows Azure Table Service . 46Windows Azure Blob Service . 46Windows Azure Drive . 47ii

Windows Azure SQL Database . 47Windows Azure SQL Database vs. Table Storage . 47Local Storage . 50See Also . 50Migrating SQL Server Databases to Windows Azure SQL Database . 51Migration Overview . 51Managing a Windows Azure SQL Database Migration Project . 54Introduction . 54Analysis . 55Business Requirements . 55Define the Database Subproject Goal . 56Assess Project Complexity . 56Dependencies on Features Not Supported by Windows Azure SQL Database . 56The Scope of Application Changes Driven by Database Changes . 57Plan and Design . 58Develop . 60Test . 61Stabilize. 62Deploy. 63Performance Considerations with Windows Azure SQL Database. 64Connection Management in Windows Azure SQL Database . 64Options for Handling Connection Management in Code . 65Network Latency in Windows Azure SQL Database . 69Minimize the Distance between Data and Applications . 70Minimize Network Round Trips . 71Follow General Best Practices for On-Premises Databases. 72High Availability and Disaster Recovery Considerations with Windows AzureSQL Database . 76How to help protect your database from failure of individual servers, devices ornetwork connectivity . 76How to help protect your database from unwanted deletions or modifications . 77How to help protect your database from widespread loss of data center facilities . 78Choosing Tools to Migrate a Database to Windows Azure SQL Database. 79Choose Migration Tools . 79Tools to Migrate a non-SQL Server Database . 79Tools to Migrate Between SQL Azure Services . 79Tools to Migrate a SQL Server Database . 80iii

Comparing SQL Server Migration Tools . 83How to: Use the SQL Azure Migration Wizard . 86Before You Begin . 86Migrate a Database by Using the SQL Azure Migration Wizard. 88Analyze a Database by Using the SQL Azure Migration Wizard. 88Analyze a Transact-SQL File by Using the SQL Azure Migration Wizard. 89Analyze a Trace File by Using the SQL Azure Migration Wizard . 89Resources . 89How to: Use SQL Server Data Tools to Migrate a Database to Windows Azure SQLDatabase . 90Before You Begin . 90Use SSDT With DAC Packages . 91Use SSDT With Direct Connections . 92See Also. 92How to: Use a DAC BACPAC to Migrate a Database to Windows Azure SQL Database . 93Before You Begin . 93Migrating a DAC BACPAC File. 94Resources . 95How to: Use a DAC Package to Migrate a Database to Windows Azure SQL Database . 96Before You Begin . 96Migrating a DAC Package . 97Resources . 98How to: Generate Scripts to Migrate a Database to Windows Azure SQL Database . 99Before You Begin . 99Migrate a Database by Using the Generate Scripts Wizard. 99Resources . 100How to: Use bcp to Migrate a Database to Windows Azure SQL Database . 101Before You Begin . 101Using bcp to Migrate Data . 102Resources . 103How to: Use Integration Services to Migrate a Database to Windows Azure SQLDatabase . 104Before You Begin . 104Migrate a Database by Using SQL Server Integration Services . 105Resources . 105How to: Use the Import and Export Wizard to Migrate a Database to Windows AzureSQL Database . 106iv

SQL Server Import and Export Wizard. 106Migrate Data by Using the Import and Export Wizard . 107Resources . 108How to: Use a SQL Server Migration Assistant with Windows Azure SQL Database . 109Before You Begin. 109Migrate a Database By Using a SQL Server Migration Assistant. 109Resources . 110Considerations for Migrating Partitioned Data to Windows Azure SQL Database . 111Transposing existing on-premises features to SQL Database . 112Replication . 112Table Partitioning . 112Partitioned Views . 113Distributed Partitioned Views. 113Filegroup Strategies . 113Cross-database Queries. 113Migrating Data to Other Data Management Services in Windows Azure . 114Migrating Data to Table Storage . 119Migration Considerations . 119Data Considerations . 120Table storage vs. Windows Azure SQL Database . 120Data Access Considerations . 121Benefits of Table storage . 121Uploading Existing Data to Azure Table storage . 122See Also . 122Migrating Data to Blob Storage . 123Block Blob vs. Page Blob . 123Migration Considerations . 124Data Considerations . 124Blob storage vs. Windows Azure SQL Database . 124Data Access Considerations . 125Benefits of Blob storage . 126Migrating Existing Data to Azure Blob storage . 126Migrating Data to Drives . 127Migration Considerations . 127Uploading Data to Azure Drive. 128See Also. 128v

Considerations for Migrating to Windows Azure Caching . 129Migration Considerations . 129See Also . 131Migrating Applications that Use Messaging Technologies . 132MSMQ Migration . 133Windows Azure Service Bus . 133Windows Azure Queue . 134Windows Azure Worker Role . 134Migrating Data to Local Storage . 135Migration Considerations . 135See Also . 135vi

About This GuideMigrating Data-Centric Applications to Windows Azure provides experienced developers andinformation technology (IT) professionals with detailed guidance on how to migrate their datacentric applications to Windows Azure Cloud Services, while also providing an introduction onhow to migrate those same applications to Windows Azure Virtual Machines. By using thisguide, you will have the planning process, migration considerations, and prescriptive how to’sneeded for a positive migration experience.This guide has the following parts:Part 1: Planning and Implementing a MigrationOverview of the Migration Life CycleProvides step-by-step instructions for migrating your applications and data to WindowsAzure.Planning a MigrationProvides a walk through on several concerns and steps you should consider as you plana migration to Windows Azure.Implementing the Migration PlanProvides guidance on the final steps of migration to Windows Azure.Part 2: Migration Considerations, Best Practices, and How ToMigrating with Windows Azure Virtual MachinesProvides an overview on the Windows Azure Virtual Machines (VM) and guidance onhow you can migrate your existing SQL Server databases to Windows Azure using SQLServer in a Windows Azure Virtual Machine.Migrating with Windows Azure Cloud ServicesProvides an overview on the Windows Azure Cloud Services and guidance on how tomigrate your existing applications and databases to Windows Azure using thefunctionalities provided by the Windows Azure Cloud Services platform.1

MIGRATING DATA-CENTRIC APPLICATIONS TO WINDOWS AZURERelated SectionsMigrating Data-Centric Applications to Windows Azure is part of the Windows Azure DeveloperGuidance section of the Windows Azure library. If you like this guide, you might also beinterested in the following topics in Windows Azure Developer Guidance:2 Planning and Designing Windows Azure Applications Developing Windows Azure Applications Testing, Managing, Monitoring and Optimizing Windows Azure Applications Node.js Developer Guidance (Windows Azure) PHP Developer Guidance (Windows Azure) Java Developer Guidance (Windows Azure) Other Third Party Software on Windows Azure

Part 1:Planning and Implementinga Migration

Overview of the Migration Life CycleAuthors: Kun Cheng, Selcin Turkarslan, Norberto GarciaReviewers: Paolo Salvatori, Steve Howard, Stuart OzerThe migration life cycle is a standard methodology that provides you the step-by-stepinstructions for migrating your applications and data to Windows Azure. The main migrationsteps are Analysis Phase, Application Migration Phase, Data Migration Phase, Testing andOptimization Phase, and Operation and Management Phase as shown in the diagram below.This topic explains each phase in detail with links to further information.Analysis PhaseThe goal of this phase is to understand the business needs that require the Windows AzureSolution. After identifying the business goals, review the existing application architecture toidentify the main differences between Windows Azure and on-premises solutions anddetermine if you need to re-design the existing an on-premises application to meet the businessneeds of a Windows Azure solution. The following tasks and questions help you create a cloudmigration plan: Define business requirements: There are many potential questions raised by businessscenarios when an application runs on Windows Azure:oIs Windows Azure deployment solution targeting new customers and users?oIs the application meeting the compliance regulations when the data is hostedin the Microsoft data center(s) instead of customer sites?o4Would it require multi-tenancy to support multiple customers?

Overview of the Migration Life CycleoWhich applications are more suited to the cloud architecturally andstrategically?oWhich service is best for my applications and databases: Windows Azure CloudServices or Windows Azure Virtual Machines?The answers to these questions impact the way that an application is designed tobehave on the Windows Azure platform. Determine feature discrepancies: Can you run your existing application in the cloudwith no changes? For example, Windows Azure SQL Database (SQL Database) does notsupport all of the features that on-premise SQL Server does. If you want to move an onpremise application that uses CLR (Common Language Runtime) to SQL Database, youneed to re-design the application by moving CLR logic from SQL Server to the applicationlayer, or rewriting the CLR logic by using the Transact-SQL statements that aresupported by SQL Database. Note that SQL Database does not support SQL CLRcurrently.Starting with the Windows Azure 2012 Preview release, the new Virtual Machinecapabilities have been added to Windows Azure. With Windows Azure Virtual Machines,you can migrate your existing SQL Server applications built on Windows Server platformto Windows Azure Platform with minimal or no code changes. With SQL Server inWindows Azure VM, administrators and developers can still use the same developmentand administration tools that are available on-premises. The performance of a relationaldatabase in Windows Azure Virtual Machine depends on many factors, including the VMsize, the number and configuration of disks, the network, the configuration of thedatabase software and the application workload. We recommend that developersbenchmark their application on several VM sizes and storage configurations to selectthe most appropriate one. For more information, see Migrating with SQL Server inWindows Azure Virtual Machines. Prepare a plan for performance and scalability: Many legacy applications weredesigned to be tightly integrated between the application logic and the data accesscomponents. For legacy applications, it makes sense to decouple components of theapplication to perform and scale better on Windows Azure. If the application is toochatty or doing an excessive data inquiry, consider using Windows Azure Caching Serviceor implement your own caching mechanism to batch up data access queries and toreduce roundtrips between your application and data. If the application to be migrateddeals with large databases or high transaction volume, migrating to SQL Database islikely to require a re-design of the database model. This is because a single SQLDatabase instance can handle a limited number of transactions per second and have alimited database size. While dealing with large databases or high transaction volume,consider implementing a scale-out architecture utilizing multiple databases in SQLDatabase or start using SQL Database Federations instead of expensive scale-up systemsin on-premises.5

MIGRATING DATA-CENTRIC APPLI

Migrating Data-Centric Applications to Windows Azure Kun Cheng, Selcin Turkarslan, Norberto Garcia, Steve Howard, Shaun Tinline-Jones, Sreedhar Pelluru, Silvano

Related Documents:

Migrating a SQL Server Database to Amazon Aurora MySQL (p. 93) Migrating an Amazon RDS for SQL Server Database to an Amazon S3 Data Lake (p. 110) Migrating an Oracle Database to PostgreSQL (p. 130) Migrating an Amazon RDS for Oracle Database to Amazon Redshift (p. 148) Migrating MySQL-Compatible Databases (p. 179)

Pro:Centric Direct interactive features are available with IP connectivity. Easy Code Editing with HCAP API Customized UI & Interactive Service Pro:Centric Smart TV API SI Application IP Pro:Centric (Middleware Platform) Pro:Centric Hotel Management Solution The WU960H is the latest in the line of Pro:Centric TVs that provide a unique and .

Migrating from Oracle Business Intelligence 12c or the Previous Release of Oracle Analytics Server 3-13 Creating the Export Bundle 3-13 Upload and Restore the Export Bundle in Oracle Analytics Server 3-14 Migrating from Oracle Business Intelligence 11g 3-14 Migrating using the Console 3-14. iv. Running a Pre-Upgrade Readiness Check2-15

data center network topologies can be generally classified into four categories: switch-centric, server-centric, hybrid network architectures and direct network interconnection. The switch-centric topology is the most typical data cen-ter architecture, which places the interconnection and routing intelligence on switches.

This information asymmetry often leads to a suboptimal system operation. Information-centric Networking (ICN) postulates a fundamental paradigm shift away from a host-centric model towards an information-centric one. ICN focuses on information item discovery and transmission and not on the connection of end-points that exchange data.

Network-Centric Warfare Concept Network-centric operations were considered so essential to DOD transformation before 9/11 that the U.S. Congress, in Public Law 106-398, required the Department of Defense to report on the implementa-tion of the concept. 11 The object of network-centric operations is to take advantage of advances in IT so

the network-centric doctrine of operations (von Lubitz and Wickramasinghe, 2006a). The process-centric approach incorporates the two other major models (people- and tech-centric) and also allows a significant degree of automation in data/information extraction, manipulation, and organization. Human participation is, however, necessary for the

Thermal and System Management Approach for Exhaust Systems Amit Deshpande, Frank Popielas, Chris Prior, Rohit Ramkumar, Kevin Shaver Sealing Products Group, Dana Holding Corporation Abstract: The automotive and heavy-duty industry (off- and on-highway) requirements for emission, noise and fuel reduction and control have become more stringent. Based on the complexity of the system with its .