SQL Azure March 2010
-
Upload
lynn-langit -
Category
Technology
-
view
3.743 -
download
0
description
Transcript of SQL Azure March 2010
![Page 2: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/2.jpg)
Windows Azure Platform
Compute: Virtualized compute environment based on
Windows Server
Storage: Durable, scalable, & available storage
Management: Automated, model-driven management
Database: Relational processing for structured/unstructured data
Service Bus: General purpose application bus
Access Control: Rules-driven, claims-based access
control
![Page 3: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/3.jpg)
Familiar SQL Server relational model Uses existing APIs & tools Built for the Cloud with availability and scale Accessible to all from .NET, PHP, Ruby, or Java
Microsoft SQL Azure
Clear Feedback: “I want a database in the Cloud”
Focus on combining the best features of SQL Server running at scale with low friction
![Page 4: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/4.jpg)
Initial Services Database – Core SQL Server database capabilities
Future Services Data Sync – Enables the sync framework (soon after PDC)
Additional SQL Server capabilities available as a service: Business Intelligence and Reporting
New services: Reference Data and Secure Data Hub
Extending SQL Data Platform to Cloud
SQL Azure Database
Data SyncReference Data
Reporting
Business Intelligenc
e
Symmetric Programming Model
Data Hub Aggregation
![Page 5: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/5.jpg)
Database ChoicesR
eso
urc
es
Dedicated
Shared
Low High“Friction”/Control
SQL Azure (RDBMS)
Value Props:
Auto HA, Fault-ToleranceFriction-free scaleSelf-provisioningHigh compatibility
Virtual DB serverResource governance @
LDB Security @ LDB
Hosted Hosted SQL Server or
other Resource governance @
VM Security @ DB Server/OS
On-premise SQL Server or other s/w on-
premise Resource governance @ machine Security @ DB Server/OS
Value Props:Full h/w control –
size/scale100% compatibilityRoll-your-own
HA/DR/scale
Value Props:
100% of API surface areaRoll-your-own HA/DR/scale
![Page 6: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/6.jpg)
V1 Application Topologies
MSDatacenter
SOAP/RESTHTTP/S
SQL Azure access from within MS Datacenter
Windows Azure
T-SQL (TDS)
MSDatacenter
T-SQL (TDS)
App Code / Tools
SQL Azure access from outside MS Datacenter
App Code
(ASP.NET)
ADO.NET Data Svcs/REST - EFHTTP/S
Code Far
SQL Data Services
SQL Data Services
Application/ Browser
Code Near
![Page 7: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/7.jpg)
Departmental Applications Web Applications ISV Data Hub (Shortly After V1)
Scenarios for V1
![Page 8: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/8.jpg)
“It meets the need of Small Business customers that need a true RDBMS for mission critical applications. After many years of implementing enterprise RDBMS applications for customers with in-house infrastructure and talent, how can I in good conscience develop and implement mission critical applications for my small business customers and leave the OS and RDBMS maintenance to a company with no technical staff?”
“Because of the market segment that it addresses, there is no need for enterprise-like functionality, only high-availability and zero-maintenance.”
“It is very well priced. You get a true RDBMS for a fraction of typical in-house hosting costs. The fact that it is a shared resource does not diminish the feature-set, it only amplifies the need for a well architected and optimized design.”
Customer Quotes
![Page 9: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/9.jpg)
Database Replicas
Replica 1
Replica 2
Replica 3
DB
Single Database Multiple Replicas
Single Primary
![Page 10: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/10.jpg)
SLA Information
SQL Azure customers will have connectivity between the database and our Internet gateway.
SQL Azure will maintain a “Monthly Availability” of 99.9% during a calendar month. “\
Monthly Availability Percentage” for a specific customer database is the ratio of the time the database was available to customer to the total time in a month.
Time is measured in 5-minute intervals in a 30-day monthly cycle. Availability is always calculated for a full month. An interval is marked as unavailable if the customer’s attempts to connect to a database are rejected by the SQL Azure gateway.Download SQL Azure SLA.
![Page 11: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/11.jpg)
SQL AzureDeployment
Web Portal(API)
SQL AzureTDS
DB Script
Support existing and new forms of deployment
![Page 12: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/12.jpg)
Each account has zero or more servers Azure wide, provisioned in a common portal Billing instrument
Each server has one or more databases Contains metadata about the databases and usage Unit of authentication Unit of Geo-location Generated DNS based name
Each database has standard SQL objects Unit of consistency Unit of multi-tenancy Contains Users, Tables, Views, Indices, etc. Most granular unit of billing
Service Provisioning Model
Account
Server
Database
![Page 13: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/13.jpg)
SQL Azure focus on logical administration Schema creation and management Query optimization Security management (Logins, Users, Roles)
Service handles physical management Automatically replicated with HA “out of box” Transparent failover in case of failure Load balancing of data to ensure SLA
Logical vs. Physical Administration
DBA role places more focus on logical management
![Page 14: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/14.jpg)
Uses regular SQL security model Authenticate logins, map to users and roles Authorize users and roles to SQL objects
Limited to standard SQL Auth logins Username + password
Future AD Federation, WLID, etc as alternate authentication protocols
Security Model
Security model is 100% compatible with on-premise SQL
![Page 16: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/16.jpg)
SQL AzureAccessing databases
Web Portal(API)
SQL AzureTDS
Your App
Change Connection String
![Page 17: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/17.jpg)
Use ADO.NET, ODBC, PHP (NOT OLE DB) Client libraries pre-installed in Azure roles Support for ASP.NET controls Clients connect directly to a database
Cannot hop across DBs (no USE) May need to include <login>@<server> Use familiar tools (sqlcmd, osql, SSMS, etc) SSMS 2008 R2 CTP can connect
http://blogs.msdn.com/ssds/archive/2009/11/11/9921041.aspx
Connection Model
![Page 18: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/18.jpg)
Connecting to SQL Azure with SSMS 2008 R2
SQL Azure Explorer for VS 2010 http://sqlazureexplorer.codeplex.com/
SQLCMD – can also be used SSIS – can also be used
Demo – Connect via tools
![Page 19: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/19.jpg)
Programming Model
Small Data Sets Use a single database Same model as on premise SQL Server
Large Data Sets and/or Massive Throughput Partition data across many databases Use parallel fan-out queries to fetch the data Application code must be partition aware in v1
For v1 will publish best practices for scale out Post-v1 we are looking at building an abstraction to
hide some of the complexities of partitioning
![Page 20: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/20.jpg)
Maximum single database size is currently 10GB Database size calculation
Includes: primary replica data, objects and indexes Does NOT include: logs, master database, system
tables, server catalogs or additional replicas V1 does not support auto-partitioning or fan-out
queries Must handle partitioning logic within the
application
Special ConsiderationsDatabase Size
![Page 21: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/21.jpg)
Sharding Databases
1 x 10GB database 1 Instances
10 x 1GB databases 10 Instances
![Page 22: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/22.jpg)
Support common application patterns Logical/policy based administration Patterns work from SQL Server to SQL Azure Multi-tenancy considerations
Throttling and load balancing Limits on DB size, transaction duration, …
Compatibility Goals
V1: Address the needs of the majority of web and departmental applications
![Page 23: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/23.jpg)
Compatibility for V1
In Scope
• Tables, indexes and views• w/ clustered indices
• Stored Procedures• Triggers• Constraints• Table variables • Session temp tables
Out of Scope
• Distributed Transactions• Distributed Query• CLR• Service Broker• Spatial datatype• Physical server or catalog DDL and views
![Page 24: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/24.jpg)
Constants Constraints Cursors Index management and
rebuilding indexes Local temporary tables Reserved keywords Stored procedures Statistics management Transactions
Supported T-SQL (v1)
Triggers Tables, joins, and table
vars T-SQL elements Create/drop databases Create/alter/drop tables Create/alter/drop users
and logins Views
![Page 25: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/25.jpg)
CLR Database file
placement Database mirroring Distributed queries Distributed
transactions Filegroup
management Full Text Search
Unsupported T-SQL (v1)
Global temporary tables Spatial data and
indexes SQL Server
configuration options SQL Server Service
Broker System tables Trace Flags
![Page 26: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/26.jpg)
Remove unsupported features, such as…
Migrating an existing schema
User Defined Data Types
Specifying Filegroups Extended Properties USE DATABASE NOT FOR REPLICATION
Various Index options Windows logins Unsupported XML features Indices need to be clustered
Full list at http://www.microsoft.com/sqlserver/2008/en/us/R2.
aspx
![Page 27: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/27.jpg)
Generating, then modifying, the SQL DDL script
Loading in the data (bcp, etc…)-OR- SQL Azure Migration Wizard
http://sqlazuremw.codeplex.com
Demo – Data into the Cloud
![Page 28: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/28.jpg)
Simple Application – just change the connection string! All compatibility requirements must be met (T-
SQL) in the DDL Create destination DB schema and populate
with data Firewall rules set up via SQL Azure portal (test
connectivity)
Dem0 – SQL Azure application
![Page 29: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/29.jpg)
Pricing
Web Edition
1 GB Database $9.99 / month Bandwidth
$0.10 /GB inbound $0.15 /GB outbound
Business Edition 10GB Database $99.99 / month Bandwidth
$0.10 /GB inbound $0.15 /GB outbound
Specified by MAXSIZE on CREATE DATABASE command or portal (post-CTP1) Monthly billing period
![Page 30: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/30.jpg)
SQL Azure and Windows Azure Table Comparison
SQL Azure Tables Fully structured Strongly typed Relational (RDMS) Highly scalable
Windows Azure Tables Semi-structured Loosely typed Non-Relational (Not RDMS) Massively scalable
![Page 31: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/31.jpg)
Added new Dynamic Management Views (DMVs) Allows return of state information for health monitoring &
performance tuning sys.dm_exec_connections , _requests , _sessions,
_tran_database_transactions, _active_transactions, _partition_stats
Added ability to move between Web or Business edition ALTER DATABASE database_name { MODIFY (MAXSIZE = {1 | 10}
GB) }
Increased idle session conn timeout (from 5 to 30 minutes) Improves experience while using connection pooling and other
interactive tools
Improved long running transaction algorithm Allows import and export of much larger amounts of data without
having to chunk your data
Recently Added (Feb 2010)
![Page 32: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/32.jpg)
Partitioned databases Geo-location and geo-redundancy Distributed query Security w/AD, WLID, etc Support for multiple levels of hardware and software isolation
BI features – SSRS, etc…
SQL AzureOpportunities and Futures
![Page 33: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/33.jpg)
Windows Azure Platform - http://www.azure.com/
Windows Azure Platform Training Kithttp://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&displaylang=en
MSDN Development Centerhttp://msdn.microsoft.com/en-us/sqlserver/dataservices
Team Blog - http://blogs.msdn.com/ssds
Want to Know More?
![Page 34: SQL Azure March 2010](https://reader033.fdocuments.us/reader033/viewer/2022061120/5466cf44af795965358b4bbd/html5/thumbnails/34.jpg)
Lynn LangitBlog: http://blogs.msdn.com/SoCalDevGalTwitter: @llangit
Contact Me