Amazon Web Services is a collection of remote computing services that together make up a cloud computing platform, offered over internet by amazon.com. The most central and well-known of these services are Amazon EC2 and Amazon s3. There are more services that amazon is offering that needs to be discussed when talking about Amazon web services. Below are the list of remote computing services offered by Amazon.com
- Amazon EC2
- Amazon S3
- Amazon RDS
- Amazon ElastiCache
- Amazon Elastic MapReduce
Amazon Elastic Compute Cloud (EC2) is one of the services provided by Amazon Web Services and provides access to server instances on demand as a service. EC2 is a core part of AWS providing the compute facility for organizations. Amazon provide various server images that users can provision as well as the ability for users to create their own virtual machine images for use on EC2. So summarizing, AWS is a set of services that form Amazons IaaS(Infrastructure as a service) offering. These can be used individually or integrated to form a coherent whole. EC2 is one of the services that make up AWS – probably the most important one. Amazon EC2 is an example of Paas (Platform as a service).
The Cost per unit of using amazon EC2 servers has been reduced over the years. By recent reduce in the price of Amazon EC2 servers usage, it has been stated that amazon.com has reduced the prize for 42 times since its evolution. Below is the overview of the prize reductions on Amazon EC2.
Amazon S3 (Simple Storage Service) is an online service provided by Amazon.com, that allows web designers to store large amounts of data online. S3 is free to join, and is a pay-as-you-go service, meaning you only ever pay for any of the hosting and bandwidth costs that you use, making it very attractive for start-up companies looking to minimize costs. On top of this, the fully scalable, fast and reliable service provided by Amazon, makes it highly attractive to web designers all over the world. Amazon offer S3 as a hosting system dependent on your geographic location, currently offering datacenters in the US and Europe.
The price per unit of Amazon S3 services has been reduced so much since it has been evolved. Below is the current prize per unit statistics. This is an example of AaaS (Application as a service).
There is no limit to the amount of storage and bandwidth you can use on your Amazon S3 account, meaning it is a fully scalable to your needs. Amazon has also built the S3 service to be very reliable, and guarantees server uptime of 99.99%. This claim is backed up by a service level agreement, whereby the user is entitled to a service credit if the service ever drops below this guarantee. The use of Amazon S3 allows you to reduce strain on the server hosting your website. Files such as video and audio have much larger file sizes than standard html files, and an influx of traffic to view a particular file can put undue strain on your server, and in some cases even knock it out. Outsourcing the hosting of your larger files to Amazon S3, means you can optimize your own server for hosting the website, and let Amazon worry about everything else.
Amazon Relational Database Service (RDS) is a fully-managed SQL database service. Amazon RDS offers an array of database engine choices to help with database management tasks such as migration, backup, recovery and patching. According to Amazon’s RDS pages, Amazon Relational Database Service is a web service that makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database administration tasks. Amazon RDS provides access to MySQL, Oracle or Microsoft SQL Server database engines. This means that code, applications, and tools already in use with existing databases can be used with Amazon RDS. Amazon RDS automatically patches the database software and backs up your database, storing the backups for a user-defined retention period and enabling point-in-time recovery. Compute resources or storage capacity associated with a Database Instance (DB Instance) can be scaled via a single API call.
In addition, Amazon RDS enables replication to enhance availability and reliability for production workloads. Mission critical workloads can be run with high availability (HA) and built-in automated failover from your primary database to a synchronously replicated secondary database in case of a failure. Amazon RDS for MySQL also makes it possible to scale out beyond the capacity of a single database deployment for read-heavy database workloads.
Amazon has reduced the RDS prizes by 40% effective from April 1st 2014. Below is the sample pricing scheme for the on-demand MYSQL server per hour.
An App works like this when a request is raised by a user. People hit your Web app. The Web app queries the database. The database returns the result and the user sees it in the app. As more people use the app, the developer needs to add additional Web servers and databases. The load eventually becomes too much and performance degrades. Memory caching moves repetitive queries to a cache to limit loads on the server. The information is in the memory, as opposed to on disk, so it serves up very fast. This is why we are seeing a proliferation of in-memory options from companies such as SAP Hana.
But doing this yourself requires installing Memcached, a free open source, high-performance, distributed memory object caching system. It is intended for use in speeding up dynamic web applications by alleviating database load. AWS is taking out the complexity by offering Memecached as a service. Amazon Elasticache is compatible with Memecached but it is managed by AWS. AWS Elasticache shows how modern service providers create opportunities. AWS saw the complexity developers faced in installing, deploying and managing Memecached. AWS automated the process. They made it easier for the developer. And that’s the key to being a great services provider.
On-Demand Cache Nodes let you pay for cache capacity by the hour your Cache Node runs with no long-term commitments. This frees you from the costs and complexities of planning, purchasing, and maintaining hardware and transforms what are commonly large fixed costs into much smaller variable costs. Below is the Pricing of Amazon ElastiCache.
Amazon Elastic MapReduce
MapReduce is a popular programming model for processing large data sets. Enterprises and academic organizations have in recent years used this approach to tackle a number of challenging problems, including – data mining, genome data processing and image manipulation. Amazon Elastic MapReduce is a web service that enables businesses, researchers, data analysts, and developers to easily and cost-effectively process vast amounts of data. It utilizes a hosted Hadoop framework running on the web-scale infrastructure of Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3).
Amazon has reduced the prices for Elastic MapReduce by 27% to 61%. Note that this is addition to the EC2 price reductions described above. Here are the details.