the windows azure platform: a perspectivedownload.microsoft.com/documents/uk/msdn/the... · hosting...
TRANSCRIPT
The Windows Azure Platform:
A Perspective
David Chappell
Chappell & Associates
Copyright © 2009 David Chappell
Goals
Describe the Windows Azure platform
Look at some typical scenarios for using the Windows Azure platform
Compare the Windows Azure platform with other cloud platforms
An Overview of the Windows Azure
Platform
The Windows Azure PlatformFormerly known as the Azure Services Platform
SQL Azure
Windows Azure
Cloud
Applications
.NET Services
On-Premises
Applications
OthersWindows
…
Windows AzureAn illustration
Fabric
Compute Storage
Config
Application
SQL Azure
Windows Azure
Applications
Applications
.NET Services
OthersWindows
Fabric
Storage
VMs VMs
Windows Azure Compute Service A closer look
…
Load Balancer
HTTP/
HTTPS
IIS
Web
Role
Instance
Worker
Role
Instance
Compute
Application
AgentAgent
Fabric
Compute
Windows Azure Storage ServiceA closer look
Blobs Tables
Storage
HTTP/
HTTPS
Queues
Fabric
Controller
Fabric
Agent
Storage
Fabric
Agent
Web Role
Instance
Worker Role
Instance
Windows Azure FabricAn illustration
SQL AzureFormerly known as SQL Services
Windows Azure
Applications
Applications
.NET Services
OthersWindows
SQL Azure Database
SQL Azure
Others (Future)
SQL Azure
SQL Azure Database
Others (Future)
SQL Azure DatabaseAn Illustration
Database
Database
Database
SQL Azure Database
TDS
Application
Database
Database
Database
Application
Application
Database
SQL Azure Database
SQL Azure DatabaseUsing one or multiple databases
Max database
size is 10 GB
.NET ServicesInfrastructure in the cloud
.NET Services
SQL Azure
Windows Azure
Applications
Applications
OthersWindows
.NET Services
?
Service Bus
Access Control
.NET Services
Service Bus
The problem: Exposing internal applications on the Internet isn’t easy
– Network address translation (NAT) and firewalls get in the way
The solution:
– Service Bus provides a cloud-based intermediary between clients and internal applications
– It also provides a service registry that clients can use to find the services they need
Access Control
Service Bus
Service Bus
Registry
Endpoints
Organization YOrganization X
Application Application
Illustrating Service Bus
2) Discover endpoints
1) Register endpoints
3) Access application
Windows Azure Platform Pricing (1)
Windows Azure
– Compute: $0.12/hour for each VM instance
– Storage:
• Data: $0.15/GB per month (tables, blobs)
• Access: $0.01/10,000 operations (tables, blobs, queues)
– Bandwidth: $0.10/GB in, $0.15/GB out
.NET Services
– Messages: $0.15/100,000 message operations
• Includes Service Bus messages and Access Control tokens
– Bandwidth: $0.10/GB in, $0.15/GB out
Windows Azure Platform Pricing (2)
SQL Azure Database
– Web Edition
• Data: $9.99/month for a database up to 1 GB
• Bandwidth: $0.10/GB in, $0.15/GB out
– Business Edition
• Data: $99.99/month for a database up to 10 GB
• Bandwidth: $0.10/GB in, $0.15/GB out
Using the Windows Azure
Platform: Scenarios
Applying Azure (1)Some characteristics of Azure-appropriate applications
Apps that need massive scale
Apps that need high reliability
Apps with variable load
Apps with a short or unpredictable lifetime
Applying Azure (2)Some characteristics of Azure-appropriate applications
Apps created by start-ups
– And internal start-ups
Apps that don’t fit well in an organization’s data center
– A firm with no data center
– Joint ventures
– A business unit that wishes to avoid its IT department
Apps that can benefit from external storage
Blobs Tables
Building on AzureA non-Azure app using Windows Azure storage
SQL Azure
On-Premises
or Hosted
Application
Web Role
Instance
Tables
Building on Azure A massively scalable web app exposed on the public Internet
Users
BlobsQueuesTables
Users
Worker Role
Instance
Web Role
Instance
Building on Azure A massively scalable web app with background processing
Web Role
Instance
SQL Azure
Users
Building on Azure A web app with relational storage
Web Role
Instance
SQL Azure
Users
Building on Azure A web app using cloud and on-premises data
Service Bus
On-premises
Database
User
Blobs
Web Role
Instance
Queues
Worker Role
Instance
Building on Azure A parallel processing application
Usage ScenariosISV (1)
ISV uses Windows Azure platform storage
– Example: Blobs for serving up videos
ISV builds a shared multi-tenant app running on Windows Azure, with usage-based pricing
– This is commonly called Software as a Service (SaaS)
– The customer pays the ISV, and the ISV pays Microsoft for Azure usage
Usage ScenariosISV (2)
ISV builds a single-tenant app for Windows Azure, then licenses copies to its customers
– The customer runs the app on Azure and pays Microsoft directly for the costs of running the app
A start-up builds a Web 2.0 application
– It can fail fast or scale fast
Usage ScenariosCustom software development firm
Firm builds a custom Windows Azure app for a client, and the client manages the app
– The client pays Microsoft directly for Windows Azure services
Firm builds a custom Windows Azure app for a client, then manages the app for the client
– The client pays the firm, and the firm pays Microsoft for the costs of Azure usage
Usage ScenariosEnterprise
Enterprise uses Windows Azure platform storage
– Example: Blobs for archiving data
– Example: SQL Azure Database for sharing data
Enterprise creates a customer-facing web app
– Perhaps connecting to on-premises data or apps via Service Bus
Enterprise builds a new enterprise application on Windows Azure and SQL Azure
The Windows Azure Platform and
Its Competitors
Hosting vs. the Windows Azure PlatformA comparison
Advantages of dedicated hosting
– Allows full control
– Resource costs might be lower
Advantages of Windows Azure
– No lead time and no commitment
– Admin costs might be lower
– Can grow and shrink resources more quickly
– Provides services designed for high reliability, e.g., the Fabric, built-in data replication
– Provides services designed for high scale, e.g., Windows Azure Storage tables
EC2 VM
Amazon Web Services
Linux or Windows
Amazon Web Services (AWS)
AWS Elastic Compute Cloud (EC2) provides virtual machines running Linux or Windows
Windows Azure Fabric
VM
Windows Server 2008
Windows Azure Platform
Your
DBMS
Windows Azure Storage
SQL Azure DatabaseYour
Application
AWS Storage
Your
Application
Amazon Web Services Windows Azure Platform
Blob storageSimple Storage Service
(S3)
Windows Azure Storage
Blobs
Scale-out storage SimpleDBWindows Azure Storage
Tables
Amazon Web Services Comparing storage options
Queues Simple Queue Service
(SQS)
Windows Azure Storage
Queues
Relational storage RDBMS running in a VM SQL Azure
Datastore, Task Lists
Google AppEngine
AppEngine runs Python and Java applications
Google AppEngine
Python/Java Runtime
Windows Azure Fabric
Windows Azure Platform
Windows Azure Storage
SQL Azure Database
Windows Server 2008
Worker
Role
Web
Role
Task
App
Google AppEngine Windows Azure Platform
Blob storage Datastore (Blob type)Windows Azure Storage
Blobs
Scale-out storage DatastoreWindows Azure Storage
Tables
Google AppEngineComparing storage options
Queues Task Queues Windows Azure Storage
Queues
Relational storage None SQL Azure
Force.com Database
Force.com and Windows Azure
Salesforce.com’s Force.com focuses on data-driven enterprise applications
Force.com
Force.com Runtime
Enterprise
Application
Windows Azure Fabric
Windows Azure Platform
Windows Azure Storage
SQL Azure Database
Windows Server 2008
Worker
Role
Web
Role
Conclusions
Cloud platforms are here
– Microsoft is placing a big bet with the Windows Azure platform
A new world is unfolding
– Prepare to be part of it
For Further Reading
Introducing the Windows Azure Platform: An Early Look at Windows Azure, SQL Azure, and .NET Services
http://go.microsoft.com/fwlink/?LinkId=158011
Introducing Windows Azure
http://go.microsoft.com/fwlink/?LinkId=158011
Windows Azure and ISVs: A Guide for Decision Makers
http://go.microsoft.com/fwlink/?LinkID=157857
About the Speaker
David Chappell is Principal of Chappell & Associates (www.davidchappell.com) in San Francisco, California. Through his speaking, writing, and consulting, he helps people around the world understand, use, and make better decisions about new technology. David has been the keynote speaker for many events and conferences on five continents, and his seminars have been attended by tens of thousands of IT decision makers, architects, and developers in forty countries. His books have been published in a dozen languages and used regularly in courses at MIT, ETH Zurich, and other universities. In his consulting practice, he has helped clients such as Hewlett-Packard, IBM, Microsoft, Stanford University, and Target Corporation adopt new technologies, market new products, train their sales staffs, and create business plans. Earlier in his career, David wrote networking software, chaired a U.S. national standards working group, and played keyboards with the Peabody-award-winning Children’s Radio Theater. He holds a B.S. in Economics and an M.S. in Computer Science, both from the University of Wisconsin-Madison.
Copyright © 2009 David Chappell
Chappell & Associates
www.davidchappell.comSOAP/WS-*