This document discusses considerations for migrating an on-premise SQL Server database system to SQL Azure. It provides an overview of the existing on-premise system and SQL Azure capabilities. Key challenges of the migration include determining which data to store where based on cost and performance, implementing connectivity retry logic to handle throttling and faults, and designing a cost-driven architecture in the cloud. The document recommends migrating sensor data and databases to SQL Azure while using Azure services like Data Sync and Analysis Services.
Ähnlich wie Sql connections germany - migration considerations when migrating your on premise db server to sql azure - charley hanania - 08 may 2012 (20)
Sql connections germany - migration considerations when migrating your on premise db server to sql azure - charley hanania - 08 may 2012
1. Migrating to SQL Azure.
Migration Considerations from On-Premise
SQL Server to SQL Azure
Charley Hanania :: QS2 AG – Quality Software Solutions
B.Sc (Computing), MCP, MCDBA, MCITP, MCTS, MCT, Microsoft MVP: SQL Server
Principal Consultant - Senior Database Specialist
2. About Charley Hanania
• Now:
– Microsoft MVP: SQL Server
– Database Consultant at QS2 AG
• Formerly:
– Production Product Owner of MS SQL Server Platform at UBS Investment Bank
– Consultant
– DB Team Leader at Other Banks
• SQL Server Certified since 1998
– On SQL Server since 1995
– Version 4 on OS/2
• ITIL v3 Certified
• IT Professional since 1992
• PASS
– Chapter Leader – Switzerland
– Regional Mentor – Europe
– 24 Hours of PASS Committee Member
– Event Speaker
@CharleyHanania
Charley.Hanania@qs2.ch
linkedin.com/in/charleyhanania
xing.com/profile/Charley_Hanania
Charley.Hanania
3. Presentation Focus
• High Level overview of an example
operational on-premise Database
System.
• Overview of SQL Azure Database
Capabilities.
• Question: Why migrate?
• Insight into issues, decisions and
changes needed for migration.
• Future steps and opportunities.
4. Database System Overview
• Monitoring Sensors are deployed Globally
– Collecting data samples every minute on average.
• Messages are sent to a on-premise Service for
digestion and persistence.
• Service persists to SQL Server Data-warehouse
• Aggregations and reports are made off the DW
• Client-facing Web Applications are used to:
– Register and configure new installations
– Present customers with gauges and graphs of data
collected from their installation.
5. UI’s to add &
configure
customers &
installations
New Topology
6. SQL Azure Database Capabilities
• Cloud-based (DB as a Service) SQL Server Engine
• A Multi-tenant System
• Uses commodity hardware
• Up to 150Gb database Sizes.
• Subset of features of what SQL Server can
provide on premise.
– In some cases has “more” features eg. Federation
• Subset of T-SQL options available.
• Each db is isolated – no inter-database T-SQL
Communication
10. SQL Azure Billing
0 to 100 MB Flat $4.995
Greater than 100 MB to 1 GB Flat $9.99
Greater than 1 GB to 10 GB
$9.99 for first GB,
$3.996 for each additional GB
Greater than 10 GB to 50 GB
$45.954 for first 10 GB,
$1.998 for each additional GB
Greater than 50 GB to 150 GB
$125.874 for first 50 GB,
$0.999 for each additional GB
11. Comparing SQL Server and SQL Azure
• Goal is symmetry:
– T-SQL, features
– Tools
– Connectivity
– Frameworks
• Some variations exist:
– Table design
– T-SQL (see: http://msdn.microsoft.com/en-us/library/windowsazure/ee336281.aspx)
– Some features
– Scale strategy
• Differences being reduced over time
– Feature Variances: http://msdn.microsoft.com/en-us/library/ff394102.aspx
12. Variations from SQL Server
• Source database
version
– SQL Azure based on
SQL Server 2008
• Table design:
– Clustered index
required
– No physical/server
configuration
• Features:
– Some features not yet
available
– E.g. Agent, Full-text,
encryption, service
broker, SQL CLR
• Connection handling
– Latency
– Load-balancing
– Throttling
– Continually improving
• Scaling
– Database size
– Scale-up
– Scale-out
– Elasticity
13. Some features not yet available…
• No file-system control
• No FILESTREAM
• No Full Text Search
• No cross-database queries
• No CLR
• No DBCC
• No SSIS or SSAS
• No Backup/Restore
14. Phase 1 New Topology
Aggregate Tables
Customer data
Installation data
SQL Azure
Data Sync
Send reports
Process reports
Persist reports
Create
aggregations
UI’s to add &
configure
customers &
installations
Old Topology
15. Challenges and Considerations
• Where to store which data
– Cost
– Performance
– Limits
• Connectivity
– Retry logic
– Throttling
– Fault tolerance (Transient Fault Handling Application Block)
• Fault finding
– Heartbeats
– Remote Diagnostics etc…
• Cost driven Architecture
– Multi-tenancy
– New Costs
16. Data Sync Service - Key Features
• No-Code Sync Configuration
– Easily define data to be synchronized and locations
– Choose how often data is synchronized
• Full Data Synchronization Capabilities
– Two-way sync of same data, as well as one-way sync
• Conflict Handling
– Detect and resolve conflicts caused by the same data
being changed in multiple locations
• Logging and Monitoring
– Administration capabilities for tracking usage
• Scale
– Service scales as resources requirements grow
17. Migration - methods
• SQL Azure Migration Wizard (schema and data)
• SQL Azure Migration Wizard for federations
• Generate Script Wizard in SSMS (schema and
small data)
• SQL Server Migration Assistant for Access v5.1
• SQL Azure Import/Export Service CTP and Data
Tier Applications (DACs)
• SSIS
• BCP
Migrating applications session from teched:
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2010/COS311
18. Where do we want to be?
• Sensor messages sent into the Azure Cloud
– Distributed
– Location aware
– Load balanced
• SQL Azure Databases
– Regionalised
– Federated by Installation
• Performance (scale-out)
• Locality (to web and data of customer)
• Use Azure Analysis Services (vapour-ware still)
– Engineering focussed data mining reports
• Use Rich Azure Reporting Services
– Management Reporting Dashboards / KPI’s etc
19. Recap
• SQL Azure is a great platform to utilise, but
– For the right reasons
– In the right way
• Rethink your application Infrastructure for
– Localisation Latency
– Connectivity Retry Logic
– Elastic growth on demand
• Azure’s future is bright
– now’s the time to get on board and
leverage its value-adds
Slide ObjectiveUse this slide to transition into an explanation of SQL Azure Database (Reporting and Data Sync will be covered later)Explain at a high level how SQL Azure worksSpeaker NotesDesign Principle of SQL Azure: Focus on combining the best features of SQL Server running at scale with low frictionSQL Azure is a high availability databaseAlways three transaction consistent replicas of the databaseOne primary replica; two slave replicasFailure of a replica will result in another replica being spun up immediately by the fabricFailure of the primary replica means a slave replica will become the primary and a new slave will spin upMinimal down timeTypically just a few dropped connectionsEasy to code for the failover scenario- if you are ding god connection management and error handling will be fineClustered index required on all tables to allow replicationNotesUseful article from SQL Azure teamhttp://msdn.microsoft.com/en-us/magazine/ee321567.aspx
MS charge at a monthly rate for each SQL Azure database you utilize, but we amortize that database fee over the month and calculate your fee on a daily basis. For databases greater than 1 GB, you will be billed in the next whole gigabyte increment. For example, if you utilized two Business Edition databases, one that was 4.4 GB and one that was 14.4 GB for 1 day during a billing month, you would be charged for a 5 GB and 15 GB database for that day, which would total $2.643. Below are the calculations:5 GB: ($9.99 for the first GB + $3.996 per GB for the next 4 GB) / 31 days = $0.83815 GB: ($45.954 for the first 10 GB + $1.998 per GB for the next 5 GB) / 31 days = $1.805