Amazon Web Services (AWS) accrued in early 2006. It is part of the well-known electronic commerce company Amazon.com. AWS emerged from Amazon.com’s enormous global computing infrastructure, that has been built up for over 13 years. The objective is to offer flexible IT infrastructure services from one source (the cloud) for customers like companies of all sizes. These services include e.g. compute power, storage and data bases. The most important two principles of all Amazon Web Services are:
- You pay only for what you use.
- You can instantly get as much from everything as you need.
Let me quote Amazon: «Using Amazon Web Services, an e-commerce web site can weather unforeseen demand with ease; a pharmaceutical company can “rent” computing power to execute large-scale simulations; a media company can serve unlimited videos, music, and more; and an enterprise can deploy bandwidth-consuming services and training to its mobile workforce.»
https://aws.amazon.com/ is the home of Amazon Web Services (AWS), whereas “home” has two different meanings:
- By using this URL in a browser, you can get information about AWS, manage your AWS account, browse documentations, examples, tutorials, articles and visit forums.
- By using this URL (and sub domains) in any high-level programming language, you can control any of the Amazon Web Services. The whole steering communication is HTTP based and directed to the named web server at aws.amazon.com.
The most important parts of AWS are currently placed in three big computer centres at the east cost of the USA. These centres are at three physically totally different places and form three so-called availability zones.
In the following parts, I will name and shortly describe the three services that are used by AWSAC.
S3 is Amazon’s storage service. Its most important features are:
- Simple HTTP based API to store and retrieve any amount of data, at any time, from anywhere on the web.
- Very high bandwidth and fast access from within the cloud.
- Highly reliable (automatically mirrored between the three availability zones).
S3 is not a file system. It has a bucket / object system:
- One AWS account can own up to 100 so-called buckets. The namespace of these buckets is a public space, so one bucket name only exists one time for all AWS accounts.
- A “file” at S3 is a so-called object, placed in a bucket. The “filename” of the object is the so-called key. Objects may contain from 1 byte to 5 gigabytes of data. The number of objects you can store in a bucket is unlimited.
- S3 has an entire access control system for objects. Rights can be granted to specific users or to the public.
The pricing is by storage used, traffic between S3 and “the internet” and requests. Traffic in the cloud (e.g. between S3 and EC2) is for free.
More detailed information about S3: http://aws.amazon.com/s3/
EC2 is Amazon’s computing power service. It provides flexible (resizeable) computing capacity in the cloud. EC2 is a virtual computing environment. It allows you to launch and terminate virtual machines of individually configurable operating systems (standard: Linux systems; possible: Windows systems). Such a custom system can be stored in a so-called Amazon Machine Image (AMI) containing e.g. custom applications, libraries, data and associated configuration settings. AMIs are stored encrypted on S3. Virtual machines at EC2 are called instances. Launching instances of a custom AMI makes it possible to get virtual servers with a custom application environment.
Important features of EC2 are:
- Flexibility / Elasticity: EC2 can launch or terminate as many instances (virtual servers) as you want at any time within minutes.
- EC2 is controlled via easy HTTP based APIs. So an application can automatically scale itself up and down depending on its needs.
- EC2 grants root access to the virtual machines and access to the console output.
- One can choose the virtual hardware before launching an instance.
- One can use so-called public AMIs of pre-configured systems or create own private AMIs.
- After creating an own AMI one can make it public so that others can launch their own instances of it.
- So-called Elastic Block Stores (EBS) provide persistent storage for EC2 instances. EBS volumes exist independently from the life of an instance. This is convenient, because the so-called instance storage - that comes automatically with an instance - gets lost when the corresponding instance shuts down. EBS Volumes provide a real file system and a higher performance than S3.
Pricing for EC2 is basically per “instance-hour” - whereas the instance type (the virtual hardware) plays an important role - and traffic between instances and the internet. The costs for EBS and other “subservices” (like Elastic IP) are calculated additionally.
More detailed information about EC2: http://aws.amazon.com/ec2/
SimpleDB is Amazon’s database service. As you can guess from the name, it is constructed to be simple. The service is intended to be used from within the cloud, i.e. from EC2 instances.
Important features:
- Provides the core functionality of a database: real-time lookup and simple querying of structured data without the complexity of a standard relational database.
- SimpleDB automatically indicates the data accordingly.
- SimpleDB is fast (from within the cloud).
- The data is stored redundantly across multiple servers and data centres (like data on S3).
More detailed information about SimpleDB: http://aws.amazon.com/simpledb/