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 Platform Formerly known as the Azure Services Platform Cloud Applications Windows Azure SQL Azure.NET Services On-Premises Applications Windows Others
Windows Azure An illustration Application Compute Storage Config Fabric SQL Azure Applications.NET Services Windows Azure Applications Windows Others
Windows Azure Compute Service A closer look HTTP/ HTTPS Load Balancer IIS VMs Web Role Instance VMs Worker Role Instance Agent Agent Application Compute Storage Fabric
Windows Azure Storage Service A closer look HTTP/ HTTPS Blobs Tables Queues Compute Fabric Storage
SQL Azure Formerly known as SQL Services SQL Azure SQL Azure Database Huron Data Sync Others (Future) SQL Azure Applications.NET Services Windows Azure Applications Windows Others
SQL Azure Database An Illustration SQL Azure Database TDS Database Database Database SQL Azure Database Huron Data Sync Others (Future)
SQL Azure Database Using one or multiple databases SQL Azure Database Application Database Database Max database size is 10 GB Application Database Database
.NET Services Infrastructure in the cloud.net Services Access Control? Service Bus SQL Azure Applications.NET Services Windows Azure Applications Windows Others
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 Direct or queued It also provides a service registry that clients can use to find the services they need
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
Building on Azure A non-azure app using Windows Azure storage Blobs Tables SQL Azure On-Premises or Hosted Application
Building on Azure A massively scalable web app exposed on the public Internet Tables Web Role Instance Users
Building on Azure A massively scalable web app with background processing Tables Web Role Instance Queues Worker Role Instance Blobs 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 SQL Azure Web Role Instance Service Bus Users On-premises Database
Building on Azure A parallel processing application Queues Blobs Web Role Instance Worker Role Instance User
Usage Scenarios Typical characteristics of Azure-appropriate applications Apps that need massive scale Apps with many users Apps with many parallel processes Apps with variable load Apps with an unpredictable lifetime Apps that don t fit well in an organization s data center Joint ventures A business unit that wishes to go around its own IT department
Usage Scenarios ISV (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 Scenarios ISV (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 Scenarios Enterprise 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
Usage Scenarios Custom 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
The Windows Azure Platform and Its Competitors
Hosting vs. the Windows Azure Platform A comparison Advantages of 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
Amazon Web Services (AWS) AWS Elastic Compute Cloud (EC2) provides virtual machines running Linux or Windows Amazon Web Services EC2 VM Windows Azure Platform VM Your Application Your DBMS Your Application SQL Azure Database Linux or Windows AWS Storage Windows Server 2008 Windows Azure Storage Windows Azure Fabric
Amazon Web Services Comparing storage options Amazon Web Services Windows Azure Platform Blob storage Simple Storage Service (S3) Windows Azure Storage Blobs Scale-out storage SimpleDB Windows Azure Storage Tables Queues Simple Queue Service (SQS) Windows Azure Storage Queues Relational storage RDBMS running in a VM SQL Azure
Google AppEngine AppEngine runs Python and Java applications Google AppEngine Windows Azure Platform App Task Web Role Worker Role SQL Azure Database Python/Java Runtime Datastore, Task Lists Windows Server 2008 Windows Azure Storage Windows Azure Fabric
Google AppEngine Comparing storage options Google AppEngine Windows Azure Platform Blob storage Datastore (Blob type) Windows Azure Storage Blobs Scale-out storage Datastore Windows Azure Storage Tables Queues Task Queues Windows Azure Storage Queues Relational storage None SQL Azure
Force.com and Windows Azure Salesforce.com s Force.com focuses on datadriven enterprise applications Force.com Windows Azure Platform Enterprise Application Web Role Worker Role SQL Azure Database Force.com Runtime Force.com Database Windows Server 2008 Windows Azure Storage Windows Azure Fabric
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-*