Your SlideShare is downloading. ×
Microsoft SQL Azure - Building Applications Using SQL Azure Presentation
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Microsoft SQL Azure - Building Applications Using SQL Azure Presentation


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Preparing Your SQL Azure Account
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Connecting to SQL Azure
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Managing Logins & Security in SQL Azure
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Creating Objects in SQL Azure
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Migrating Database Schemas to SQL Azure
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Moving Data into SQL Azure with SSIS
  • Excessive resource usageExecute transaction in the while loop Catch throttling errors that result in connection closedPause for a few seconds and reconnectContinue to execute transactions in the loop
  • The step-by-step demo script for this demo is included in the Azure Services Training Kit. DEMO SCRIPT: Building a Simple SQL Azure App
  • Your free PASS membership enables access to 12 Virtual Chapters, 24 Hours of PASS broadcasts, local PASS Chapters, professional development resources, newsletters, events calendar, and much moreMeet up with like-minded professionals throughout the year at face-to-face PASS Chapter meetings, discuss topical SQL Server issues, share tips and tricks, network, enjoy special guest speakers and get access to all things PASSAt PASS Summit,meet top industry experts , learn about best practices, effective troubleshooting, how to prevent issues, save money, and build a better SQL Server environment
  • Transcript

    • 1. Building Applications Using SQL Azure
      Job Title
      Microsoft Corporation
    • 2. Presentation Outline (hidden slide)
      • Technical Level: 200
      • 3. Intended Audience: Database Developers, Database Architects
      • 4. Objectives (what do you want the audience to take away):
      • 5. Understand the basic concepts of building SQL Azure apps
      • 6. Presentation Outline:
      • 7. SQL Azure Overview
      • 8. Setting Up a SQL Azure Account
      • 9. Connecting to SQL Azure
      • 10. Managing Logins and Security
      • 11. Creating Objects
      • 12. Migrating Database Schemas
      • 13. Moving Data
      • 14. Special Considerations
      • 15. Building a Simple App
    • Building Applications using SQL Azure
      Job Title
      Microsoft Corporation
    • 16. Business Analytics
      Data Sync
      SQL Data Platform as a Service – beyond hosting
      • The Power of the SQL Data Platform in the cloud
      • 17. Leverages existing skills and rich tooling ecosystem
      • 18. Enables database applications with new, “cloud” capabilities
    • SQL Azure Database
      Highly scaled out relational database as a service
      Relational database service
      • SQL Server technology foundation
      • 19. Highly symmetrical
      • 20. Highly scaled
      • 21. Highly secure
      Database “as a Service” – beyond hosting
      Windows Azure
      App Code
      SQL Server Report Server
      Customer Value Props
      • Self-provisioning and capacity on demand
      • 22. Symmetry w/ on-premises database platform
      • 23. Automatic high-availability and fault-tolerance
      • 24. Automated DB maintenance (infrastructure)
      • 25. Simple, flexible pricing – “pay as you grow”
      T-SQL (TDS)
      T-SQL (TDS)
      SQL Azure
      - AD Federation (LiveId /AppFabric AC)
    • 26. SQL Azure Network Topology
      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)
      Data Node
      Data Node
      Data Node
      Data Node
      Data Node
      Data Node
      TDS (tcp: 1433)
      Scalability and Availability: Fabric, Failover, Replication and Load balancing
    • 27. Performance Considerations
      • The distance your application travels to perform data access will affect performance
    • V1 Application Topologies
      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
      ADO.NET Data Svcs/REST - EF
      App Code
      Windows Azure
      T-SQL (TDS)
      T-SQL (TDS)
      SQL Data Services
      SQL Data Services
      Code Far
      Code Near
    • 28. Data Hub
      “An aggregation of Enterprise, Partner, Desktop, and Device data within SQL Azure”
      Windows Azure
      Azure App
      On-premises App
      ADO.NET, ODBC, …
      SQL Azure
      Data Sync Service
      User Management
      Device Management
      Client App
      Client App
      Sync Gateway
      Business Logic / Rules
      Sync Client
      Sync Client
    • 29. Service Provisioning Model
      • Each account has zero or more servers
      • 30. Azure wide, provisioned in a common portal
      • 31. Billing instrument
      • 32. Each server has one or more databases
      • 33. Contains metadata about the databases and usage
      • 34. Unit of authentication
      • 35. Unit of Geo-location
      • 36. Generated DNS based name
      • 37. Each database has standard SQL objects
      • 38. Unit of consistency
      • 39. Unit of multi-tenancy
      • 40. Contains Users, Tables, Views, Indices, etc.
      • 41. Most granular unit of billing
    • 42. Setting Up SQL Azure Account
      • Request token for SQL Azure at
      • 43. Tokens will generally be provisioned within a couple days
      • 44. Redeeming tokens
      • 45. Setup administrative user
      • 46. Specify geo-location
    • Preparing your SQL Azure Account
      Demo (click-through and portal)
    • 47. SQL AzureDeployment
      DB Script
      SQL Azure
      TDS Gateway
    • 48. SQL AzureAccessing databases
      Change Connection String
      Your App
      SQL Azure
      TDS Gateway
    • 49. Connecting to SQL Azure
      • Connect via ADO.NET, ODBC, etc.
      • 50. OLE DB is NOT supported
      • 51. May need to include <login>@<server>
      • 52. USE statement is NOT currently supported
      • 53. Use familiar tools (sqlcmd, osql, SSMS, etc)
      • 54. Current version of SSMS is not fully supported but it works (demo to come)
      • 55. Tools will evolve before PDC for increased support
    • Connecting to SQL Azure
    • 56. SQL Azure Security
      • Supports SQL Server Security
      • 57. On-premise SQL Server security concepts still apply
      • 58. Server-level: sds_dbcreator, sds_securityadmin roles
      • 59. Database-level: same as on-premise SQL Server
      • 60. SSMS Object Explorer is NOT currently supported
      • 61. Administrative user is equivalent to sa
    • Managing Logins and Security in SQL Azure
    • 62. T-SQL Support (full or partial)
      • Constants
      • 63. Constraints
      • 64. Cursors
      • 65. Index management and rebuilding indexes
      • 66. Local temporary tables
      • 67. Reserved keywords
      • 68. Stored procedures
      • 69. Statistics management
      • 70. Transactions
      • 71. Triggers
      • 72. Tables, joins, and table variables
      • 73. Transact-SQL language elements such as
      • 74. Create/drop databases
      • 75. Create/alter/drop tables
      • 76. Create/alter/drop users and logins
      • 77.
      • 78. User-defined functions
    • T-SQL Not Supported (v1)
      • Common Language Runtime (CLR)
      • 80. Database file placement
      • 81. Database mirroring
      • 82. Distributed queries
      • 83. Distributed transactions
      • 84. Filegroup management
      • 85. Full Text Search
      • 86. Global temporary tables
      • 87. Spatial data and indexes
      • 88. SQL Server configuration options
      • 89. SQL Server Service Broker
      • 90. System tables
      • 91. Trace Flags
    • Creating Objects in SQL Azure
    • 92. Migrating Databases
      • “Just change the connection string” * once database is migrated
      • 93. Generate script wizard from SSMS currently creates unsupported DDL
      • 94. SQL Server Management Studio 2008 R2 has increased support for SQL Azure
      • 95. Migrating Databases to SQL Azure HOL in the Windows Azure Platform Training Kit
    • Migrating Database Schemas to SQL Azure
    • 96. Moving data
      • Scripted INSERT statements
      • 97. SQL Server Integration Services
      • 98. Available in Developer and Trial editions
      • 99. Use ADO.NET endpoint
      • 100. BCP (bulk copy) is supported
      • 101. DataSync will enable Microsoft Sync Framework
    • Moving Data into SQL Azure with SSIS
    • 102. Special Considerations: Database Size
      • Maximum single database size is currently 10GB
      • 103. Database size calculation
      • 104. Includes: primary replica data, objects and indexes
      • 105. Does NOT include: logs, master database, system tables, server catalogs or additional replicas
      • 106. V1 does not support auto-partitioning or fan-out queries
      • 107. Must handle partitioning logic within the application
      • 108. See scale out SQL Azure content within the Windows Azure Platform Training Kit for additional guidance
    • Special Considerations: Throttling
      Use traditional SQL Server best practices
      CTP cluster has throttling limits turned up to allow for building logic into apps for handling this case
      Build in retry logic especially if you expect very high throughput demands
      Consider scaling out for high throughput scenarios
    • 109. Special Considerations: PHP
      • SQL Azure does NOT support Multiple Active Result Sets (MARS)
      • 110. Must use the SQL Server for PHP v1.1 or newer with MARS connection option set to FALSE
    • Building a Windows Azure App Connected to SQL Azure
    • 111. Learning SQL Azure
      • 112. Hands on Labs in Windows Azure Platform Training Kit
      • 113. Follow the team bloggers
    • Want to Know More?
      • Windows Azure Platform
      • 114. Windows Azure Platform Training Kit
      • 115. MSDN Development Center
      • 116. Team Blog
    • Anot-for-profit, user-run association to enable the SQL Server community to connect, share, and learn
      Get ongoing SQL Server learning from MVPs, top experts, and real-world users:
      • Training webcasts, technical education, worldwide event info, and more
      Sign up for your FREE PASS membership today:
      • Go to local PASS Chapter meetings
      Visit the PASS Chapter booth to learn about upcoming local events, or visit
      • No local Chapter? Start a Chapter with support and resources from PASS
      • Attend PASS Summit 2010
      World's largest and best conference for SQL Server and BI technical education
      Follow / Join us online: Twitter @sqlpass #sqlpass, LinkedIn group, Facebook group
    • 117. Q & A
    • 118. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
      The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.