Your SlideShare is downloading. ×
0
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
Architecting Solutions Leveraging The Cloud
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

Architecting Solutions Leveraging The Cloud

2,153

Published on

Discussion on how to design next-generation applications leveraging cloud platforms. Deck delivered at the 2009Q4 Microsoft Architect Council events

Discussion on how to design next-generation applications leveraging cloud platforms. Deck delivered at the 2009Q4 Microsoft Architect Council events

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,153
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
210
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Source: Jeffrey Dean and Sanjay Ghemawat, Google
  • Source: John Rothschild, VP of Technology, Facebook
  • Transcript

    • 1. Architecting Solutions Leveraging the Cloud
      David Chou
      david.chou@microsoft.com
      blogs.msdn.com/dachou
    • 2. Application Models
      Web Hosting
      • Massive scale infrastructure
      • 3. Burst & overflow capacity
      • 4. Temporary, ad-hoc sites
      Application Hosting
      • Hybrid applications
      • 5. Composite applications
      • 6. Automated agents / jobs
      Media Hosting & Processing
      • CGI rendering
      • 7. Content transcoding
      • 8. Media streaming
      Distributed Storage
      • External backup and storage
      High Performance Computing
      • Parallel & distributed processing
      • 9. Massive modeling & simulation
      • 10. Advanced analytics
      Information Sharing
      • Reference data
      • 11. Common data repositories
      • 12. Knowledge discovery & mgmt
      Collaborative Processes
      • Multi-enterprise integration
      • 13. B2B& e-commerce
      • 14. Supply chain management
      • 15. Health & life sciences
      • 16. Domain-specific services
    • Case Study
      About
      • kbb.com, established 1995; vehicle data aggregation and publication service provider
      • 17. 14M UU/month
      • 18. Multiple physical data centers
      Solution
      • Cloud-based overflow capacity
      • 19. Windows Azure Web Role
      • 20. SQL Azure database
      Benefits
      • ~$100,000 savings / year in hosting costs alone
      • 21. Retire failover data center (27 Web servers & 9 SQL Servers)
      • 22. <1% code changes needed for application compatibility
      • 23. 6 weeks down to 6 minutes to add server capacity
    • Case Study
      About
      • Legacy call-center application for order processing and fulfillment
      • 24. On-premise systems integration with ERP and master data management
      Solution
      • Cloud-based Web-enablement of on-premise assets
      • 25. Windows Azure Web Role
      • 26. Web services integration via on-premise ESB endpoints
      Benefits
      • “In a matter of weeks, we were able to see the fruits of our efforts very rapidly.“ – Kevin Flowers, Dir. Enabling Technologies
      • 27. “The resilience and reliability of this platform is some of the benefits that we are seeing.” – EsatSezer, SVP & CIO
    • Case Study
      About
      • Complex Monte Carlo simulations to calculate financial risks
      • 28. Daily risk analysis load equivalent to processing 4 trillion US Stocks
      • 29. Existing on-premise HPC implementation
      Solution
      • Massively scalable compute leveraging cloud capacity
      • 30. Deployed on 2K Windows Azure instances; 10K+ in 2010
      • 31. Windows Azure Worker Role
      • 32. Windows Azure Blob and Queue
      • 33. AppFabric Service Bus
      Benefits
      • Elastic scaling to effectively meet customer demands
      • 34. Turning elements of its peak load infrastructure from a fixed cost to a variable cost
    • Case Study
      About
      • Web-based ERP and accounting software to help mid-sized businesses automate customized business processes
      • 35. Business needs:
      Launch a SaaSoffering which includes on demand infrastructure and billing
      Maintain a 24/7 production environment
      Minimize development efforts for both on-premise and SaaS offerings
      • Technical implementation
      Web – IIS 7, ASP.NET 3.5
      Server – SQL Server 2005/2008, Windows Server 2003/2008
      Tools – Visual Studio 2008, .NET Framework 3.5
      Solution
      • Cloud-based SaaS deployment
      • 36. Windows Azure
      • 37. SQL Azure
      Benefits
      • Application migration completed in 3 weeks with 2 developers
      • 38. Customers can implement solution without investing in on-premise infrastructure; can save ~$8,000 for startup costs
    • Case Study
      About
      • Online service providing productivity tools to help students conduct research, write better papers, and get help on-demand
      • 39. Technical implementation
      Client – Windows Mobile 6
      Web – IIS 6, ASP.NET 3.5
      Server – Windows Server 2003, SQL Server 2005
      Services – Bing Search, Windows Live Messenger Web Toolkit
      Tools – Visual Studio 2008, .NET Framework 3.5, .NET Compact Framework 3.5
      Solution
      • Hybrid cloud application
      • 40. Cloud-based extensions and services mash-ups with on-premise implementation
      • 41. Windows Azure application
      • 42. .NET Services service bus, access control, & workflows
      Benefits
      • $500,000 savings in dev. costs
      • 43. 40% faster time-to-market
      • 44. More effective development
      • 45. Cost-effective scalability and enhanced availability
    • Application Patterns
      Cloud Web Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Cloud Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application
      Data
      Reference Data
    • 46. Application Patterns
      Composite Services Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 47. Application Patterns
      Cloud Agent Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 48. Application Patterns
      B2B Integration Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 49. Application Patterns
      Grid / Parallel Computing Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 50. Application Patterns
      Hybrid Enterprise Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 51. Internet-Scale Application
      2007 stats:
      +20 petabytes of data processed / day by +100K MapReduce jobs
      1 petabyte sort took ~6 hours on ~4K servers replicated onto ~48K disks
      +200 GFS clusters, each at 1-5K nodes, handling +5 petabytes of storage
      ~40 GB/sec aggregate read/write throughput across the cluster
      +500 servers for each search query &lt; 500ms
      Scaling the process:
      MapReduce: parallel processing framework
      BigTable: structured hash database
      Google File System: massively scalable distributed storage
    • 52. Internet-Scale Application
      2009 stats:
      +200B pageviews/month
      &gt;3.9T feed actions/day
      +300M active users
      &gt;1B chat mesgs/day
      100M search queries/day
      &gt;6B minutes spent/day (ranked #2 on Internet)
      +20B photos, +2B/month growth
      600,000 photos served / sec
      25TB log data / day processed thru Scribe
      120M queries /sec on memcache
      Scaling the “relational” data:
      Keeps data normalized, randomly distributed, accessed at high volumes
      Uses “shared nothing” architecture
    • 53. Internet-Scale Application Architecture
      Design
      • Horizontal scaling
      • 54. Service-oriented composition
      • 55. Eventual consistency
      • 56. Fault tolerant (expect failures)
      Security
      • Claims-based authentication & access control
      • 57. Federated identity
      • 58. Data encryption & key mgmt.
      Management
      • Policy-driven automation
      • 59. Aware of application lifecycles
      • 60. Handle dynamic data schema and configuration changes
      Data & Content
      • De-normalization
      • 61. Logical partitioning
      • 62. Distributed in-memory cache
      • 63. Diverse data storage options (persistent & transient, relational & unstructured, text & binary, read & write, etc.)
      Processes
      • Loosely coupled components
      • 64. Parallel & distributed processing
      • 65. Asynchronous distributed communication
      • 66. Idempotent (handle duplicity)
      • 67. Isolation (separation of concerns)
    • Thank you
      david.chou@microsoft.com
      blogs.msdn.com/dachou
      © 2009 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.

    ×