The document provides an overview of SQL Azure, a relational database service available on the Microsoft Azure platform. Key points include:
- SQL Azure allows users to build applications that use a relational database in the cloud without having to manage infrastructure.
- It is based on SQL Server and provides a familiar programming model, but is designed for the cloud with high availability and scalability.
- The service has limitations on database size and does not provide built-in sharding capabilities, so applications need to implement custom partitioning logic for large datasets.
- Future improvements may address limitations and open up new scenarios and opportunities through integration with other Azure services. SQL Azure is part of Microsoft's broader strategy around cloud-
Database in the Cloud for Azure Services Platform, SQL Azure
1. The database in the cloud forAzure Services Platform, SQL Azure Ing. Eduardo Castro, PhD Comunidad Windows ecastro@grupoasesor.net http://ecastrom.blogspot.com
2. Session Objectives And Takeaways Session Objectives: Provide “why”, “what”, and “how” around SQL Azure Help you to answer your customer’s Cloud questions Key Takeaways Microsoft will have a strong position in Cloud business software SQL Azure is different than SQL Server and hosted SQL Server SQL Azure will open up new scenarios and opportunities
5. What’s going on out there? Cloud perception… Costs? New capabilities? Massively scalable computing? IaaS, PaaS, SaaS ??? Value chains being remade Private clouds? Interop & standards…
6. A Working Definition of Cloud Computing Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models. NIST, Information Technology Laboratory 6
10. Platform dimensions Relationship Productivity Friction Velocity Facilities Focus Viability Trust Scale Characteristics of Software Platforms Platform vendors succeed when the platform helps others succeed
11. Cloud Success Factors Utility Computing Capability Technical capability Datacenter Innovation capability Application Pattern Capability Not just about the browser Multi-screen experience Platform, delivery & tooling Platform Ecosystem Work with ISVs, SIs, VARs & Businesses to get to Cloud
12. Challenges Identity and Access Management Composition / Workflow 2PL OCC Sync Workflow Trust Availability Performance Information protection Latency It matters Separating logical / physical administration
13. Microsoft Value Proposition Provide “Multi-screen”Experience Provider Of Choice Provider w/ Choice Customers Hosters ISVs SIs VARs Existing BusinessProcesses Partners Billing as a Service ServiceComposition Internal Processes & Capabilities SaaS influencing OPS & Services PaaSBuildout Extreme Scale Data Centers MSR PartnerEcosystem Learning & Growth SaaS Experience (BPOS) IaaS Experience (Live) On-premises Software (OPS) to Services Learning w/ Partners
15. The Azure Services PlaformAn illustration .NET Services SQL Azure Applications Windows Azure Applications Windows Mobile Windows Vista/XP Windows Server Others
17. SQL AzureA relational DB in the cloud SQL Azure Database Data Hub Others (Future) Relational database as a service Highly available, automatically maintained Extension of the SQL Server Data Platform .NET Services SQL Services Applications Live Services Windows Azure Applications Windows Mobile Windows Vista/XP Windows Server Others
22. The Evolution of SDS Evolves BrowserApplication Application Application BrowserApplication Application ODBC, OLEDB, ADO.Net PHP, Ruby, … REST Client SQL Client* REST Client Cloud Cloud Windows Azure REST (Astoria) Web App ADO.Net + EF REST Client HTTP+REST HTTP+REST HTTP TDS HTTP Windows Azure Web App SQL Client* Data Center Data Center TDS + TSQL Model REST/SOAP + ACE Model SDS Next SDS Current * Client access enabled using TDS for ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, …
23. Database Relational database, provided as a service Highly symmetrical development and tooling experience (use TDS protocol and T-SQL) Highly scaled out, on commodity hardware Built on the SQL Server technology foundation Beyond “hosted database” High availability, DB provisioning, and DB management are provided by the service Pay for what you use
24. Customer Scenarios Enterprise Departmental Applications Web Applications Departmental workgroup applications with low concurrency and cyclical usage patterns Small customers or start ups with Web applications of all scale that have simple RDBMS needs Data Hubs ISV LOB Applications Data hubs that consolidate multiple data sources and enable access from multiple locations and devices Traditional ISVs extending offering or selling software hosted in the cloud
25. Service Provisioning Model Each account has a billing relationship with Microsoft owns one or more virtual servers Each server has one or more databases including virtual master each database limited in size one or more logins Each database has one or more SQL users Account Server Database Server=server1.data.database.windows.net Database=testDB Login=nigele[@server1] (maps to testuser)
26. Logical Databases (LDB) Shared infrastructure at SQL database and below Request routing, security and isolation Scalable HA technology provides the glue Automatic replication and failover Provisioning, metering and billing infrastructure Machine 5 Machine 6 Machine 4 Machine 7 SQL Instance SQL Instance SQL Instance SQL Instance SQL DB SQL DB SQL DB SQL DB Provisioning (databases, accounts, roles…), Metering, and Billing DB5 DB1 DB3 DB2 DB1 DB6 DB2 DB3 DB1 DB2 DB3 DB4 DB4 DB5 DB1 DB7 Scalability and Availability: Fabric, Failover, Replication, and Load Balancing
27. Computing EvolutionTowards Shared Resources Learning to share more resources over time. Owned Isolated Shared Pooled Things we used to want Exclusively are now a burden… Disk Disk Computer Disk Disk Computer Memory Disk Memory Time
28. SQL Azure Compared To… Hosted SQL Server SQL Azure further separates physical and logical administration SQL Azure includes HA/DR SQL Azure will include other high level services in the future – e.g. BI, “Data Hub”, etc. SQL Server On Premises Separates logical/physical administration Provide DBMS “Utility” Ultimately Write your app and deploy to: SQL Server, SQL Server Utility, SQL Azure, etc.
29. Sample of SQL Compatibility Included in v1 Tables, indexes and views Stored Procedures Triggers Constraints Table variables, session temp tables (#t) … Out of Scope for v1 Distributed Transactions Distributed Query CLR Service Broker Spatial Physical server or catalog DDL and views
30. High Level Architecture SQL Data Services Gateway Tier Protocol Parser Protocol Parser Protocol Parser Protocol Parser Protocol Parser Protocol Parser Protocol Parser Management Services Management Services Management Services Management Services Management Services Management Services Management Services Partition Services Partition Services Partition Services Partition Services Partition Services Partition Services Partition Services SQL Data Services Back End SQL Server SQL Server SQL Server SQL Server SQL Server SQL Server SQL Server Distributed Data Fabric Distributed Data Fabric Distributed Data Fabric Distributed Data Fabric Distributed Data Fabric Distributed Data Fabric Distributed Data Fabric Mgmt. Services Mgmt. Services Mgmt. Services Mgmt. Services Mgmt. Services Mgmt. Services Mgmt. Services
31. SQL Azure Network Topology Application Applications use standard SQL client libraries: ODBC, ADO.Net, … TDS (tcp:1433) Load balancer forwards ‘sticky’ sessions to TDS protocol tier Load Balancer TDS (tcp: 1433) Gateway Gateway Gateway Gateway Gateway Gateway Data Node Data Node Data Node Data Node Data Node Data Node TDS (tcp: 1433) Scalability and Availability: Fabric, Failover, Replication and Load balancing
32. SQL Azure Application Architectures SQL Azure access from outside MS Datacenter (On-premises – ADO.NET) SQL Azure access from within MS Datacenter (Azure compute – ADO.NET) App Code / Tools Application/ Browser SOAP/REST HTTP/S ADO.NET Data Svcs/REST - EF HTTP/S App Code (ASP.NET) Windows Azure T-SQL (TDS) T-SQL (TDS) SQL Azure SQL Azure Code Far Code Near
33. SQL AzureUsing one or multiple databases SQL Data Services Database Application Database Database Application Database
35. Sharding Scaling data between different databases SQL Azure dynamic database creation Partitioning schemas Vertical Horizontal Dynamic Random Based on ranges
38. SQL Azure - Pros Transactions within the platform are not charged Supports relational data & stored procedures etc. Supports ACID characteristics of transaction across multiple entities/tables (but not across databases)
39. SQL Azure - Considerations Doesn’t provide scalability out of the box and there is a hard limit of 50 GB per database instance. Application need to handle the partition logic Since application has to build custom partition logic might incur sizable efforts to build such functionality
40. SQL Azure Improvements MARS (Multiple Active Results Sets), which simplifies the application design process ALTER rename process for symmetry in renaming databases Application and Multi-server management for Data-tier Applications which further streamlines application design and enables deployments of database applications directly from SQL Server 2008 R2 and Visual Studio 2010 to SQL Azure for database deployment flexibility SQL Azure implements Open Data Protocol
41. The Future Ultimately not about “here or there” Hybrid applications & scenarios Major scenario & application evolution over next 3-5 years Constrained by: Trust & Capabilities Policy based management & execution crucial Lot of noise/confusion over interop
42. Summary Key Takeaways Microsoft will have a strong position in Cloud business software SQL Azure is different than SQL Server and hosted SQL Server SQL Azure will open up new scenarios and opportunities Think about services / scenarios that have no “on-premises” equivalent