Cloud API: What Is AWS?
Cloud API: What Is AWS?
Cloud API: What Is AWS?
What is AWS?
To be able to answer "What is AWS?", you must first understand that it's a cloud
provider. Among other features, cloud providers grant more storage flexibility and
enhanced security measures. They also contain features you'd find at a local data
center, like bolstered security, higher computing capacity, and database
construction. Depending on your location, you can get other features like content
caching.
One of the advantages of AWS is that you get all 160 cloud services on a pay-as-
you-go basis. This means that you pay only for the services you use. And it works on
a relative scale. That means the less you use it, the less you pay. And the more
you use it, the less you pay per unit. (i.e., The price of each unit goes down with
each new purchase.)
That's not all. Other advantages of AWS relate to the applications associated with it.
The applications are reliable because they run on a safe and reliable
infrastructure.
Cloud API’
Each GET request must have an endpoint, such as a URL. That endpoint
serves as an entrance for the web service: a parameter action that presents
the action you want to perform, as well as the parameters for action, the API
version you want to use, and the authorization parameter.
https://ec2.amazonaws.com/?Action=RunInstances &ImageId=a
mi-2bb65342 &MaxCount=3 &MinCount=1 &Placement.Availabili
tyZone=us-east-1a &Monitoring.Enabled=true &Version=2016-
11-15 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-
Credential=AKIAIOSFODNN7EXAMPLEus-east-
1%2Fec2%2Faws4_request &X-Amz-Date=20130813T150206Z &X-
Amz-SignedHeaders=content-type%3host%3x-amz-date &X-Amz-
Signature=ced6826de92d2bdeed8f846f0bf508e8559e98e4b0194b8
4example54174deb456c Content-type:
application/json Host:ec2.amazonaws.com
2. Amazon S3 API
Amazon Simple Storage Service (S3) gives you an infinite amount of storage.
Add in that it is also highly-scalable, reliable, and low-latency, and its
significance for storing and using data in the cloud can really be appreciated.
Whether you’re using S3 to store photos from your application or log files,
Amazon S3 API is a key tool for your communication with S3 storage.
The Amazon S3 supports REST API, while SOAP is only available via
HTTPS, as it’s deprecated for HTTP. Requests towards Amazon S3 can be
authenticated or anonymous. For authenticated access, AWS credentials
used for authenticating requests are necessary. If you make a direct REST
API call from your application, a signature using valid AWS credentials is
created and that signature is included in the request. Making such requests
directly from code can be clumsy, however, and you would need to write
additional code. That’s why it’s better to use SDK for sending requests. You
can also use AWS CLI to make an Amazon S3 API call.
You can use SOAP, REST API, and Query API for accessing Amazon RDS.
Keep in mind that SOAP can only be used over the HTTPS protocol. It’s also
worth mentioning that Amazon RDS is asynchronous, which means that in
certain cases you’ll need to use techniques such as polling or callback
functions to determine if a command was applied. There are also certain
scenarios where you cannot use the standard API syntax, for example, when
you are downloading a database log file. In that case, it is necessary to use
REST API because of the size of the log file.
4. DynamoDB API
Amazon DynamoDB delivers low-level API actions that enable database
tables and indexes management, and also allows for reading, creating,
updating, and deleting data. Instead of accessing the low-level API directly
from your application, it is a best practice to use AWS SDK for the
programming language you currently have in use. Each API action has an
equivalent method and a CLI command.
It’s recommended to use SDK inside your application for accessing KMS API
in order to have better control over an API. KMS supports AWS
CloudTrail service which logs all API calls and stores them on S3 bucket, thus
making it possible for you to see which requests towards KMS were made
and who made those requests.
The most popular KMS APIs are Encrypt, Decrypt, GenerateDataKey and
GenerateDataKeyWithoutPlaintext. All operations with AWS KMS service
demand the requests be signed with Signature Version 4 which helps validate
the identity of the request maker, data protection in transit, as well as
protection from misuse or reuse of some parts of the signed requests. Using
signatured API requests and Amazon KMS API will bring your application’s
safety to a higher level and enable you safe placing and retrieval of data.
Standard Amazon SQS queues can be used in every region, while FIFO
queues, guaranteeing the correct message order delivery, are only available
in US West and US East region. Thanks to the SQS API you can create
queues from your own app, send, and receive messages inside queues.
Using SDK for accessing the SQS API automatically encrypts the signature of
the request you are sending, repeats the request, and handles error
responses. All of this is done in the background. SQS supports Query
requests for calling actions over the service, though SOAP requests aren’t
supported. For sending Query requests, you can use POST and GET
methods. Each GET request contains of an endpoint representing a queue,
Action section representing the action over the endpoint and a parameter –
any request parameters.
http://sqs.us-east-2.amazonaws.com/123456789012/queue1 ?
Action=SendMessage &MessageBody=Your%20Message%20Text &Ve
rsion=2012-11-05 &Expires=2011-10-15T12:00:00Z &AUTHPARAM
S
*Example taken from Amazon SQS API reference guide
IT lead? read this whitepaper to learn how to be innovation agent and thought leader
What is GCP?
Higher-level services
Google continues to add higher-level services, such as those related to big data and
machine learning, to its cloud platform. Google big data services include those for
data processing and analytics, such as Google BigQuery for SQL-like queries
made against multi-terabyte data sets. In addition, Google Cloud Dataflow is a data
processing service intended for analytics; extract, transform and load (ETL); and
real-time computational projects. The platform also includes Google Cloud
Dataproc, which offers Apache Spark and Hadoop services for big data processing.
For artificial intelligence (AI), Google offers its Cloud Machine Learning
Engine, a managed service that enables users to build and train machine
learning models. Various APIs are also available for the translation and
analysis of speech, text, images and videos.
Google also provides services for IoT, such as Google Cloud IoT Core,
which is a series of managed services that enables users to consume and
manage data from IoT devices.