0
SESSION CODE: Thur 16:15<br />A Lap Around the Azure Platform<br />David Gristwoood<br />Application Architect<br />Micros...
Many Screens and a Cloud<br />
The Azure Philosophy<br />
Azure is about Scale<br /><ul><li>Azure is designed from the ground up for true Internet scale
Global presence
Ride the “network effect”
LinkedIn: 16 months for first million users, 11 days for most recent million
Facebook:  5 years to hit 250m users, 8 months to double
Scale up and scale down
Supports the “Scale Fast, Fail Fast” model</li></ul>www.flickr.com/photos/januszbc/1776184496<br />
Characteristics of Azure Applications<br />“Scale & Elasticity” <br /><ul><li>Need massive scale
Need high reliability
Have variable load
Have short or unpredictable lifetime
Concert ticket sales</li></ul>http://www.flickr.com/photos/39919537@N06/3666813048<br />
Helps Your Systems Scale<br /><ul><li>Most architecture is hidden inside code
Azure encourages you to define your application into constituent parts
Azure can scale the parts of your application as appropriate</li></ul>www.flickr.com/photos/39818355@N00/2128626176<br />
Flexible Architecture <br /><ul><li>Systems evolve over time
Cloud is not an “all or nothing” proposition
Azure makes it easier to extend to the cloud</li></ul>www.flickr.com/photos/tomkpunkt/3695066577<br />
Natural Platform Evolution<br /><ul><li>Windows Server 2008
Virtualisation
Windows Services, such as IIS, logging, diagnostics, etc
Visual Studio & .NET, ADO.NET, WCF Data Services, MVC, etc</li></li></ul><li>Flexible Business Model<br /><ul><li>No up fr...
Pay as you go costing model
Ideal in current economical climate </li></ul>www.flickr.com/photos/cleebster/2508660124<br />
The Big Picture<br />
The Azure PlatformThe Big Picture<br />AppFabric<br />SQL Azure<br />Applications<br />Windows Azure<br />Applications<br ...
Application<br /> Compute<br />Storage<br />Fabric<br />Config<br />AppFabric<br />Applications<br />SQL Azure<br />Window...
Azure Building Blocks<br />
Windows Azure Platform for Application Developers<br />Code<br />Software Development Kit<br />Portal<br />Data<br />Relat...
Software Development Kit (SDK)<br />Local Machine<br />Windows Azure Simulation Environment <br />Development Storage<br /...
Azure Compute Building Blocks<br />Worker Role<br />Web Role<br />System Host<br />IIS Host<br />Your Code<br />Your Code<...
Windows Azure Roles<br />Your role class typically derives from RoleEntryPoint represents role<br />Do initialization in O...
Demo #1 Azure Compute<br />
Azure Storage Building Blocks<br />Storage<br />Queue<br />Blobs &Drives<br />Account<br />Tables<br />
Windows Azure Blobs<br />Provide simple interface for storing named files along with metadata for the file<br />Blobs<br /...
Windows Azure Blobfeatures<br />REST based API<br />myaccount.blob.core.windows.net/mycontainer/myblob<br />PutBlob,  GetB...
Windows Azure Drives<br />Page Blob formatted as a NTFS single volume Virtual Hard Drive (VHD)<br />NTFS APIs providing du...
Windows Azure Tables<br />Structured storage via entities, containing sets of properties<br />Entities<br />Tables<br />Ge...
Windows Azure Tables<br />Provides Massively Scalable Structured Storage<br />Billions of entities (rows) and TBs of data<...
Windows Azure Tables<br />MyTable1<br />Entity: Sports Car<br />Entity: Car<br />Entity: Customer<br />
Table Partitions and Rows<br />
Windows Azure Queues<br />Provide reliable storage and delivery of messages<br />Messages<br />Queues<br />“Body1”<br />“B...
Common Azure Pattern<br />Worker Role<br />Web Role<br />Queue<br />Storage<br />Blob<br />Storage<br />
Demo #2 Azure Storage<br />
Upcoming SlideShare
Loading in...5
×

A Lap Around Azure

4,571

Published on

My "A Lap Around Azure" presentation from the Microsoft TechDays event in London on 15th April 2010

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,571
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
123
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • WA - £56 per month for 1 node, which is £637 per yearSA – 20pence per day*Approximate – lots of assumptions, blah blah
  • Transcript of "A Lap Around Azure"

    1. 1. SESSION CODE: Thur 16:15<br />A Lap Around the Azure Platform<br />David Gristwoood<br />Application Architect<br />Microsoft<br />blogs.msdn.com/david_gristwood<br />@ScroffTheBad<br />
    2. 2. Many Screens and a Cloud<br />
    3. 3. The Azure Philosophy<br />
    4. 4. Azure is about Scale<br /><ul><li>Azure is designed from the ground up for true Internet scale
    5. 5. Global presence
    6. 6. Ride the “network effect”
    7. 7. LinkedIn: 16 months for first million users, 11 days for most recent million
    8. 8. Facebook: 5 years to hit 250m users, 8 months to double
    9. 9. Scale up and scale down
    10. 10. Supports the “Scale Fast, Fail Fast” model</li></ul>www.flickr.com/photos/januszbc/1776184496<br />
    11. 11. Characteristics of Azure Applications<br />“Scale & Elasticity” <br /><ul><li>Need massive scale
    12. 12. Need high reliability
    13. 13. Have variable load
    14. 14. Have short or unpredictable lifetime
    15. 15. Concert ticket sales</li></ul>http://www.flickr.com/photos/39919537@N06/3666813048<br />
    16. 16. Helps Your Systems Scale<br /><ul><li>Most architecture is hidden inside code
    17. 17. Azure encourages you to define your application into constituent parts
    18. 18. Azure can scale the parts of your application as appropriate</li></ul>www.flickr.com/photos/39818355@N00/2128626176<br />
    19. 19. Flexible Architecture <br /><ul><li>Systems evolve over time
    20. 20. Cloud is not an “all or nothing” proposition
    21. 21. Azure makes it easier to extend to the cloud</li></ul>www.flickr.com/photos/tomkpunkt/3695066577<br />
    22. 22. Natural Platform Evolution<br /><ul><li>Windows Server 2008
    23. 23. Virtualisation
    24. 24. Windows Services, such as IIS, logging, diagnostics, etc
    25. 25. Visual Studio & .NET, ADO.NET, WCF Data Services, MVC, etc</li></li></ul><li>Flexible Business Model<br /><ul><li>No up front hardware purchase
    26. 26. Pay as you go costing model
    27. 27. Ideal in current economical climate </li></ul>www.flickr.com/photos/cleebster/2508660124<br />
    28. 28. The Big Picture<br />
    29. 29. The Azure PlatformThe Big Picture<br />AppFabric<br />SQL Azure<br />Applications<br />Windows Azure<br />Applications<br />Others<br />Mobile<br />Desktop<br />Server<br />
    30. 30. Application<br /> Compute<br />Storage<br />Fabric<br />Config<br />AppFabric<br />Applications<br />SQL Azure<br />Windows Azure<br />Applications<br />Mobile<br />Desktop<br />Server<br />Others<br />
    31. 31. Azure Building Blocks<br />
    32. 32. Windows Azure Platform for Application Developers<br />Code<br />Software Development Kit<br />Portal<br />Data<br />Relational<br />Data<br />Api<br />Develop<br />Run<br />Deploy<br />
    33. 33. Software Development Kit (SDK)<br />Local Machine<br />Windows Azure Simulation Environment <br />Development Storage<br />SQL Server Express<br />Development Fabric<br />
    34. 34. Azure Compute Building Blocks<br />Worker Role<br />Web Role<br />System Host<br />IIS Host<br />Your Code<br />Your Code<br />
    35. 35. Windows Azure Roles<br />Your role class typically derives from RoleEntryPoint represents role<br />Do initialization in OnStart() <br />Do work in Run()<br />You call into RoleEnvironmentto enumerate roles, endpoints, etc<br />You get called in response to changes in the number of instances in the service<br />Can force restart<br />
    36. 36. Demo #1 Azure Compute<br />
    37. 37. Azure Storage Building Blocks<br />Storage<br />Queue<br />Blobs &Drives<br />Account<br />Tables<br />
    38. 38. Windows Azure Blobs<br />Provide simple interface for storing named files along with metadata for the file<br />Blobs<br />Containers<br />Photo1.png<br />Photo2.png<br />Pictures<br />Photo3.png<br />
    39. 39. Windows Azure Blobfeatures<br />REST based API<br />myaccount.blob.core.windows.net/mycontainer/myblob<br />PutBlob, GetBlob, DeleteBlob, CopyBlob, SnapshotBlob, LeaseBlob, etc<br />Block Blob for streaming + commit-based writes<br />Sequence of blocks, size limit 200GB per blob<br />Page Blob for random read/write<br />Array of pages, size limit 1TB per blob<br />
    40. 40. Windows Azure Drives<br />Page Blob formatted as a NTFS single volume Virtual Hard Drive (VHD)<br />NTFS APIs providing durable file storage<br />Drives can be up to 1TB, up to 16 can be mounted<br />Can upload VHD via Page Blob then mount<br />Offers<br />Ease migration of existing Windows applications to Azure<br />Durability and survival of data on application failover or hardware failure<br />
    41. 41. Windows Azure Tables<br />Structured storage via entities, containing sets of properties<br />Entities<br />Tables<br />Genre = …<br />Title = …<br />Movies<br />Genre = …<br />Title = …<br />Actors<br />Name = …<br />DOB = …<br />
    42. 42. Windows Azure Tables<br />Provides Massively Scalable Structured Storage<br />Billions of entities (rows) and TBs of data<br />Familiar and Easy to use API<br />WCF Data Services, LINQ<br />Each entity can have up to 255 properties<br />PartitionKey & RowKey as key and index<br />Timestamp for optimistic concurrency<br />No fixed schema for all other properties<br />Property is stored as a <name, typed value> pair<br />
    43. 43. Windows Azure Tables<br />MyTable1<br />Entity: Sports Car<br />Entity: Car<br />Entity: Customer<br />
    44. 44. Table Partitions and Rows<br />
    45. 45. Windows Azure Queues<br />Provide reliable storage and delivery of messages<br />Messages<br />Queues<br />“Body1”<br />“Body2”<br />ThumbnailJobs<br />“Body3”<br />
    46. 46. Common Azure Pattern<br />Worker Role<br />Web Role<br />Queue<br />Storage<br />Blob<br />Storage<br />
    47. 47. Demo #2 Azure Storage<br />
    48. 48. Azure Features<br />
    49. 49. Service Management API<br />Provide Lights-Out Service Management <br />Manage services programmatically via REST-based API<br />X509 client certificates for authentication <br />Viewing, creating, deleting, swapping, modifying configuration settings, etc on deployments <br />
    50. 50. Windows Azure Diagnostics<br />Cloud is much harder than single server<br />Dynamic environment, no local access<br />Azure Diagnostics built for monitoring & data collection<br />Focus on what to collect and when<br />Designed for Azure <br />Based on standard APIs<br />Traces, logs, crash dumps, IIS logs, perfcounters, ETW, etc<br />Upload to Azure storage as required<br />Logging & Diagnostics<br />
    51. 51. Service Management CmdLets<br />PowerShell cmdlets wrapping Azure Service Management and Diagnostics API <br />Simple to script out deployments, upgrades, scaling<br /><ul><li>Deploy new services
    52. 52. Upgrade services
    53. 53. Manage storage accounts
    54. 54. Transfer diagnostics information
    55. 55. etc</li></li></ul><li>Service Upgrade Models<br />Rolling upgrade (aka “In-place”)<br />Roles are updated across update domains one at a time<br />Service remains available during upgrade<br />Real-time hot swap (aka “VIP Swap”)<br />Virtual IP swap between staging & production<br />Swap service endpoints of old/new version<br />Enables complex architectural changes<br />Planned downtime<br />Stop and replace service with new version<br />
    56. 56. Content Delivery Network (CDN) <br />Better performance and user experience by caching Azure blobs at strategically placed locations<br />18 locations globally (United States, Europe, Asia, Australia and South America) and growing <br />Content Delivery Network<br />Edge Location<br />Edge Location<br />pic1.jpg<br />Edge Location<br /> Windows Azure Blob Service<br />pic1.jpg<br />
    57. 57. SQL Azure<br />
    58. 58. SQL Azure & SQL Server<br />“Database as a Service”<br />Similarities<br />“Just change the connection string”<br />Scalable, reliable, robust, technology<br />Same SQL Server core database service & TDS<br />Differences<br />Supports subset of SQL Server 2008<br />Limited to 1Gb or 10Gb* database <br />Different pricing model<br />No Reporting Services, Analysis Services, etc<br />
    59. 59. SQL Azure Application Architectures<br />SQL Azure access from outside the cloud<br />SQL Azure access from <br />within the cloud<br />Application / Tools<br />Application/ Browser<br />SOAP/REST<br />HTTP/S<br />Web Role<br />Windows Azure<br />T-SQL (TDS)<br />T-SQL (TDS)<br />SQL Azure<br />SQL Azure<br />“Code Far”<br />“Code Near”<br />
    60. 60. SQL Azure Roadmap<br />Service Update 2<br />Multiple Active Result Sets (MARS)<br />Service Update 3<br />50 Gb Databases, Spatial support<br />Incubation<br />Project “Houston” – new SQL Azure web administration tool <br />Codename “Dallas” – information as a service<br />ODataservice on top of SQL Azure <br />
    61. 61. OData“ODBC for the Internet”<br /><ul><li>Uniform way of representing data, URL conventions and operations
    62. 62. Auto generation of OData for SQL Azure</li></ul>OData Consumers<br />Session<br />Reports<br />Dashboard<br />Forms<br />Apps<br />Browser<br />Open Data Protocol<br />Batching, Versions<br />Format<br />R/W<br />Query&[Uri]<br />+<br />+<br />+<br />Metadata<br />?<br />OData Producer<br />
    63. 63. Codename “Dallas”<br />Information as a Service<br />GIS/Spatial, traffic, film show times, crime, financial data, navigation, census data, housing, etc…<br />Commercial, official government, trusted public<br />Find, Subscribe, Interact<br />Atom 1.0, RAW<br />Data Consumer<br />Data Provider<br />
    64. 64. Demo #3 SQL Azure<br />
    65. 65. Windows Azure AppFabric<br />
    66. 66. “Infrastructure to help build and manage applications more easily” <br />Windows ServerAppFabric<br />Caching capabilities (was “Velocity”)<br />Workflow + service hosting (was “Dublin”)<br />Windows AzureAppFabric(was “.NET Services”) <br />Service Bus<br />Access Control<br />
    67. 67. AppFabric Service Bus<br />Exposing internal applications on the Internet isn’t easy<br />Network address translation (NAT) and firewalls get in the way<br />The Service Bus provides<br />Intermediary between clients and applications<br />Service registry that clients can use to find the services they need<br />
    68. 68. Wrap Up<br />
    69. 69. UK Azure Pricing – Standard Rates<br />AppFabric<br />Access Control <br />£1.2062 per 100,000 transactions* <br />Service Bus <br />£2.4184 per connection on a “pay-as-you-go” basis* <br />Pack of 5 connections £6.0307* <br />Pack of 25 connections £30.1535* <br />Pack of 100 connections £120.6139* <br />Pack of 500 connections £603.0695* <br />Data Transfers<br />North America and Europe regions <br />£0.0607 per GB in <br />£0.091 per GB out <br />Asia Pacific Region <br />£0.1819 per GB in <br />£0.2728 per GB out<br />Inbound data transfers during off-peak times through June 30, 2010 are at no charge.  Prices revert to our normal inbound data transfer rates after June 30, 2010 <br />Windows Azure<br />Compute <br />Small instance (default): £0.0728 per hour <br />Medium instance: £0.1455 per hour <br />Large instance: £0.291 per hour <br />Extra large instance: £0.5819 per hour <br />Storage <br />£0.091 per GB stored per month <br />£0.0061 per 10,000 storage transactions <br />Content Delivery Network (CDN) <br />Service currently available as a Community Technology Preview (CTP) at no charge <br />SQL Azure<br />Web Edition – Up to 1 GB relational database <br />£6.055 per database per month <br />Business Edition – Up to 10 GB relational database <br />£60.604 per database per month <br />£100 per month* - Highly Available 2 x Instance Web Application + 0.5TB data<br />20 pence per day* - Highly Available 1Gb SQL Server database <br />* Lots of assumptions and caveats<br />
    70. 70. Where next…<br />www.Azure.com – Official Azure site<br />bit.ly/landazure – UK Azure site<br />ukazure.ning.com– UK Fans of Azure<br />bit.ly/davidgristwood - My Blog<br />www.MyGreatWindowsAzureidea.com - User Voice Feedback<br /> Tonight’s Azure User Group Meeting<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×