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

Microsoft SQL Azure - Building Applications Using SQL Azure Presentation

on

  • 3,094 views

 

Statistics

Views

Total Views
3,094
Views on SlideShare
3,077
Embed Views
17

Actions

Likes
0
Downloads
116
Comments
0

1 Embed 17

http://www.slideshare.net 17

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • 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

Microsoft SQL Azure - Building Applications Using SQL Azure Presentation Microsoft SQL Azure - Building Applications Using SQL Azure Presentation Presentation Transcript

  • Building Applications Using SQL Azure
    Name
    Job Title
    Microsoft Corporation
  • Presentation Outline (hidden slide)
    • Technical Level: 200
    • Intended Audience: Database Developers, Database Architects
    • Objectives (what do you want the audience to take away):
    • Understand the basic concepts of building SQL Azure apps
    • Presentation Outline:
    • SQL Azure Overview
    • Setting Up a SQL Azure Account
    • Connecting to SQL Azure
    • Managing Logins and Security
    • Creating Objects
    • Migrating Database Schemas
    • Moving Data
    • Special Considerations
    • Building a Simple App
  • Building Applications using SQL Azure
    Name
    Job Title
    Microsoft Corporation
  • Business Analytics
    Reporting
    Data Sync
    Database
    SQL Data Platform as a Service – beyond hosting
    • The Power of the SQL Data Platform in the cloud
    • Leverages existing skills and rich tooling ecosystem
    • 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
    • Highly symmetrical
    • Highly scaled
    • Highly secure
    Database “as a Service” – beyond hosting
    Browser
    Database
    SOAP/REST
    HTTP/S
    ADO.NET/REST - EDM
    HTTP/S
    MS
    Datacenter
    Windows Azure
    Compute
    App Code
    (ASP.NET)
    SQL Server Report Server
    (on-premises)
    Customer Value Props
    • Self-provisioning and capacity on demand
    • Symmetry w/ on-premises database platform
    • Automatic high-availability and fault-tolerance
    • Automated DB maintenance (infrastructure)
    • Simple, flexible pricing – “pay as you grow”
    T-SQL (TDS)
    T-SQL (TDS)
    SQL Azure
    Database
    - AD Federation (LiveId /AppFabric AC)
  • SQL Azure Network Topology
    Applications use standard SQL client libraries: ODBC, ADO.Net, …
    Application
    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
  • 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)
    Application/
    Browser
    App Code / Tools
    ADO.NET Data Svcs/REST - EF
    HTTP/S
    SOAP/REST
    HTTP/S
    App Code
    (ASP.NET)
    Windows Azure
    T-SQL (TDS)
    T-SQL (TDS)
    SQL Data Services
    SQL Data Services
    MS
    Datacenter
    MS
    Datacenter
    Code Far
    Code Near
  • Data Hub
    “An aggregation of Enterprise, Partner, Desktop, and Device data within SQL Azure”
    Windows Azure
    Enterprise
    Azure App
    On-premises App
    ADO.NET, ODBC, …
    SQL Azure
    Data Sync Service
    Sync
    Enterprise
    Sync
    Sync
    User Management
    Device
    Device Management
    Desktop
    Client App
    Client App
    Sync Gateway
    Business Logic / Rules
    Sync Client
    Sync Client
  • Service Provisioning Model
    • 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
    Account
    Server
    Database
  • Setting Up SQL Azure Account
    • Request token for SQL Azure at http://www.azure.com/
    • Tokens will generally be provisioned within a couple days
    • Redeeming tokens
    • Setup administrative user
    • Specify geo-location
  • Preparing your SQL Azure Account
    Demo (click-through and portal)
  • SQL AzureDeployment
    DB Script
    SQL Azure
    TDS Gateway
  • SQL AzureAccessing databases
    Change Connection String
    Your App
    SQL Azure
    TDS Gateway
  • Connecting to SQL Azure
    • Connect via ADO.NET, ODBC, etc.
    • OLE DB is NOT supported
    • May need to include <login>@<server>
    • USE statement is NOT currently supported
    • Use familiar tools (sqlcmd, osql, SSMS, etc)
    • Current version of SSMS is not fully supported but it works (demo to come)
    • Tools will evolve before PDC for increased support
  • Connecting to SQL Azure
    Demo
  • SQL Azure Security
    • Supports SQL Server Security
    • On-premise SQL Server security concepts still apply
    • Server-level: sds_dbcreator, sds_securityadmin roles
    • Database-level: same as on-premise SQL Server
    • SSMS Object Explorer is NOT currently supported
    • Administrative user is equivalent to sa
  • Managing Logins and Security in SQL Azure
    Demo
  • T-SQL Support (full or partial)
    • 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
    • User-defined functions
    • Views
  • T-SQL Not Supported (v1)
    • Common Language Runtime (CLR)
    • Database file placement
    • Database mirroring
    • Distributed queries
    • Distributed transactions
    • Filegroup management
    • Full Text Search
    • Global temporary tables
    • Spatial data and indexes
    • SQL Server configuration options
    • SQL Server Service Broker
    • System tables
    • Trace Flags
  • Creating Objects in SQL Azure
    Demo
  • Migrating Databases
    • “Just change the connection string” * once database is migrated
    • Generate script wizard from SSMS currently creates unsupported DDL
    • SQL Server Management Studio 2008 R2 has increased support for SQL Azure
    • Migrating Databases to SQL Azure HOL in the Windows Azure Platform Training Kit
  • Migrating Database Schemas to SQL Azure
    Demo
  • Moving data
    • Scripted INSERT statements
    • SQL Server Integration Services
    • Available in Developer and Trial editions
    • Use ADO.NET endpoint
    • BCP (bulk copy) is supported
    • DataSync will enable Microsoft Sync Framework
  • Moving Data into SQL Azure with SSIS
    Demo
  • Special Considerations: Database Size
    • 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
    • See scale out SQL Azure content within the Windows Azure Platform Training Kit for additional guidance
  • Special Considerations: Throttling
    MSDN
    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
  • Special Considerations: PHP
    • SQL Azure does NOT support Multiple Active Result Sets (MARS)
    • 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
    Demo
  • Learning SQL Azure
    • www.azure.com
    • Hands on Labs in Windows Azure Platform Training Kit
    • Follow the team bloggers
  • Want to Know More?
    • Windows Azure Platformhttp://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 Bloghttp://blogs.msdn.com/ssds
  • 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: www.sqlpass.org
    • Go to local PASS Chapter meetings
    Visit the PASS Chapter booth to learn about upcoming local events, or visit www.sqlpass.org/PASSChapters
    • No local Chapter? Start a Chapter with support and resources from PASS
    www.sqlpass.org/getchapterinfo
    • Attend PASS Summit 2010
    World's largest and best conference for SQL Server and BI technical education www.sqlpass.org/na2010
    Follow / Join us online: Twitter @sqlpass #sqlpass, LinkedIn group, Facebook group
  • Q & A
  • © 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.