Presentation is loading. Please wait.

Presentation is loading. Please wait.

Training Workshop Windows Azure Platform. Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do.

Similar presentations

Presentation on theme: "Training Workshop Windows Azure Platform. Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do."— Presentation transcript:

1 Training Workshop Windows Azure Platform

2 Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do you want the audience to take away): Understand the value of scaling out with SQL Azure Understand the key decision factors for determining how to scale out Understand the basics of database sharding Presentation Outline (including demos):

3 3 Scaling Out with SQL Azure Name Title Organization Email

4 Business Analytics Reporting Data Sync The Power of the SQL Data Platform in the cloud Leverages existing skills and rich tooling ecosystem Enables database applications with new, “cloud” capabilities

5 SQL Azure Database 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” MS Datacenter MS Datacenter Windows Azure Compute Windows Azure Compute Browser SOAP/REST HTTP/S T-SQL (TDS) App Code (ASP.NET) SQL Server Report Server (on-premises) ADO.NET/REST - EDM HTTP/S - AD Federation (LiveId /AppFabric AC) SQL Azure Database SQL Azure Database T-SQL (TDS) Relational database service SQL Server technology foundation Highly symmetrical Highly scaled Highly secure Database “as a Service” – beyond hosting Highly scaled out relational database as a service

6 6 SQL Azure Network Topology Application Load Balancer TDS (tcp:1433) Applications use standard SQL client libraries: ODBC, ADO.Net, … Load balancer forwards ‘sticky’ sessions to TDS protocol tier Data Node Gateway Scalability and Availability: Fabric, Failover, Replication and Load balancing

7 7 Database Replicas Replica 1 Replica 2 Replica 3 DB Replica 4 !

8 8 SQL Azure Deployment SQL Azure TDS Gateway SQL Azure TDS Gateway DB Script

9 9 SQL Azure Accessing databases Your App Change Connection String SQL Azure TDS Gateway SQL Azure TDS Gateway

10 10 Database Size Maximum single database size is currently 10GB 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

11 11 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

12 12 Why scale out? Increased throughput for massive load Increased relational database storage volume Scale out on low cost commodity hardware

13 13 Scaling Out 1 x 10GB database 10 x 1GB databases

14 14 Sharding basics Several databases are used to store a portion of the application’s data The same schema is used across all databases Data is horizontally partitioned among databases (shards) based on certain criteria (i.e.: geographical info, customer)

15 15 Scale Out Considerations Database sharding causes complexity Can I separate my database per tenant? Partitioning strategy is highly dependant on scenario Is there natural partitioning that facilitates use cases? Uniform partitioning via round-robin (modulo) can be highest performance

16 16 Analyzing the sharding model Primary Shard Shard Child Global Global Country, OrderDate ContactID could be the partition field

17 17 Partitioning Your Data

18 18 Getting your data back out Fan-out queries across included partitions Use parallelism if possible Combine results in memory Handle aggregates, etc

19 19 Inserting data Global data Insert into every partition Handle transaction logic in application Partition specific data Lookup correct partition Insert using same paradigm as single database

20 20 Querying and Inserting Data into Sharded Databases

21 21 The future Increased support for partitioning and fan-out Robust guidance from Microsoft Patterns & Practices Scale Out with Entity Framework Proof Of Concept

22 22 Scale Out with the Entity Framework (POC)

23 23 Want to Know More? Windows Azure Platform Windows Azure Platform Training Kit 13E88F8-5966-4A83-B309-53B7B77EDF78&displaylang=en 13E88F8-5966-4A83-B309-53B7B77EDF78&displaylang=en MSDN Development Center Team Blog

24 24

25 25 © 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.

Download ppt "Training Workshop Windows Azure Platform. Presentation Outline (hidden slide): Technical Level: 200 Intended Audience: Developers Objectives (what do."

Similar presentations

Ads by Google