WINDOWS AZURE Vijay Rajagopalan Principal Program Manager Windows Azure Runtime.
Subtitle color From Windows Azure From Outside Microsoft Datacenter From Outside Microsoft...
-
Upload
asher-gilmore -
Category
Documents
-
view
214 -
download
0
Transcript of Subtitle color From Windows Azure From Outside Microsoft Datacenter From Outside Microsoft...
Intro to SQL Azure
NameTitleMicrosoft Corporation
Session Objectives and Takeaways
Session Objective(s):Get up to speed on SQL AzureLearn about the architecture and cloud specific features of SQL AzureDemonstration of some core features in action
TakeawaySQL Azure is uniquely positioned as an ideal data platform for Windows Azure applications
SQL Azure DatabaseThe first and only true relational database as a service
Elastic Scale Developer Agility
Self-managed
o Database utility; pay as you grow
o Business-ready SLAs
o Enable multi-tenant solutions
o World-wide presence
o Easy provisioning and deployment
o Auto high-availability and fault tolerance
o No need for server or VM administration
o Build cloud-based database solutions on consistent relational model
o Leverage existing skills through existing ecosystem of developer and management tools
Application TopologiesFrom
Windows AzureFrom Outside
Microsoft Datacenter From Outside
Microsoft Datacenter & Windows Azure
Application / Browser
Windows Azure
SQL Azure
Code Near
App Code / Tools
SQL Azure
MicrosoftDatacenter
Code Far Hybrid
Microsoft Datacente
r
SQL Azure
SQL Server
Microsoft Datacenter Windows
Azure
SQL Azure Data Sync
App Code / Tools
Architecture
Shared infrastructure at SQL database and below
Request routing, security and isolation
Scalable HA technology provides the glueAutomatic replication and failover
Provisioning, metering and billing infrastructure
Database Replicas
Replica 1
Replica 2
Replica 3
DB
Single Database Multiple Replicas
Single Primary
Replica 4
!
Behind the Scenes of SQL Azure Applicatio
n
Internet
LB
TDS (tcp)
TDS (tcp)
TDS (tcp)
Apps use standard SQL client libraries: ODBC, ADO.Net, PHP, …
Load balancer forwards ‘sticky’ sessions to TDS protocol tier
Security Boundary
Gateway
Gateway
Gateway
Gateway
Gateway
Gateway
Scalability and Availability: Fabric, Failover, Replication, and Load balancing
SQL SQL SQL SQL SQLSQL
Gateway: TDS protocol gateway, enforces AUTHN/AUTHZ policy; proxy to backend SQL
Service Provisioning Model
Each account has zero or more logical servers
Provisioned via a common portalEstablishes a billing instrument
Each logical server has one or more databases
Contains metadata about database & usageUnit of authentication, geo-location, billing, reportingGenerated DNS-based name
Each database has standard SQL objects
Users, Tables, Views, Indices, etcUnit of consistency
Account
Server
Database
Working With SQL Azure
Connection Model
SQL Azure exposes native SQL Server TDS protocolUse existing client libraries
ADO.NET, ODBC, PHPClient libraries pre-installed in Windows Azure rolesSupport for ASP.NET controlsClients connect directly to a database
Cannot hop across DBs (no USE)
Connecting to SQL Azure
SQL Azure connection strings follow normal SQL syntaxApplications connect directly to a database
“Initial Catalog = <db>” in connection stringNo support for context switching (no USE <db>)
Encryption securitySet Encrypt = True, only SSL connections are supportedTrustServerCertificate = False, avoid Man-In-The-Middle-Attack!
Format of username for authentication:ADO.Net:Data Source=server.database.windows.net;User ID=user@server;Password=password;...
Setup your firewall rules first!
Logical vs. Physical Administration
SQL Azure focus on logical administrationSchema creation and managementQuery optimizationSecurity management (Logins, Users, Roles)
Service handles physical managementAutomatically provides HA “out of box”Transparent failover in case of failureLoad balancing of data to ensure SLA
DBA role places more focus on logical management
Deployment
Deploy via T-SQL scripts
Support for SQL Server Data-Tier Applications (DAC) feature
DACPAC is unit of deploymentCloud or on-premise is a deployment time choice
Create Logical Server in same region as Windows Azure Affinity Group for code-near architecture
Support existing and new forms of deployment
Security Model
Uses regular SQL security modelAuthenticate logins, map to users and rolesAuthorize users and roles to SQL objects
Support for standard SQL Auth loginsUsername + password
Security model is 100% compatible with on-premise SQL
Lap Around SQL Azure
demo
NameTitleCompany
Sample of SQL Compatibility
Currently SupportedTables, indexes and viewsStored ProceduresTriggersConstraintsTable variables, session temp tables (#t)Spatial
Not Currently Supported
Distributed TransactionsDistributed QueryCLRService BrokerPhysical server or catalog DDL and views
Spatial Support2D Vector Data:
Geography – Round-Earth dataGeometry – Flat-Earth data
Support for Point, Line, Area (Polygon) objectsOver 70 T-SQL spatial methodsHigh-performance spatial indicesSpatial industry standard supportSymmetry w/SQL Server 2008
Database Editions
Two SQL Azure Database SKUs: Web & BusinessWeb Edition: 1 GB @ $9.99/month | 5 GB @ $49.95/monthBusiness Edition: Up to 50 GB @ $99.99/10 GB/month10 GB @ $99.99 | 20 GB @ $199.98 | 30 GB @ $299.97 | 40 GB @ $399.96 | 50 GB @ $499.95
You specify Web or Business EditionWeb: EDITION = webBusiness: EDITION = business
You specify MAXSIZEWeb: MAXSIZE = 1GB | 5GBBusiness: MAXSIZE = 10GB | 20GB | 30GB | 40GB | 50GB
This is the maximum size we will not let you grow beyondYou will only be charged for the actual peak size in any one day rounded upFor example, a 3.4 GB Web Edition will be charged 5GB rate.
CREATE DATABASE foo1 (EDITION='business', MAXSIZE=50GB);CREATE DATABASE foo2 (EDITION='business', MAXSIZE=30GB);
ALTER DATABASE foo2 MODIFY (EDITION='web', MAXSIZE=5GB);
Up to 50 GB10 GB increments
Business Edition
1 GB or 5 GBWeb Edition
Scale Out with SQL Azure
Scale Out SQL Azure
Large Data Sets and/or Massive Throughput
Partition data across many databasesUse parallel fan-out queries to fetch the dataApplication code must be partition aware
Just-In-Time PartitioningPartition just for peak load periodsRun partitioned databases in cloud;consolidate into single database on-premise
Sharding Databases
1 x 20 GB database = 1 Machine
20 x 1 GB databases = 20 Machines
SQL Azure Advanced Features
OData Support
JSONATOM
PUBHTTP
Sign up and send us your feedback!
https://www.sqlazurelabs.co
m
Open Data Protocol
Project “Houston”
SQL Azure Data Sync Service
Benefits
• Scale-out read or read/write
• Geo replication of data
• Edge network data distribution
Sync Grou
p
SQL Azur
e
SQL Azur
e
SQL Azur
e
Summary
SQL Azure provides highly availableRDBMS in the cloud.
Broad SQL Server feature equivalencePartition for Size and LoadSpatial features