SlideShare a Scribd company logo
1 of 32
Download to read offline
SQL Azure from Plan, to Backup, to Cloud
– Red Gate Cloud Services
Tobiasz Janusz Koprowski
SQL Server MVP, FORG+
ABOUT ME
 Polish SQL Server User Group Leader
 Microsoft Certified Trainer
 MCP, MCSA, MLSS, MLSBS, MCTS, MCITP, MCT
 SQL Server MVP three years in a row)
 Blogger, Influencer, Technical Writer
 Last 8 years living in Data Center in Wrocław
 Generally about 14 years in IT/banking area
 Speaker at SQL Server Community Launch, Time for
SharePoint, CodeCamps, SharePoint Community Launch,
CISSP Day, SQL in the City, InfoTRAMS, SQL Bits, SQL
Saturday, CareerCon, Sharepoint & SQL Connection, IT Camp,
 Deep Dives Co-Author:
High availability of SQL Server in the context
of Service Level Agreements (Chapter 18th)
AGENDA
 PART ONE: SQL Azure
Plan, Compability
 PART TWO: Cloud Services
Backup and Restore,
Synchronize and Schedule
 APPENDIX: additional links
PART ONE: SQL Azure Database
Short Introduction
• Windows Azure
Compute:
Virtualized compute environment based
on Windows Server
Storage:
Durable, scalable, & available storage
Management:
Automated, model-driven management of the service
• SQL Azure (cloud-based database)
Database:
Relational processing for structured/unstructured data
• App Fabric (.NET services)
Service Bus:
General purpose application bus
Access Control:
Rules-driven, claims-based access control
Security Requirements for Azure Platform
As a Service Provider Microsoft has an obligation to passing the several rules for security:
• ISO/IEC 27001:2005
• SAS 70 Type 1 and II
Also they passing (continuisly) several data securing audits:
• PCI DSS
• SOX compliance
• HIPAA compliance
And of course requirements for Data Centers:
• Physical security of the data centers (locks, cameras, biometric devices, card readers,
alarms)
• Firewalls, application gateways and IDS to protect the network
• Access Control Lists (ACLs) applied to virtual local area networks (VLANs) and
applications
• Authentication and authorization of persons or processes that request access to data
• Hardening of the servers and operating system instances
• Redundant internal and external DNS infrastructure with restricted write access
• Securing of virtual machine objects
• Securing of static and dynamic storage containers
PART ONE: SQL Azure
We want to work with SQL Azure (oops SQL Database)
 Size does it matter?
 Personal: 1GB, 5GB
 Business: 10GB, 20 GB, 30 GB, 40 GB, 50 GB, 100 GB, 150 GB (3x50)
 “Private”: less than 100 MB ($4.995 / month)
 Version does it matter?
 10.25 my first experience, but after July 2011 Service Release…
 11.00 now > close to SQL Server 2012
 Collation does it matter?
 default collation: SQL_Latin1_General_CP1_CI_AS
 table level collation
error msg 40544:
The database has reached its size quota. Partition or delete data,
drop indexes, or consult the documentation for possible resolutions.
PART ONE: SQL Database
 Naming, Logins, Users
 Admin, administrator, guest, root, sa
 Data Migration Support
 You can use:
 SQL Server 2008 Integration Services (SSIS)
 The bulk copy utility (BCP.exe)
 System.Data.SqlClient.SqlBulkCopy class
 Scripts that use INSERT statements to load data into the database
 SQL Data Compare from Red Gate
 You can't use:
 The RESTORE statement.
 Attaching a database to the SQL Database server.
 No SQL Server Agent
 No SQL Server jobs
 No SQL Server Browser
 No Cross Database queries
PART ONE: SQL Database
Indexes, of course indexes
 You MUST use CLUSTERED INDEX with your (Azure)
SQL Database.
 Heap tables are not supportes, so You MUST create
CLUSTERED INDEX before INSERT will be executed
error msg 40054:
Tables without a clustered index are not supported in this version of
SQL Server. Create a clustered index and try again.
CREATE TABLE Source (Id int NOT NULL IDENTITY,
[Name] nvarchar(max),
CONSTRAINT [PK_Source] PRIMARY KEY CLUSTERED
(
[Id] ASC
))
PART ONE: SQL Database
Closed connections to the service… by the service
Because of multi-tenant :
 Excessive resource usage
 Connections that have been idle for 30 minutes or longer (Program
assuming your connection is going to fail)
 Failover because of server failures
errors:
40197, 40501, 40544, 40549, 40550, 40551,
40552, 40553, and 40613
Hardware Boundary
Hardware Boundary
Hardware Boundary
Hardware Boundary
Shared Environment
BC
D
A A
B
B
C
CD
D
A
Sample of SQL Compability
In Scope for v1
 Constants
 Constraints
 Cursors
 Index management and rebuilding indexes
 Local temporary tables
 Reserved keywords
 Stored procedures
 Statistics management
 Transactions
 Triggers
 Tables, joins, and table variables
 Transact-SQL language elements such as
 Create/drop databases
 Create/alter/drop tables
 Create/alter/drop users and logins
 and so on.
 User-defined functions
 Views
Out of Scope for v1
 Common Language Runtime (CLR)
 Database file placement
 Database mirroring
 Distributed queries
 Distributed transactions
 Filegroup management
 Global temporary tables
 Spatial data and indexes
 SQL Server configuration options
 SQL Server Service Broker
 System tables
 Trace Flags
 Physical server or catalog DDL and views
SQL Server 2005 {9.0} NON-Compability
 Common Language Runtime (CLR) and CLR User-Defined Types
 Database Mirroring
 Service Broker
 Table Partitioning
 Typed XML and XML indexing is not supported. The XML data type is supported by
SQL Azure.
SQL Server 2008 {10.0} NON-Compability
 Change Data Capture
 Data Auditing
 Data Compression
 Extended Events
 External Key Management / Extensible Key Management
 FILESTREAM Data
 Integrated Full-Text Search
 Large User-Defined Aggregates (UDAs)
 Large User-Defined Types (UDTs)
 Performance Data Collection (Data Collector)
 Policy-Based Management
 Resource Governor
 SQL Server Replication
 Transparent Data Encryption
SQL Server 2008 R2 {10.50} NON-Compability
 SQL Server Utility
 SQL Server PowerShell Provider
 Master Data Services
SQL Server Management Studio does not
support Windows Azure SQL Database in
versions prior to SQL Server 2008 R2.
Connection Model
When writing applications for SQL Azure, you can use the following drivers and
libraries:
 .NET Framework Data Provider for SQL Server (System.Data.SqlClient) from
the .NET Framework 3.5 Service Pack 1.
 SQL Server 2008 Native Client ODBC driver.
 SQL Server 2008 Driver for PHP version 1.1.
 SQL Azure supports tabular data stream (TDS) protocol client version 7.3 or
later. Earlier versions of TDS protocol are not supported.
 Connecting to SQL Azure by using OLE DB is not supported.
 Support for ASP.NET controls
 Clients connect directly to a database
‒ Cannot hop across DBs (no USE)
Scenarios for V1
• Departmental Applications
‒ Simple application built by individual or department
‒ Need simple deployment, self-management, IT: “Empowerment and
Governance”
• Web Applications
‒ Small business or startup that uses the cloud as their IT
‒ Simple deployment, self-management, scale on demand
• ISV
‒ ISV hosting software on behalf of customer
‒ Multi-tenant support for billing and isolation
• Data Hub (Shortly After V1)
‒ Sharing and aggregating of data across tiers and across enterprises
‒ Centralized place for data, high scale, sync with existing data sources
PART ONE: SQL Database
Point of Difference On-premise SQL Server Windows Azure SQL Database
Where you manage server-level security
The Security folder in SQL Server
Management Studio'sObject Explorer
The master database
Server-level security role for creating logins securityadmin fixed server role
loginmanager database role in the master
database
Commands for managing logins
CREATE LOGIN CREATE LOGIN
ALTER LOGIN ALTER LOGIN
DROP LOGIN DROP LOGIN
(There are some parameter limitations and you
must be connected to the master database)
View that shows all logins
sys.syslogins (sys.sql_logins for SQL Server
authentication logins)
sys.sql_logins
(You must be connected to
the master database)
Server-level role for creating databases dbcreator fixed database role
dbmanager database role in the master
database
Command for creating a database CREATE DATABASE
CREATE DATABASE
(There are some parameter limitations and you
must be connected to the master database)
Dropping databases DROP DATABASE
DROP DATABASE
If a user is in the dbmanager role, they have
permission to DROP any database, regardless
of which user originally created it.
View that lists all databases
sys.databases sys.databases
(view)
(You must be connected to
the master database)
19 |
PART ONE: SQL Database
FEDERATIONS
 from 2009 through 2011 for today (history)
 Scale up and out
 10K records > 1DB >> INSERT, INSERT > 10M records
 10K records > 10K max / DB >> INSERT, INSERT >> 100DB each 10K
 Partitioning:
 Horizontal / per row
 Vertical / per column
PART ONE: SQL Database
Adventure…
… of course Adventure Works 2012 for SQL Database
 Adventure Works for SQL Server 2012
 Release date: March 2012
 Adventure Works for SQL Azure
 Release date: April 2012
PART ONE: Azure SQL Database
SHORT DEMO…
PART TWO: Cloud Services
PART TWO: Cloud Services
 What is Cloud Services from Red Gate?
 Suite of tools to help managing cloud services
 Came out of SQL Azure Backup
 Launched in Feb 2012 – continually developing
 Contain different, but integrated features
 Backup and Restore for SQL Azure
 Synchronize for storage
 Scheduling + e-mail notification
PART TWO: Backup and Restore
 Backup to Azure Blob Storage or Amazon S3
 Format is a .bacpac
 Zip file containing xml schema and json data
 Permissions needed for a transactional
backup
 dbmanager and dbo
 ( CREATE DATABASE x AS COPY OF y)
 To export to bacpac file
 dbo I think
PART TWO: Storage Backup
 Backup between Azure Storage and Amazon
S3
 Checksum or filename comparison
 Copies only updated or added files
 Deleted files are not removed currently
 New features coming fast
 Architected to support more storage systems
APPENDIX: links & demos
Most Important Article (in my private opinion)
http://bit.ly/WIHlDL
Authors: Conor Cunningham, Tobias Ternström, Silvano Coriani, Ewan Fairweather
Contributing Author: Ralph Squillace
MSDN SQL Database District
Windows Azure SQL Database (formerly SQL Azure) | http://bit.ly/H0Wdfx
 What's New in Windows Azure SQL Database (formerly SQL Azure)
 Backward Compatibility in Windows Azure SQL Database
 Known Issues in Windows Azure SQL Database
 Introducing Windows Azure SQL Database
 Tutorials
 Feedback and Community Information
 Windows Azure Platform Management Portal
 Windows Azure SQL Database Concepts
 Administration
 Development
 Guidelines and Limitations
 Management REST API Reference
 Transact-SQL Reference
 Errors and Exceptions Reference
APPENDIX: additional links
 Red Gate Cloud Ready Services
 http://cloudservices.red-gate.com/
 General Guidelines and Limitations (Windows Azure SQL Database)
 http://bit.ly/11wB6cK
 Adventure Works for SQL Database (formerly SQL Azure)
 http://bit.ly/125s0W0
 Federations: Building Scalable, Elastic, and Multi-tenant Database Solutions
http://bit.ly/ZxzjmQ | http://bit.ly/15GzIEE
 Error Messages (Windows Azure SQL Database)
 http://bit.ly/17tnQtE
 Compare SQL Server with Windows Azure SQL Database
 http://bit.ly/15RyB5u
AFTER SESSION
CONTACT:
 MAIL: KoprowskiT@windowslive.com
 MSG: KoprowskiT@windowslive.com
 KYPE: tjkoprowski
 TWITTER/FACEBOOK/LINKEDIN: KoprowskiT
BLOGS:
 ITPRO Anorak’s Vision: http://itblogs.pl/notbeautifulanymore/
 Volume Licensing Specialites: http://koprowskit.eu/licensing/
 My MVP Blog: http://koprowskit.eu/geek/
NEXT SESSION
10:15 AM
 Matija Lah
 SQL Server and XML Query Level: Advanced
 Michael Morris
 Choosing the right Storage technology for SQL Server (Flash or rotating
or both? For OLTP or DW)
 Chris Webb
 DAXMD: SSAS Multidimensional meets DAX and Power View
THANK YOU
Q & A

More Related Content

More from Tobias Koprowski

DataMindsConnect2018_SECDEVOPS
DataMindsConnect2018_SECDEVOPSDataMindsConnect2018_SECDEVOPS
DataMindsConnect2018_SECDEVOPSTobias Koprowski
 
KoprowskiT_SQLDay2016_2AMaDisasterJustBegan
KoprowskiT_SQLDay2016_2AMaDisasterJustBeganKoprowskiT_SQLDay2016_2AMaDisasterJustBegan
KoprowskiT_SQLDay2016_2AMaDisasterJustBeganTobias Koprowski
 
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_Cloud
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_CloudKoprowskiT-Difinify2017-SQL_ServerBackup_In_The_Cloud
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_CloudTobias Koprowski
 
KoprowskiT-Difinify2017-SQL_Security_In_The_Cloud
KoprowskiT-Difinify2017-SQL_Security_In_The_CloudKoprowskiT-Difinify2017-SQL_Security_In_The_Cloud
KoprowskiT-Difinify2017-SQL_Security_In_The_CloudTobias Koprowski
 
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganKoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganTobias Koprowski
 
KoprowskiT_SQLAzureLandingInBelfast
KoprowskiT_SQLAzureLandingInBelfastKoprowskiT_SQLAzureLandingInBelfast
KoprowskiT_SQLAzureLandingInBelfastTobias Koprowski
 
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBegan
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBeganKoprowskiT_SQLSatMoscow_2AMaDisaterJustBegan
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBeganTobias Koprowski
 
KoprowskiT_SQLSatMoscow_WASDforBeginners
KoprowskiT_SQLSatMoscow_WASDforBeginnersKoprowskiT_SQLSatMoscow_WASDforBeginners
KoprowskiT_SQLSatMoscow_WASDforBeginnersTobias Koprowski
 
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheClouds
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheCloudsKoprowskiT_SQLRelayBirmingham_SQLSecurityInTheClouds
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheCloudsTobias Koprowski
 
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheClouds
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheCloudsKoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheClouds
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheCloudsTobias Koprowski
 
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015Tobias Koprowski
 
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloudKoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloudTobias Koprowski
 
KoprowskiT_SQLSatDenmark_WASDforBeginners
KoprowskiT_SQLSatDenmark_WASDforBeginnersKoprowskiT_SQLSatDenmark_WASDforBeginners
KoprowskiT_SQLSatDenmark_WASDforBeginnersTobias Koprowski
 
KoprowskiT_session1_SDNEvent_WASDforBeginners
KoprowskiT_session1_SDNEvent_WASDforBeginnersKoprowskiT_session1_SDNEvent_WASDforBeginners
KoprowskiT_session1_SDNEvent_WASDforBeginnersTobias Koprowski
 
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbeganKoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbeganTobias Koprowski
 
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginners
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginnersKoprowskiT_SQLSaturday409_MaintenancePlansForBeginners
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginnersTobias Koprowski
 
KoprowskiT_SPBizConf_2AMaDisasterJustBegan
KoprowskiT_SPBizConf_2AMaDisasterJustBeganKoprowskiT_SPBizConf_2AMaDisasterJustBegan
KoprowskiT_SPBizConf_2AMaDisasterJustBeganTobias Koprowski
 
KoprowskiT_SQLSat419_WADBforBeginners
KoprowskiT_SQLSat419_WADBforBeginnersKoprowskiT_SQLSat419_WADBforBeginners
KoprowskiT_SQLSat419_WADBforBeginnersTobias Koprowski
 
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganKoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganTobias Koprowski
 

More from Tobias Koprowski (20)

DataMindsConnect2018_SECDEVOPS
DataMindsConnect2018_SECDEVOPSDataMindsConnect2018_SECDEVOPS
DataMindsConnect2018_SECDEVOPS
 
KoprowskiT_SQLDay2016_2AMaDisasterJustBegan
KoprowskiT_SQLDay2016_2AMaDisasterJustBeganKoprowskiT_SQLDay2016_2AMaDisasterJustBegan
KoprowskiT_SQLDay2016_2AMaDisasterJustBegan
 
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_Cloud
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_CloudKoprowskiT-Difinify2017-SQL_ServerBackup_In_The_Cloud
KoprowskiT-Difinify2017-SQL_ServerBackup_In_The_Cloud
 
KoprowskiT-Difinify2017-SQL_Security_In_The_Cloud
KoprowskiT-Difinify2017-SQL_Security_In_The_CloudKoprowskiT-Difinify2017-SQL_Security_In_The_Cloud
KoprowskiT-Difinify2017-SQL_Security_In_The_Cloud
 
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBeganKoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
KoprowskiT_PASSEastMidsFEB16_2AMaDisasterJustBegan
 
KoprowskiT_SQLAzureLandingInBelfast
KoprowskiT_SQLAzureLandingInBelfastKoprowskiT_SQLAzureLandingInBelfast
KoprowskiT_SQLAzureLandingInBelfast
 
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBegan
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBeganKoprowskiT_SQLSatMoscow_2AMaDisaterJustBegan
KoprowskiT_SQLSatMoscow_2AMaDisaterJustBegan
 
KoprowskiT_SQLSatMoscow_WASDforBeginners
KoprowskiT_SQLSatMoscow_WASDforBeginnersKoprowskiT_SQLSatMoscow_WASDforBeginners
KoprowskiT_SQLSatMoscow_WASDforBeginners
 
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheClouds
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheCloudsKoprowskiT_SQLRelayBirmingham_SQLSecurityInTheClouds
KoprowskiT_SQLRelayBirmingham_SQLSecurityInTheClouds
 
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheClouds
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheCloudsKoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheClouds
KoprowskiT_SQLRelayCaerdydd_SQLSecurityInTheClouds
 
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015
KoprowskiT_SQLRelayNottingham_BackupAndRestoreAD2015
 
KoprowskiT_SBIPTI_Keynote
KoprowskiT_SBIPTI_KeynoteKoprowskiT_SBIPTI_Keynote
KoprowskiT_SBIPTI_Keynote
 
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloudKoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
KoprowskiT_SQLSatHolland_SQLServerSecurityInTheCloud
 
KoprowskiT_SQLSatDenmark_WASDforBeginners
KoprowskiT_SQLSatDenmark_WASDforBeginnersKoprowskiT_SQLSatDenmark_WASDforBeginners
KoprowskiT_SQLSatDenmark_WASDforBeginners
 
KoprowskiT_session1_SDNEvent_WASDforBeginners
KoprowskiT_session1_SDNEvent_WASDforBeginnersKoprowskiT_session1_SDNEvent_WASDforBeginners
KoprowskiT_session1_SDNEvent_WASDforBeginners
 
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbeganKoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
 
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginners
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginnersKoprowskiT_SQLSaturday409_MaintenancePlansForBeginners
KoprowskiT_SQLSaturday409_MaintenancePlansForBeginners
 
KoprowskiT_SPBizConf_2AMaDisasterJustBegan
KoprowskiT_SPBizConf_2AMaDisasterJustBeganKoprowskiT_SPBizConf_2AMaDisasterJustBegan
KoprowskiT_SPBizConf_2AMaDisasterJustBegan
 
KoprowskiT_SQLSat419_WADBforBeginners
KoprowskiT_SQLSat419_WADBforBeginnersKoprowskiT_SQLSat419_WADBforBeginners
KoprowskiT_SQLSat419_WADBforBeginners
 
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBeganKoprowskiT_SPBizConference_2AMaDisasterJustBegan
KoprowskiT_SPBizConference_2AMaDisasterJustBegan
 

Recently uploaded

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 

KoprowskiT_SQLSat229_Dublin_SQLAzure-fromPlantoBackuptoCloud

  • 1. SQL Azure from Plan, to Backup, to Cloud – Red Gate Cloud Services Tobiasz Janusz Koprowski SQL Server MVP, FORG+
  • 2. ABOUT ME  Polish SQL Server User Group Leader  Microsoft Certified Trainer  MCP, MCSA, MLSS, MLSBS, MCTS, MCITP, MCT  SQL Server MVP three years in a row)  Blogger, Influencer, Technical Writer  Last 8 years living in Data Center in Wrocław  Generally about 14 years in IT/banking area  Speaker at SQL Server Community Launch, Time for SharePoint, CodeCamps, SharePoint Community Launch, CISSP Day, SQL in the City, InfoTRAMS, SQL Bits, SQL Saturday, CareerCon, Sharepoint & SQL Connection, IT Camp,  Deep Dives Co-Author: High availability of SQL Server in the context of Service Level Agreements (Chapter 18th)
  • 3. AGENDA  PART ONE: SQL Azure Plan, Compability  PART TWO: Cloud Services Backup and Restore, Synchronize and Schedule  APPENDIX: additional links
  • 4. PART ONE: SQL Azure Database
  • 5. Short Introduction • Windows Azure Compute: Virtualized compute environment based on Windows Server Storage: Durable, scalable, & available storage Management: Automated, model-driven management of the service • SQL Azure (cloud-based database) Database: Relational processing for structured/unstructured data • App Fabric (.NET services) Service Bus: General purpose application bus Access Control: Rules-driven, claims-based access control
  • 6. Security Requirements for Azure Platform As a Service Provider Microsoft has an obligation to passing the several rules for security: • ISO/IEC 27001:2005 • SAS 70 Type 1 and II Also they passing (continuisly) several data securing audits: • PCI DSS • SOX compliance • HIPAA compliance And of course requirements for Data Centers: • Physical security of the data centers (locks, cameras, biometric devices, card readers, alarms) • Firewalls, application gateways and IDS to protect the network • Access Control Lists (ACLs) applied to virtual local area networks (VLANs) and applications • Authentication and authorization of persons or processes that request access to data • Hardening of the servers and operating system instances • Redundant internal and external DNS infrastructure with restricted write access • Securing of virtual machine objects • Securing of static and dynamic storage containers
  • 7. PART ONE: SQL Azure We want to work with SQL Azure (oops SQL Database)  Size does it matter?  Personal: 1GB, 5GB  Business: 10GB, 20 GB, 30 GB, 40 GB, 50 GB, 100 GB, 150 GB (3x50)  “Private”: less than 100 MB ($4.995 / month)  Version does it matter?  10.25 my first experience, but after July 2011 Service Release…  11.00 now > close to SQL Server 2012  Collation does it matter?  default collation: SQL_Latin1_General_CP1_CI_AS  table level collation error msg 40544: The database has reached its size quota. Partition or delete data, drop indexes, or consult the documentation for possible resolutions.
  • 8. PART ONE: SQL Database  Naming, Logins, Users  Admin, administrator, guest, root, sa  Data Migration Support  You can use:  SQL Server 2008 Integration Services (SSIS)  The bulk copy utility (BCP.exe)  System.Data.SqlClient.SqlBulkCopy class  Scripts that use INSERT statements to load data into the database  SQL Data Compare from Red Gate  You can't use:  The RESTORE statement.  Attaching a database to the SQL Database server.  No SQL Server Agent  No SQL Server jobs  No SQL Server Browser  No Cross Database queries
  • 9. PART ONE: SQL Database Indexes, of course indexes  You MUST use CLUSTERED INDEX with your (Azure) SQL Database.  Heap tables are not supportes, so You MUST create CLUSTERED INDEX before INSERT will be executed error msg 40054: Tables without a clustered index are not supported in this version of SQL Server. Create a clustered index and try again. CREATE TABLE Source (Id int NOT NULL IDENTITY, [Name] nvarchar(max), CONSTRAINT [PK_Source] PRIMARY KEY CLUSTERED ( [Id] ASC ))
  • 10. PART ONE: SQL Database Closed connections to the service… by the service Because of multi-tenant :  Excessive resource usage  Connections that have been idle for 30 minutes or longer (Program assuming your connection is going to fail)  Failover because of server failures errors: 40197, 40501, 40544, 40549, 40550, 40551, 40552, 40553, and 40613
  • 11. Hardware Boundary Hardware Boundary Hardware Boundary Hardware Boundary Shared Environment BC D A A B B C CD D A
  • 12. Sample of SQL Compability In Scope for v1  Constants  Constraints  Cursors  Index management and rebuilding indexes  Local temporary tables  Reserved keywords  Stored procedures  Statistics management  Transactions  Triggers  Tables, joins, and table variables  Transact-SQL language elements such as  Create/drop databases  Create/alter/drop tables  Create/alter/drop users and logins  and so on.  User-defined functions  Views Out of Scope for v1  Common Language Runtime (CLR)  Database file placement  Database mirroring  Distributed queries  Distributed transactions  Filegroup management  Global temporary tables  Spatial data and indexes  SQL Server configuration options  SQL Server Service Broker  System tables  Trace Flags  Physical server or catalog DDL and views
  • 13. SQL Server 2005 {9.0} NON-Compability  Common Language Runtime (CLR) and CLR User-Defined Types  Database Mirroring  Service Broker  Table Partitioning  Typed XML and XML indexing is not supported. The XML data type is supported by SQL Azure.
  • 14. SQL Server 2008 {10.0} NON-Compability  Change Data Capture  Data Auditing  Data Compression  Extended Events  External Key Management / Extensible Key Management  FILESTREAM Data  Integrated Full-Text Search  Large User-Defined Aggregates (UDAs)  Large User-Defined Types (UDTs)  Performance Data Collection (Data Collector)  Policy-Based Management  Resource Governor  SQL Server Replication  Transparent Data Encryption
  • 15. SQL Server 2008 R2 {10.50} NON-Compability  SQL Server Utility  SQL Server PowerShell Provider  Master Data Services SQL Server Management Studio does not support Windows Azure SQL Database in versions prior to SQL Server 2008 R2.
  • 16. Connection Model When writing applications for SQL Azure, you can use the following drivers and libraries:  .NET Framework Data Provider for SQL Server (System.Data.SqlClient) from the .NET Framework 3.5 Service Pack 1.  SQL Server 2008 Native Client ODBC driver.  SQL Server 2008 Driver for PHP version 1.1.  SQL Azure supports tabular data stream (TDS) protocol client version 7.3 or later. Earlier versions of TDS protocol are not supported.  Connecting to SQL Azure by using OLE DB is not supported.  Support for ASP.NET controls  Clients connect directly to a database ‒ Cannot hop across DBs (no USE)
  • 17. Scenarios for V1 • Departmental Applications ‒ Simple application built by individual or department ‒ Need simple deployment, self-management, IT: “Empowerment and Governance” • Web Applications ‒ Small business or startup that uses the cloud as their IT ‒ Simple deployment, self-management, scale on demand • ISV ‒ ISV hosting software on behalf of customer ‒ Multi-tenant support for billing and isolation • Data Hub (Shortly After V1) ‒ Sharing and aggregating of data across tiers and across enterprises ‒ Centralized place for data, high scale, sync with existing data sources
  • 18. PART ONE: SQL Database Point of Difference On-premise SQL Server Windows Azure SQL Database Where you manage server-level security The Security folder in SQL Server Management Studio'sObject Explorer The master database Server-level security role for creating logins securityadmin fixed server role loginmanager database role in the master database Commands for managing logins CREATE LOGIN CREATE LOGIN ALTER LOGIN ALTER LOGIN DROP LOGIN DROP LOGIN (There are some parameter limitations and you must be connected to the master database) View that shows all logins sys.syslogins (sys.sql_logins for SQL Server authentication logins) sys.sql_logins (You must be connected to the master database) Server-level role for creating databases dbcreator fixed database role dbmanager database role in the master database Command for creating a database CREATE DATABASE CREATE DATABASE (There are some parameter limitations and you must be connected to the master database) Dropping databases DROP DATABASE DROP DATABASE If a user is in the dbmanager role, they have permission to DROP any database, regardless of which user originally created it. View that lists all databases sys.databases sys.databases (view) (You must be connected to the master database) 19 |
  • 19. PART ONE: SQL Database FEDERATIONS  from 2009 through 2011 for today (history)  Scale up and out  10K records > 1DB >> INSERT, INSERT > 10M records  10K records > 10K max / DB >> INSERT, INSERT >> 100DB each 10K  Partitioning:  Horizontal / per row  Vertical / per column
  • 20. PART ONE: SQL Database Adventure… … of course Adventure Works 2012 for SQL Database  Adventure Works for SQL Server 2012  Release date: March 2012  Adventure Works for SQL Azure  Release date: April 2012
  • 21. PART ONE: Azure SQL Database SHORT DEMO…
  • 22. PART TWO: Cloud Services
  • 23. PART TWO: Cloud Services  What is Cloud Services from Red Gate?  Suite of tools to help managing cloud services  Came out of SQL Azure Backup  Launched in Feb 2012 – continually developing  Contain different, but integrated features  Backup and Restore for SQL Azure  Synchronize for storage  Scheduling + e-mail notification
  • 24. PART TWO: Backup and Restore  Backup to Azure Blob Storage or Amazon S3  Format is a .bacpac  Zip file containing xml schema and json data  Permissions needed for a transactional backup  dbmanager and dbo  ( CREATE DATABASE x AS COPY OF y)  To export to bacpac file  dbo I think
  • 25. PART TWO: Storage Backup  Backup between Azure Storage and Amazon S3  Checksum or filename comparison  Copies only updated or added files  Deleted files are not removed currently  New features coming fast  Architected to support more storage systems
  • 27. Most Important Article (in my private opinion) http://bit.ly/WIHlDL Authors: Conor Cunningham, Tobias Ternström, Silvano Coriani, Ewan Fairweather Contributing Author: Ralph Squillace
  • 28. MSDN SQL Database District Windows Azure SQL Database (formerly SQL Azure) | http://bit.ly/H0Wdfx  What's New in Windows Azure SQL Database (formerly SQL Azure)  Backward Compatibility in Windows Azure SQL Database  Known Issues in Windows Azure SQL Database  Introducing Windows Azure SQL Database  Tutorials  Feedback and Community Information  Windows Azure Platform Management Portal  Windows Azure SQL Database Concepts  Administration  Development  Guidelines and Limitations  Management REST API Reference  Transact-SQL Reference  Errors and Exceptions Reference
  • 29. APPENDIX: additional links  Red Gate Cloud Ready Services  http://cloudservices.red-gate.com/  General Guidelines and Limitations (Windows Azure SQL Database)  http://bit.ly/11wB6cK  Adventure Works for SQL Database (formerly SQL Azure)  http://bit.ly/125s0W0  Federations: Building Scalable, Elastic, and Multi-tenant Database Solutions http://bit.ly/ZxzjmQ | http://bit.ly/15GzIEE  Error Messages (Windows Azure SQL Database)  http://bit.ly/17tnQtE  Compare SQL Server with Windows Azure SQL Database  http://bit.ly/15RyB5u
  • 30. AFTER SESSION CONTACT:  MAIL: KoprowskiT@windowslive.com  MSG: KoprowskiT@windowslive.com  KYPE: tjkoprowski  TWITTER/FACEBOOK/LINKEDIN: KoprowskiT BLOGS:  ITPRO Anorak’s Vision: http://itblogs.pl/notbeautifulanymore/  Volume Licensing Specialites: http://koprowskit.eu/licensing/  My MVP Blog: http://koprowskit.eu/geek/
  • 31. NEXT SESSION 10:15 AM  Matija Lah  SQL Server and XML Query Level: Advanced  Michael Morris  Choosing the right Storage technology for SQL Server (Flash or rotating or both? For OLTP or DW)  Chris Webb  DAXMD: SSAS Multidimensional meets DAX and Power View