Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP Case Study What is “the cloud” [x] as a Service SaaS PaaS IaaS Windows Azure, On One Slide Why the Cloud “Azure” Windows Azure, In One Picture Business Portal Developer Portal … … REST MS Datacenters … Compute Cluster Service Management Service Storage Cluster REST Reporting Business Analytics Data Sync SQL Azure Database Overview L SQL Azure Network Topology Applications use standard SQL client libraries: ODBC, ADO.Net, PHP, … Application Internet Azure Cloud TDS (tcp) Security Boundary LB Load balancer forwards ‘sticky’ sessions to TDS protocol tier TDS (tcp) Gateway Gateway Gateway Gateway Gateway Gateway Gateway: TDS protocol gateway, enforces AUTHN/AUTHZ policy; proxy to CloudDB TDS (tcp) SQL SQL SQL SQL Scalability and Availability: Fabric, Failover, Replication, and Load balancing Demo Overview SQL Azure Service Provisioning > > Account > > > > Server > > > Database > > Case Study Synchronization Example Sync Framework Customers Credit Suisse Relational PIM Data SyncToy Files SharePoint 2010 Lists SharePoint Workspace 2010 (Groove) Favorites Relational PricewaterhouseCoopers Summary Offline-Capable Cached Mode Applications Browser Clients On-Premises Applications Sync SQL Azure Platform BusinesstoBusiness SyncFX Application Components Configure Sync Application Configure Sync() Sync Orchestrator Store Sync Provider Sync Provider Sync Runtime Sync Runtime Store >>FUTURE Trustworthy Collaboration Example System Administrators Sensitive Business Data Audit logs Auditors Capability Generation Center Publishers Data Owners Collaboration with sensitive data Subscribers Case Study “Web Role” “Worker Role” Web vs Worker Role Storage Fundamental Storage Concepts − Tables − Queues − Blobs − Drives (new) 31 Queues Queue Summary Blobs Blob Features and Functions − PutBlob, GetBlob, DeleteBlob − CopyBlob, SnapshotBlob, LeaseBlob Table Storage Concepts Accounts Tables Entities 37 Windows Azure Tables 38 Development Fabric and Storage Roles Case Study Service Bus – 3 Patterns Service Remoting • RPC-style, Request/Response or Duplex Eventing • One-way communication • Unicast or Multicast Tunneling • Full-Duplex Tunneling of Raw Streams • TCP, Pipes, Proxies, … Access Control Services How It Works 3. Map input claims 1. Define access control rules for a customer 6.Token Validated 0. Secret exchange; periodically refreshed litware REST Web Service to output claims based on access control rules litware ACS Service Namespace 5. Send Message w/ Access Token Customer Case Study Is It For Me? “Growing Fast“ Compute Compute “On and Off “ Inactivity Period Time Time • • • On & off workloads (e.g. batch job) Over provisioned capacity is wasted Time to market can be cumbersome • • • Successful services needs to grow/scale Keeping up w/ growth is big IT challenge Complex lead time for deployment “Unpredictable Bursting“ Compute Compute “Predictable Bursting“ Average Usage Average Usage Time • • • Average Usage Usage Average Unexpected/unplanned peak in demand Sudden spike impacts performance Can’t over provision for extreme cases Time • • • Services with micro seasonality trends Peaks due to periodic increased demand IT complexity and wasted capacity TicketDirect Architecture Windows Azure Roles Client Applications Service Bus Dynamic Worker (tasks uploaded as blobs) http:// TicketDirect .* Distributed Cache Worker Windows Azure Storage ------ Tables to Blobs to store web record --and worker --- server & role partition ---resources information Partitioner Worker WCF Queues for communication between clients and roles Castellan.Azure • Box Office sales • Ticket Printing • System Administration • Venue/Event Management • Partitioning On Premises SQL Server Castellan Venue SQL Azure Castellan Castellan Castellan Venue Venue DB 1 Partition(s) DB’s Castellan Castellan Venue Venue DB 2 Partition(s) DB’s Castellan Castellan Venue Venue DBN Partition(s) DB’s One application DB, many venue DB’s – each partitioned in to many parts (40+) ... Castellan.old (VB6) Some Other Possible Examples Windows Azure Platform Consumption Prices $0.12/hour + Variable Instance Sizes $0.15 GB/month $0.01/10K transactions Per Message Operation $0.015/10k Message Operations $9.99/month (up to 1 GB DB/month) Per Message Operation $0.015/10k Message Operations $99.99/month (up to 10 GB DB/month) Windows Azure Instance Sizes $0.12 $0.24 $0.48 $0.96 Unit of Compute Defined 1 x 1.6Ghz 2 x 1.6Ghz 4 x 1.6Ghz 8 x 1.6Ghz 1.75 GB memory 3.5 GB memory 7.0 GB memory 14 GB memory 250 GB storage (instance storage) 500 GB storage (instance storage) 1000 GB storage (instance storage) 2000 GB (instance storage) Windows Azure Platform Data Transfer North America Region N. Central – US Sub-region Europe Region Asia Pacific Region N. Europe Sub-region W. Europe Sub-region E. Asia Sub-region S. Central - US Sub-region S.E. Asia Sub-region On-board to Windows Azure platform at no charge Off peak times defined as: 10pm-6am Mon-Fri & from 10pm-Fri to 6am-Mon for weekends in each designated regional time zones below North America PST = UTC-8 Europe WET = UTC Asia Pacific SST = UTC+8 Quiz Time Resources msdn.com microsoft.com/learning www.azure.com http://msdn.microsoft.com/azure http://msdn.microsoft.com/en-us/azure/dd439432.aspx We Want To Hear From You! blogs.msdn.com/southafrica twitter.com/msdevsa Microsoft Devs SA Win a Wireless Entertainment Desktop 8000! Complete your evaluation and enter to win! Win an Xbox 360 with DVT! Be a winner with DVT Enter your details at the DVT stand and you could WIN an XBOX 360 ARCADE! Submit an Entry Form at the BB&D Stand and Win*! A Dell Netbook valued at R4,000 * Terms & conditions apply