Microsoft Azure vs Amazon Web Services

 

Microsoft Azure and Amazon Web Services are the two of the largest  IaaS/SaaS cloud computing solutions from Microsoft and Amazon respectively. Being a developer or an IT manger, how do you decide which one is right for you? We have made a comparison of the two based on how they support core website elements, computing, database, storage and CDN . We will also keep the overall support of both the platforms in mind while comparing.

Computing:

Cloud Computing depends on a Virtual Machine .  A Virtual Machine is an implementation of computing environment in which an OS or ap rogram can be run.

Infrastructure as a Service (IaaS) provides hardware and software services.  In Amazons offering, users have full control over the virtual machine and thus need to manage the operating system, upgrades, patches etc.

Platform as a Service (PaaS) provides infrastructure and operating system management (security, upgrades etc).  Users dont have control over the operating system, updates, versions, patches, security etc, which are controlled by the service provider.

Feature Windows Azure Amazon Web Services
Computing Catgory PaaS/IaaS IaaS
Windows OS support Windows 2008 SP2 or higher Windows 2003 or higher
Load Balancing
Adding more than one machine to support large load YES YES
Sticky Sessions
If you have more than one instance using load balancer and the user connected to your instance then all subsequent requests are connected to same instance  NO  YES
Subscription Type Pay as you go or Subscription
It is a contract per hourly use or long time commitment.  Long time commitments are cheaper than the hourly use Pay as you go or Subscription Pay as you go or Subscription
 Technical Support  Forums and paid support  Forums and paid support

 

Database:

Databases are used to store content such as users, contents, orders etc.

  • Microsoft Azure provides low cost, multi-tenant SQL Database.
  • Amazon gives you the option of either creating a Virtual Machine with SQL Server or you can use Amazon managed SQL RDS.
Feature Microsoft Azure AWS
Database SQL Database(SQL Azure) SQL Server R2 or higher and AWS SQL RDS

Storage and CDN (Content Delivery Network):

Cloud storage is a file system, like a local computer file storage system, where you store and retrieve files from using your application.  Content Deliver Networks  improve website performance by distributing assets to nodes.  Cloud providers of CDNs have nodes around the world and distribute customers assets across these networks.  By putting  assets closer to site visitors, there is a dramatic improvement in sites performance.

Microsofts cloud storage service for Azure is known as Azure Blob, which, compared to others, is considered to be one of the high performance cloud storage services. Amazons solution is known as Simple storage service or S3. S3 has several features which are above and beyond what Azure Blob provides.

 

Feature Microsoft Azure AWS
Storage Azure Blob Amazon S3
Logging Storage Analytics S3 Logging
User Accessing/Storing Data by Customer/Server Side Encryption/Client Side Encryption NO YES
Encryption NO YES
Archiving NO YES
Private Content Container or Object Level Container or Object Level
Containers Count Unlimited 100

Cloud Performance:

As seen comparing the above mentioned features, what Amazon and Microsoft offer is highly similar. What differentiates them is some very key features they offer. So, inorder to choose providor, always keep in mind your applications performance needs. Here is a chart comparing the performance of Microsoft Azure and AWS.

(The following data is from nasumi.com)

So, which cloud is the best?

As seen throughout this post, all cloud solutions are very similar in more than just one manner. In the end it all comes down to your personal requirements and preferences, depending upon the size and nature of the application being developed.

While Azure doesn’t provide us as much control over the OS, VM etc, like Amazon Web Services do, it also doesn’t bother you with unwanted hassles of upgradation, maintenance etc.

If your needs are purely high volume and computational, then either of the two options are good enough.

We hope that this post has given you a better idea of what to choose for your enterprise needs. If at all you need more infromation or still have unanswered questions, feel free to contact us!