The Amazon Web Services is the subsidiary of the online shopping giant company Amazon. Its main motive is to provide cloud computing services to big companies and corporation, governments or even individuals. All of the services of the AWS can be used by the user who is subscribed on the basis of a subscription fee for all the services for a fixed amount at a time with a free tier basis for a period of 12 months. This technology allows subscribers to have a full-fledged virtual cluster of computers, available all time. Though the AWS services are supposed to be a cloud computing system, supposed to be unknown to the subscribers about the configuration and scaling, the AWS computers have all the attributes of a physical computer like the CPUs and the GPUs, RAMs or internal memory Hard drive or SSDs, choice of operating system,networking capability and pre-loaded application software such as web servers, databases, CRMs etc. AWS system also virtualizes the input and output I/O such as Keyboard mouse and monitor so that a user of these services can use all the services only with the help of a browser. The browser acts like a window into the virtual computer, letting the user login, configure and use AWS’s virtual systems just as they would, a real computer. They can choose to deploy their AWS systems to provide internet-based services for their own and their customers benefit.

The AWS is implemented as server farms or clusters of servers or data centers where the data is saved and these and spread across the world so as to keep the integrity of the data. The AWS provides from a host of services ranging from computing, data storage, networking, database, analytics, application services, deployment, management, mobile, developer tools and in some cases for the internet of things.

Among the most popular AWS services include Amazon Elastic Compute Cloud (EC2) and Amazon Simple Storage Service (S3). These are accessed over the HTTP, using the REST architectural style and SOAP protocol. AWS in 2016 was said offering more than 70 services. To name a few popular ones are, CloudDrive, Dynamo Database (also known as DynamoDB or DDB), Elastic Compute Cloud, ElastiCache, Mechanical Turk, RedShift, Simple Storage Service (S3).

CloudDrive: It allows users to upload and access music, videos, documents, and photos from Web-connected devices. The service also enables users to stream music to their devices. Cloud Drive offers 5 GB of free storage and paid plans for 20 GB, 50 GB, 100 GB, 200 GB, 500GB and 1TB etc.

CloudSearch: It is a scalable search service typically used to integrate customized search capabilities into other applications. To set a search application up, the developer has to create and configure a search domain and then uploads his data so as to make things searchable. Documents can also be uploaded in either Javascript Object Notation (JSON) or Extensible Markup Language (XML) formats. Once the data has been uploaded, the service automatically provisions the required resources and deploys the search index. As the query rate increases or decreases, the service scales up or down accordingly. Developers or administrators can change the parameters and settings without having to re-upload data. It also supports faceted searching, free text searching, text processing, Boolean expressions, customized relevance ranking, field-based sorting, and other advanced functions.

Dynamo Database (also known as DynamoDB or DDB), It is a fully-managed NoSQL database service known for its low latencies and scalability. It makes up for a simple and cost-effective way to store and retrieve any amount of data, as well as serve any level of request traffic. All the data are stored on solid-state drives, which provide a high degree of I/O performance and can handle high-scale requests more efficiently. It uses a NoSQL database model, which is nonrelational, allowing documents, graphs and columnar among its data models. A user can store data in DynamoDB tables, then interacts with it via GET and PUT queries, which are read and write operations, respectively. DynamoDB supports basic CRUD operations and conditional operations. Each DynamoDB query is executed by a primary key identified by the user, which uniquely identifies each item. There are many features that make it a perfect fit for high scale operations.
Scalability, availability, and durability

DynamoDB enforces replication across three availability zones for high availability, durability and reads consistency. A user can also opt for cross-region replication, which creates a backup copy of a DynamoDB table in one or more global geographic locations.

The DynamoDB scan API provides two consistency options when reading DynamoDB data: eventually consistent reads and strongly consistent reads. The former, which is the AWS default setting, maximize throughput at the potential expense of not having a read reflect the latest write or update. The latter reflects all writes and updates.

There are no DynamoDB limits on data storage per user, nor a maximum throughput per table.

Amazon DynamoDB offers Fine-Grained Access Control (FGAC) for an administrator to protect data in a table. The admin or table owner can specify who can access which items or attributes in a table and what actions that person can perform. FGAC is based on the AWS Identity and Access Management service, which manages credentials and permissions. As with other AWS products, the cloud provider recommends a policy of least privilege when granting access to items and attributes.

Elastic Compute Cloud: Subscribers can run their application programs and can serve as a practically unlimited set of virtual machines (VMs). A user increases or decreases instance capacity as needed within minutes using the Amazon EC2 web interface or an application programming interface. A developer can code an application to scale instances automatically with AWS Auto Scaling. A developer can also define an Auto Scaling policy and group to manage multiple instances at once. To use the EC2, a developer creates an Amazon Machine Image (AMI) containing an operating system, application programs, and configuration settings. The AMI is then uploaded to the Amazon Simple Storage Service (Amazon S3) and registered with Amazon EC2, creating an AMI identifier. Once this has been done, the subscriber can requisition virtual machines on an as-needed basis. Data only remains on an EC2 instance till it is running, but a developer can use an Amazon Elastic Block Store volume for an extra level of durability and Amazon S3 for EC2 data backup