The document discusses different cloud computing models including Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). It provides examples of each layer including storage, servers, networking, operating systems, and applications. The document also outlines Microsoft's history with Azure including commercial availability and updates to Windows Azure and SQL Azure.
3. InfrastructureInfrastructure
as a Serviceas a Service
(IaaS)(IaaS)
Platform as aPlatform as a
Service (PaaS)Service (PaaS)
Software as aSoftware as a
Service (SaaS)Service (SaaS)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
4. Infrastructure asInfrastructure as
a Service (IaaS)a Service (IaaS)
Platform as aPlatform as a
Service (PaaS)Service (PaaS)
Software as aSoftware as a
Service (SaaS)Service (SaaS)
Storage
Servers
Networking
O/S
Middleware
Virtualization
Data
Applications
Runtime
StorageStorage
ServersServers
NetworkingNetworking
O/S
Middleware
Virtualization
Data
Applications
Runtime
Managedbyvendor
Managedbyvendor
StorageStorage
ServersServers
NetworkingNetworking
O/SO/S
MiddlewareMiddleware
VirtualizationVirtualization
Applications
RuntimeRuntime
Data
Managedbyvendor
StorageStorage
ServersServers
NetworkingNetworking
O/SO/S
MiddlewareMiddleware
VirtualizationVirtualization
ApplicationsApplications
RuntimeRuntime
DataData
5. Developer ExperienceDeveloper Experience
Use existing skills and tools.Use existing skills and tools.
Compute Storage Management Relational data Management Connectivity Access control
6. October 2008 June 2010November 2009
February
2010
• Updated Windows Azure CTP
• Announced VM Role, Project
Sydney, pricing and SLAs
• Enabled Full Trust & PHP,
Java, etc. applications
• Project “Dallas” CTP
• Windows Azure Update
• .NET Framework 4
• OS Versioning
• CDN
• SQL Azure Update
• 50GB databases
• Spatial data support
• DAC support
Windows Azure Platform
commercially available
• Announced the Windows
Azure Platform
• First CTP of Windows
Azure
Announced SQL
Azure Relational
Database
March
2009
7.
8.
9. The Business
Challenge
Bring in 500,000 new prospects into the Outback
Steakhouse customer database
Do it fast, build the solution in as little as a month
Use Facebook
Key
Constraints we
Had to Work
Within
Don’t want to use any formal outbound marketing
Have limited on-premise IT capacity to tap
Don’t want to purchase new infrastructure for a
marketing program
10. Use relational data to
“see” business
results
Offload async
processing from
Web site
Use a PaaS solution
to avoid
infrastructure hassles
Give an offer
worth signing up
for
… & capture the data
in Azure
Establish a
dialogue on & off
FB
Make the offer
store specific
… to drive traffic to
your bricks & mortar
Encourage people
to tell others
11. Give an offer
worth signing up
for
… & capture the data
in Azure
Establish a
dialogue on & off
FB
Make the offer
store specific
… to drive traffic to
your bricks & mortar
Encourage people
to tell others
Use relational data to
“see” business
results
Offload async
processing from Web
site
Why Azure?
Because you like being an IT
strategist, or a developer or
a marketer.
And you don’t want to be a
plumber, or a racker /
stacker.
Use a PaaS solution
to avoid infrastructure
hassles
12. Worker Role Tasks
Queue-based
InternetInternet
LBLB
Web Site
Web Role
Web Role
Web Role
Web Role
Web Role
Queue2Queue2
Worker 3
Worker 2
Worker 1Queue1Queue1
Queue3Queue3
Process
Queue2
Process
Queue2
Process
Queue1
Process
Queue1
Process
Queue3
Process
Queue3
Asynchronous
processing
Table Storage
SQL Data Synch
Email Verification
Campaign logic
Data Synch
Marketing
Reporting
14. The Solution
PaaS solution as there was neither budget nor
staffing capacity to stand up / manage new
infrastructure
Use compute to drive site, and SQL Azure for BI
Lessons
Highly repeatable once implemented
Handled scale well – recent promotion had 50,000
signups in one day
15. Azure Toolkit 1.0
http://facebookazuretoolkit.codeplex.com
Simplified Library for accessing Message Queues, Table
storage, and SQL Azure
ASP.NET Model View Controller (MVC) framework to
render a “view” of Facebook Markup Language
("FBML")
Ninject 2.0 (dependency injection)
Auto Mapper 1.0
Automated Continuous Integration Deployment scripts
Samples
www.microsoft.com/facebook
C# Toolkit 4.0 for .NET development
http://facebooksdk.codeplex.com/
Compatible with all Graph API and REST API Calls
Supports all forms of Facebook authentication:
Cookies, OAuth 2.0, Signed Requests
Samples Applications to get started quickly
Client authentication tool to get test access tokens
Get the case study here
16.
17. The Business
Challenge
Provide small and medium customers (restaurants, “mom & pop”
convenience stores, etc) a better way to place orders, via a Web
site instead of the current phone-based system
Order volume varies greatly across year (Super Bowl, etc)
Need to quickly scale their systems up or down based on need,
paying only for what they need, when they need it
No desire to build out the datacenters; would be idle in off-peak
times
Make CCE’s data & systems available to customers and partners
Key
Constraints we
Had to Work
Within
There are existing on-premise systems that any solution must
hook into, so a hybrid solution is required
Improve upon old system by dynamically displaying contact info,
customized list of products, promotions, & order history
18. The Solution
Web based solution
Uses hardware firewall to connect back to on-prem
Silverlight client communicated with Web services to
provide data & business logic from existing on-premise
systems
Results
An average of $15 million / day in orders is placed vs. old system
Able to quickly bring an app to market without incurring
hardware and support costs in their data centers
Scale out capability is already provided in Azure to support
future needs
Hybrid solution avoided rewriting the complex pricing logic or
impacting other existing ordering mechanisms
19.
20. The Business
Challenge
Record, track and report on non-emergency incidents
Handle address requests from large metro population
Disaster recovery important given it is a hurricane-
prone region
Key
Constraints we
Had to Work
Within
Very limited (and declining) IT budget
FY ‘09 to ‘10 Staff downsized by 32%; budget by 28%
Miami downtown “grows” from 400K to 1.2 million
between 9 to 5 Business Hours
New hardware procured only once ever 5 years
21. The
Solution
Geospatial data is stored in SQL Azure Spatial
Developed in Visual Studio 2010 as they can test the cloud solution on their local
desktop
Uses Bing Maps and other mapping technology and Azure compute
Solution is remote to Miami
Lessons
Speed / versatility – converted to hurricane disaster follow-up app in 3 hours
Pay as you go is HUGE – no need to over-invest
Blob storage holds deployment packages as a rudimentary source control for quick
deployment of time sensitive solutions like Damage Assessment Apps
Azure isolates apps from each other; they don’t interfere with each other, so
cleaner deployments and upgrades
No worry about apps breaking because someone “messed with the infrastructure”
Enterprise-class service for maintenance tasks without using your own precious
headcount
Integration with VS meant faster time to market and updates
22. http://miami.heygov.com
Get the case study here
Web based solution
No need to “manage the
infrastructure” as this is PaaS
Provides terrific transparency
to citizens
Call center volume has
dropped dramatically since
launch
New Windows Phone app
further extends the
experience
23.
24. The Business
Challenge
Mid-sized companies typically pay invoices manually
Print and mail checks
Payment to suppliers take several days to deliver and clear
Lots of inherent friction and potential human error
Costs much as $3 per invoice
Key
Constraints
Cannot fund implementations undertaken by large
enterprise due to complexity and cost
Large changes to existing processes not desirable
Ongoing costs must remain low
25. Customer Datcenter
Accy
System
NVoicePay
Client
“AP Assist”
NVoicePay’s B2B
Payment Network
Vendor
submits
invoice
Service Bus
WCF and SSL
NVoicePay
Datacenter
PCI
Compliant
Compute Blobs,
Tables & Queues
Relational data
Customer Portal Vendor Portal
InternetInternet
• 5 – 20X growth rate across the business5 – 20X growth rate across the business
• Expect 50K connections in next 12 monthsExpect 50K connections in next 12 months
• Customers save $25K - $250K on invoice processingCustomers save $25K - $250K on invoice processing
26. Our
Solution
Silverlight elevated trust PC experience (called “AP Assist”)
Client integrates to current ADP accounting system
Securely submit encrypted payment data to Azure Blob Storage
Retrieve payments from cloud-based “store and forward” architecture to to the
NVoicePay datacenter and process payments
Submit payments to First Data payment gateway
Overall solution took 6 months to develop
Expect to leverage minimum of 50k individual AppFabric Service Bus connections in CY11
Lessons
Put as much of your headcount as you can on developing IP
Cloud should never be an all-or-nothing proposition
Cloud can naturally augment current payment processes
Cloud fosters a fast time-to-market
Pay-as-you-go model limits risk and enhances agility, have gone from $0 to $50MM in 12 mos
Consume the cloud as the need arises
Individual customers save $25K-$250K/year on invoice processing, depending on size
Invoice costs fall from $3 per invoice to as little as a postage stamp
29. Join
BizSpark, for startups
The vibrant online community – http://channel9.msdn.com/azure
Azure user groups – http://www.azureusergroup.com
Also on Facebook – www.facebook.com/windowsazure
Get
Get an Azure account
Windows Azure Tools for Microsoft Visual Studio
Windows Azure Platform Training Kit
Interoperability tools
Microsoft Web Platform Installer
Learn
“What is the Windows Azure Platform?” 4 min video
Windows Azure Case Studies
Deploying a large scale app, Virtual Lab
Azure developer center
Using your MSDN Premium Benefits
Microsoft’s Datacenters
Security Talk Series
Watch session in the Professional Developers Conference site
30. Usage
Compute Time
Average
Inactivity
Period
““On and Off “On and Off “
Compute
Time
““(Un)predictable(Un)predictable
Bursting“Bursting“
Average Usage
Average Usage
Compute
Time
““Growing Fast“Growing Fast“
Compute
Time
Average Usage
““Business CriticalBusiness Critical
LOB“LOB“
31. •Exploring how to address
needs of small and large
production houses using its
industry standard solution
•Rendering: Toy Story 3D has
290k frames, 8 hours to
render each frame using 1
processor; 272 years
•Migrated C++ solution
•Customers decide scale out
based on time, cost, quality
needs
32. •Needed to scale up
quickly to meet
demands of its high-
traffic Web site,
reduce dependency on
costly hardware.
•Azure is saving $100k
annually, giving
freedom to focus on,
and deploy, new Web
site features.
Viral is geometric, exponential
Top half:
In return for the coupon, people will write this on their wall (which piques their friends’ interest) and tell their friends
Bottom half:
Thuzi used MVC to render FBML pages, hosted on Windows Azure using Web roles and Worker roles (for asynchronous processing to boost performance of the Web site)
Needed relational database for higher end visualizing of the results data (in addition to tables and queues)
Viral is geometric, exponential
Top half:
In return for the coupon, people will write this on their wall (which piques their friends’ interest) and tell their friends
Bottom half:
Thuzi used MVC to render FBML pages, hosted on Windows Azure using Web roles and Worker roles (for asynchronous processing to boost performance of the Web site)
Needed relational database for higher end visualizing of the results data (in addition to tables and queues)
5 Web sites – primarily the Facebook app but also for Web services like email verification
3 worker threads
Marketing: social graphing, stats, demographics to point to closest restaurants to create store-specific coupons
NOTE: scalable, but simple
Only 3 worker roles as there was not as much super time sensitive transactions, example of asynchronous model or example
Started with 20k fans
Leveraged Facebook APIs to drive viral elements
350000
12 days
29166.67 per day
1215.278 per hour
20.25463 per second
Here is all the bits and runtimes you need
Just add your own window dressing
MVC lets you program in Facebook
Dependency Injection to resolve dependencies in external components to help in unit tests