AWS Developer Service

Software developers use tools to accelerate the software development and release cycle.

Services:

Cloud9

Cloud9 allows you to write code within an integrated development environment (IDE) from within your web browser.

Features:
  1. Integrated development environment (IDE).
  2. Write and debug code.
  3. Supports popular programming languages.
  4. Cloud9 preconfigures the development environment with the needed SDKs and libraries. You can easily write the code for your lambda function directly in a web browser.

CodeCommit

CodeCommit is a source control system for private Git repositories.

Features:
  1. Create repositories to store code.
  2. Commit, branch and merge code.
  3. Collaborate with other software developers.
  4. Used to manage source code and different versions of application files.

CodeBuild

CodeBuild allows you to build and test your application source code.

Features:
  1. Complies with source code and runs tests.
  2. Enables continuous integration and delivery.
  3. Produces build artifacts ready to be deployed.
  4. CodeBuild allows you to run as many parallel streams of tests as needed, allowing you to deploy your changes to production more quickly.

CodeDeploy

CodeDeploy manages the development of code to compute services in the cloud or on-premises.

Features:
  1. Deploys code to EC2, Fargate, Lambda, and on-premises.
  2. Maintains application uptime.
  3. CodeDeploy eliminates the downtime of your application when deploying a new version due to its rolling deployments.

CodePipeline

CodePipeline automates the software release process.

Features:
  1. Quickly deliver new features and updates.
  2. Integrates with CodeBuild to run builds and unit tests.
  3. Integrates with CodeCommit to retrieve source code.
  4. Integrates with CodeDeploy to deploy your changes.
  5. When combining with other developer tools, CodePipeline helps development teams implement DevOps practices that automate testing and the movement of code to production.

X-Ray

X-Ray helps you debug production applications.

Features:
  1. Analyze and debug production applications.
  2. Map application components.
  3. View requests end to end.
  4. X-Ray can help you map requests made to your RDS database from within your application. You can track information about the SQL queries generated and more.

CodeStar

CodeStar helps developers collaboratively work on development projects.

Features:
  1. Developers connect their development environment.
  2. Integrates with CodeCommit, CodeBuild, and CodeDeploy.
  3. Contains issue tracking dashboard.

Important for the exam:

  1. CodeCommit offers a service similar to GitHub that works with Git repositories.
  2. Cloud9 offers an IDE that runs inside a web browser.
  3. CodePipeline allows you to implement a CI/CD pipeline.
  4. CodeDeploy allows you to deploy an application to servers running on-premises and in the cloud.

Machine Learning Services

Artificial Intelligence(AI) teaches computers to do things that normally require human intelligence.

Some services:

Rekognition

Rekognition allows you to automate your image and video analysis.

Features:
  1. Image and video analysis.
  2. Identify custom labels in images and videos.
  3. Face to text detection in images and videos.

Comprehend

Comprehend is a natural-language processing (NLP) service that finds relationships in a text.

Features:
  1. Analyzes text.
  2. NLP service.
  3. Uncover insights and relationships. – Helps in review social media posts and insights.

Polly

Polly turns text into speech.

Features:
  1. Can create custom voice.
  2. Several voices across many languages.
  3. Mimics natural-sounding human speech.

SageMaker

SageMaker helps you build, train, and deploy machine learning models quickly.

Features:
  1. Prepare data for models.
  2. Train and deploy models.
  3. Provides Deep Learning AMIs.

Translate

Translate provides language translation.

Features:
  1. Provides real-time and batch language translation.
  2. Supports many languages.
  3. Translates many content formats.

Lex

Lex helps you build conversational interfaces like chatbots.

Features:
  1. Recognizes speech and understands the language.
  2. Build highly engaging chatbots.
  3. Powers Amazon Alexa.

Important for the exam:

  1. Don’t forget that comprehend is used for NLP.
  2. Rekognition processes videos and images.

AWS Analytics Services

Data Warehouse

A data warehouse is a data storage solution that aggregates massive amounts of historic data from disparate sources.

Benefits:

Data warehouses support querying, reporting, analytics. And business intelligence. They are not used for transaction processing.

Amazon Redshift

Redshift is a scalable data warehouse solution.

Features:
  1. Data warehousing solution.
  2. Handles exabyte-scale data.
  3. Improves speed and efficiency.

Athena

Athena is a query service for Amazon S3.

Features:
  1. Query service
  2. Analyze S3 data using SQL.
  3. Pay per query.
  4. Considered serverless.

Glue

Glue prepares your data for analytics.

Features:
  1. Prepare and load data.
  2. Helps to better understand your data.
  3. Extract, transform load (ETL) service.

Kinesis

Kinesis allows you to analyze data and video streams in real-time.

Features:
  1. Analyze real-time streaming data.
  2. Supports video, audio, application logs, website clickstreams, and IoT.

Elastic MapReduce (EMR)

EMR helps you process large amounts of data.

Features:
  1. Process Big Data
  2. Analyze data using Hadoop
  3. Works with big data frameworks.

Data Pipeline

Data Pipeline helps you to move data between computing and storage services running either on AWS or on-premises,

Features:
  1. Moves data at specific intervals.
  2. Moves data based on conditions.
  3. Sends notification on success or failure.

QuickSight

QuickSight helps you to visualize your data.

Features:
  1. Build interactive dashboards.
  2. Embed dashboards in your applications.

Important for the exam:

  1. Going into the exam, don’t forget Athena is used to querying S3.
  2. Going to the exam, don’t forget the real-world use cases of Redshift.

AWS Migration Services

A lot of companies are migrating to the cloud, and they need inexpensive, fast, and secure ways to move their on-premises data to AWS.

Data Migration Service (DMS)

DMS helps you migrate databases to or within AWS.

Features:
  1. Migrate on-premise databases to AWS.
  2. Supports homogeneous and heterogeneous migrations.
  3. Continuous data replication.
  4. Virtually no downtime.
Use case:
  1. Oracle to Aurora MySQL.
  2. Oracle to Oracle.
  3. RDS Oracle to Aurora MySQL.

Server Migration Service (SMS)

SMS allows you to migrate on-premises servers to AWS.

Features:
  1. Migrates on-premises servers to AWS.
  2. Server saved as a new Amazon Machine Image (AMI).
  3. Use AMI to launch as EC2 instances.

AWS Snow Family

The Snow Family allows you to transfer large amounts of on-premises data to AWS using a physical device.

  1. Snowcone
    • Smallest member of data transport devices.
    • 8 TB of usable storage.
    • Offline shipping
    • Online with DataSync
  2. Snowcone and Snowball
    • Petabyte-scale data transport solution.
    • Cheaper than internet transfer.
    • Transfer data in and out.
    • Snowball Edge supports EC2 and Lambda.
  3. Snowmobile
    • Multi-petabyte or exabyte scale.
    • Data loaded to S3.
    • Securely transported.

DataSync

DataSync allows for online data transfer from on-premises to AWS storage services like S3 or EFS.

Features:
  1. Migrates data from on-premises to AWS.
  2. Copy data between AWS storage services.
  3. Copy data over Direct Connect or the internet.
  4. Replicate data cross-Region or cross-account.

Important for the exam:

  1. When going for an exam, don’t forget the services natively supported by Snowball Edge like EC2 and Lambda.
  2. Remember that Snowball transfers petabytes of data and is cheaper than transferring over the internet.
  3. Don’t forget Snowmobile is the largest member of the transport family and supports exabyte-scale data.
  4. Don’t forget DataSync transfers data online and can be used to replicate data cross-Region or cross-account.

AWS Database Services

Amazon Relational Database Service (RDS)

RDS is a service that makes it easy to launch and manage relational databases.

Features:
  1. Supports popular database engines.
  2. Offers high availability and fault tolerance using multi-AZ deployment.
  3. AWS manages the database with automatic software patching, automated backups, operating system maintenance, and more.
  4. Launch read replicas across Regions in order to provide enhanced performance and durability.

Amazon Aurora

Aurora is a relational database compatible with MySQL and PostgreSQL that was created by AWS.

Features:
  1. Supports MySQL and PostgreSQL database engines.
  2. 5x faster than normal MySQL and 3x faster than normal PostgreSQL.
  3. Scales automatically while providing durability and high availability.
  4. Managed by RDS.

Amazon DynamoDB

DynamoDB is a fully managed NoSQL key-value and document database.

Features:
  1. NoSQL key-value database.
  2. Fully managed and serverless.
  3. Non-relational.
  4. Scales automatically to massive workloads with fast performance.

Amazon DocumentDB

DocumentDB is a fully managed document database that supports MongoDB.

Features:
  1. Document Database.
  2. MongoDB compatible.
  3. Fully managed and serverless.
  4. Non-relational.

Amazon ElastiCache

ElastiCache is a fully managed in-memory datastore compatible with Redis or Memcached.

Features:
  1. In-memory datastore.
  2. Data can be lost.
  3. Compatible with Redis or Memcached engines.
  4. Offers high performance and low latency.

Amazon Neptune

Neptune is a fully managed graph database that supports highly connected datasets.

Features:
  1. Graph database service.
  2. Supports highly connected datasets like social media networks.
  3. Fully managed and serverless.
  4. Fast and reliable.

Important for exam:

  1. RDS is only for relational databases. Don’t forget the supported databases engines:
    • Amazon Aurora
    • PostgreSQL
    • MySQL
    • MariaDB
    • Oracle Database
    • SQL server.
  2. Going into the exam don’t forget DynamoDB is a NoSQL database.
  3. Don’t forget Aurora only supports PostgreSQL and MySQL.
  4. Keep in mind that ElastiCache is an in-memory datastore.
  5. Don’t forget Neptune helps you create social media graphs.
  6. Keep in mind that DocumentDB supports MongoDB.

AWS Networking Services

Amazon Virtual Private Cloud (VPC)

VPC is a foundational service that allows you to create a secure private network in the AWS cloud where you launch your resources.

Features:
  1. Private virtual network.
  2. Launch resources like EC2 instances inside the VPC.
  3. Isolate and protect resources.
  4. A VPC spans Availability Zones in a Region.
  5. VPC peering allows you to connect 2 VPCs together that facilitates the transfer of data in a secure manner.

Other networking services:

Amazon Route 53

Route 53 is a DNS service that routes users to applications.

Features:
  1. Domain Name Registration.
  2. Performs health checks on AWS resources.
  3. Supports hybrid cloud architectures.

Amazon Direct Connect

Direct Connect is a dedicated physical network connection from your on-premises data center to AWS.

Features:
  1. Dedicated physical network connection.
  2. Connects your on-premises data center to AWS.
  3. Data travels over a private network.
  4. Supports a hybrid environment.
Use case:
  1. Large datasets
  2. Business-critical data
  3. Hybrid model

AWS VPN

Site-to-Site VPN creates a secure connection between your internal networks and your AWS VPCs.

Features:
  1. Similar to Direct Connect, but data travels over the public internet.
  2. Data is automatically encrypted.
  3. Connects on-premises data center to AWS.
  4. Supports a hybrid environment.

API Gateway

API Gateway allows you to build and manage APIs.

Features:
  1. Sharing data between systems.
  2. Integrate with services like lambda.
Important for the exam:
  1. Don’t forget an internet gateway allows traffic to the public internet and peering connects 2 VPC’s together.
  2. Don’t forget Route 53 performs health checks on AWS resources and supports a hybrid model.
  3. Remember that Direct Connect supports a hybrid model.
  4. Remember that a Site-to-Site VPN supports a hybrid model. Don’t forget to review components such as the virtual private gateway and customer gateway.

Content Delivery Service(CDN)

A CDN mechanism is used to deliver content quickly and efficiently based on geographic location.

Note: Latency means the time it takes to respond to a request. Low latency is good!

Amazon CloudFront

CloudFront is a CDN that delivers data and applications globally with low latency.

Features:
  1. Makes connections available globally or restricts them based on the location.
  2. Speeds up delivery of static and dynamic web content.
  3. Uses edge locations to cache content.

What if your content is not on edge location? Let’s see. How does it work:

  1. Users send requests from the browser.
  2. Request first go to CloudFront distributions(collection of edge locations).
    1. If the response to the request is available at the distribution center the response will be given from the distribution center only. Else,
    2. The request then moves to the origin(original source) of the service and the response will get placed at distribution centers and further responded to users.
Uses:
  1. S3 static websites
  2. Prevent attacks
  3. IP address blocking

Amazon Global Accelerator

Global Accelerator sends your users through the AWS global network when accessing your content, speeding up delivery.

Features:
  1. Improves latency and availability of single-Region applications.
  2. Sends traffic through the AWS global network infrastructure.
  3. 60% performance boost.
  4. Automatically re-routes the traffic to healthy available regional endpoints.

Amazon S3 Transfer Acceleration

S3 Transfer Acceleration improves content uploads and downloads to and from S3 buckets.

Features:
  1. Fast transfer of files over a long distance.
  2. Uses CloudFront’s globally distributed edge locations.
  3. Customers around the world can upload to a central bucket.
Important for the exam:
  1. Don’t forget CloudFront allows for global distribution of content.
  2. Remember Global Accelerator provides low latency.
  3. Don’t forget CloudFront has security features like DDoS protection and geo-restriction.
  4. Remember S3 transfer acceleration provides fast transfer of files over long distances.

AWS Storage Services

Simple Storage Service – S3

  • S3 is an object storage service for the cloud that is highly available.
  • Objects(files) are stored in buckets(directories).
  • Unlimited storage that can hold millions of objects per bucket.
  • Objects can be public or private. 
  • You can upload objects via the console, CLI, or programmatically within code using SDKs.
Features
  1. You can set bucket level or object-level access control using Access control lists, bucket policies, or access point policies.
  2. You can use S3 logs to track access to your buckets and objects.
  3. You can enable versioning to create multiple versions of your file in order to protect against accidental deletion and to use a previous version.
  4. S3 is a regional service, but bucket names must be globally unique.
  5. Durability is important so your objects are never lost or compromised. S3 is designed for 99.999999999% (11 9’s) of durability.
  6. Availability is important so you can access your data quickly when you need it. S3 standard availability is 99.99%.
Types of storage classes
  1. S3 standard
    • General-purpose storage.
    • Data stored across multiple availability zones.
    • Low latency and high throughput.
    • Recommended for frequently accessed data.
  2. S3 Intelligent-Tiering
    • Automatically moves your data to the most cost-efficient storage class.
    • Automatic cost savings.
    • No retrieval fees.
    • Data stored across multiple availability zones.
    • Recommended for data with the unknown or changing access pattern.
  3. S3 Standard-Infrequent Access(IA)
    • Data accessed less frequently but required rapid access.
    • Data stored across multiple availability zones.
    • Cheaper than the S3 standard.
    • Recommended for:
      • Long-lived data.
      • Infrequently accessed.
      • Millisecond access when needed.
  4. S3 One Zone-Infrequent Access(IA)
    • Like S3 Standard IA but data stored in a single availability zone.
    • Cost 20% less than S3 Standard-IA.
    • Data stored in this storage class can be lost.
    • Recommended for:
      • Re-creatable data.
      • Infrequently accessed with millisecond access.
      • Availability and durability are not essential. Still, availability is 99.5%.
  5. S3 Glacier
    • Long-term data storage and archival for lower costs.
    • Data retrieval takes longer.
    • 3 retrieval options:
      • 1-5 minutes
      • 3-5 hours
      • 5-12 hours
    • Data stored across multiple availability zones
    • Recommended for:
      • Long-term backups.
      • Cheaper storage options.
  6. S3 Glacier Deep Archive
    • Like S3 glacier but longer access times.
    • 2 retrieval options:
      • 12 hours
      • 48 hours
    • Cheapest of all S3 options.
    • Data stored across multiple availability zones.
    • Recommended for:
      • Long-term data archival is accessed once or twice a year.
      • Retaining data for regulatory compliance requirements.
  7. S3 Outposts
    • Provide object storage on-premises.
    • A single storage class.
    • Store data across multiple devices and servers.
    • Recommended for:
      • Data that needs to be kept local.
      • Demanding application performance needs.
Uses:
  1. Static Website hosting
  2. Data Archive
  3. Analytics systems
  4. Mobile Applications
Important for exams:
  1. S3 is a regional service but has a global namespace.
  2. S3 offers unlimited storage with many storage classes. Understand the use cases for each storage class.
More services:
  1. EBS(Elastic Block Store) volume:
    • It is like a flash drive.
    • It can be connected to one instance at a time.
    • Data persists when an instance is not running.
    • Tied to one availability zone.
    • Recommended for:
      • Quickly accessible data.
      • Running database on an instance.
      • Long-term data storage.
  2. EC2 instance store:
    • Storage on disks physically attached to an instance.
    • Faster with higher I/O speeds.
    • Storage is temporary i.e. data will lose once the instance is stopped.
    • Recommended for:
      • Temporary storage needs
      • Data replicated across multiple instances.
  3. EFS(Elastic File System):
    • Serverless network file system for sharing files.
    • Only supports the linux file system.
    • Expensive than EBS.
    • Accessible across different availability zones in the same region.
    • Recommended for:
      • Main directories for business-critical apps.
      • Lift and shift existing enterprise apps.
  4. Storage gateway:
    • Hybrid storage service.
    • Connect on-premises and cloud data.
    • Supports hybrid model.
    • Recommended for:
      • Moving backups to the cloud.
      • Reducing costs for hybrid cloud storage.
      • Low latency access to data.
  5. AWS Backup:
    • Helps you to manage data backups across multiple AWS services.
    • Integrates with resources like EC2, EBS, EFS, and more.
    • Create a backup plan that includes frequency and retention.
Important for the exam:
  1. Understand the use cases for EBS.
  2. Don’t forget instance store volumes are temporary.
  3. Don’t’ forget EFS supports only linux file systems.
  4. Storage gateway supports a hybrid model.

Terminology Cheat Sheet

S. No.TermMeaning/Use
1Access control list(ACL)Firewall on network level
2Auto ScalingAutomates the process of adding or removing instances based on traffic
3BucketsRoot – level folders
4CloudFrontContent delivery network (CDN) that allows you to store your content at “edge locations” located all around the world, allowing customers to access your content more quickly
5CloudTrailMonitoring and Logging of IAM users
6CloudWatchService that allows you to monitor various elements of your AWS account
7DNS ServerA database of website domains and their corresponding IP addresses
8Dynamo DBNoSQL database service that does not provide other NoSQL software options
9Elastic Block Store (EBS)Provides persistent block storage volumes for use of EC2 instances.
10Elastic Compute Cloud (EC2)A virtual computer, very similar to a desktop/laptop computer.
11Elastic Load Balancing (ELB)Evenly distributes traffic between EC2 instances that are associated with it.
12IAM usersIndiividuals who have been granted access to an AWS account.
13Identity and Access Management (IAM)Service where AWS user accounts and their access to various AWS services are managed
14LambdaServerless computing that will replace EC2 instances, for the most part
15Relational Database Service (RDS)SQL database service that provides a wide range of SQL database options to select from
16Route 53Where you configure and manage web domains for websites or applications you host on AWS
17Security group (SG)Firewall/security layer on the server/instance level
18Shared responsibility modelDefines what you and AWS are responsible for when it comes to security and compliance
19Simple Notification Service (SNS):AWS service that allows you to automate the sending of email or text messaging notifications based on events that happen in your AWS account
20Simple Storage Service (S3): Online bulk storage service you can access from almost any device
21SubnetA subsection of a network and generally includes all the computers in a specific location
22Trusted AdvisorService that “advises” and helps you optimize aspects of your AWS account
23User credentials IAM user’s username and password for logging in to AWS
24Virtual Private Cloud (VPC)A private subsection of AWS you control and in which you can place AWS resources

AWS Compute Services

Elastic Compute Cloud – EC2 

EC2 allows you to rent and manage virtual servers in the cloud.

Servers are physical computer hardware running at the data center. EC2 instances are virtual servers running on these physical servers.

In the real world, it is used to deploy databases and applications.

How to access the EC2 instance?
  1. AWS Management Console
  2. Secure Shell
  3. EC2 Instance Connect
  4. AWS Systems Manager
Features of EC2
  1. Elastic Load Balancing

It automatically distributes your incoming application traffic across multiple EC2 instances. For eg: Classic Load Balancer, Application Load Balancer, Gateway Load Balancer, Network Load Balancer

  1. Auto Scaling

EC2 auto scaling adds or replaces EC2 instances automatically across AZs, based on need and changing demand.

Types of scaling:

  1. Horizontal Scaling: In this, the number of servers is adjusted as per the requirement.
  2. Vertical Scaling: In this, the CPU and RAM of a server are adjusted as per the requirement.
EC2 Pricing Options
  1. On-Demand

A fixed price in which you are billed down to the second based on the instance type. There is no contract, and you pay only for what you use.

When to use it?

  • If you care about low cost without any upfront payment or long-term commitment.
  • Your applications have unpredictable workloads that can’t be interrupted.
  • Your applications are under development.
  • Your workloads will not run longer than a year.
  1. Spot 

Spot Instances let you to take advantage of unused EC2 capacity. Your request is fulfilled only if capacity is available.

When to use it?

  • You are not concerned about the start or stop time of your application.
  • Your workloads can be interrupted.
  • Your application is only feasible at very low compute prices.
  1. Reserved Instance

Reserved Instances allow you to commit to a specific instance type in a particular region for 1 or 3 years.

When to use it?

  • Your application has steady-state usage and you can commit to 1 or 3 years.
  • You can pay money upfront in order to receive a discount on On-Demand prices.
  • Your application requires a capacity reservation.
  1. Dedicated Hosts

Dedicated hosts allow you to pay for a physical server that is fully dedicated to running your instances.

When to use it?

  • You want to bring your own server-bound software license from vendors like Microsft or Oracle.
  • You have regulatory or compliance requirements around the tenancy model.
  1. Savings Plan

Savings Plan allows you to commit to compute usage(measured per hour) for 1 or 3 years.

When to use it?

  • You want to lower your bill across multiple compute services.
  • You want the flexibility to change compute services, instance types, operating systems, or regions.
Important for the exam:
  1. EC2 pricing 
  2. Scaling types
  3. Types of load balancers
  4. Benefits of each 
  5. Real-world usage
  6. How to connect?

Lambda

AWS Lambda is a serverless service, mainly designed for developers who just code and do not have any idea or do not want to do patching, scaling, etc for the servers. 

In this service the servers are maintained by AWS only. The end users is not having access to the servers also.

All the code executions are tracked in CloudWatch logs.

Features
  1. It supports popular programming languages like Java, Go, Python, etc.
  2. You author code using your favourite development environment or via the console also.
  3. Lambda can execute your code in response to events.
  4. Lambda functions have 15 minute timeout.
Important for exam:
  1. Resposnibilties in Lambda
  2. Cost/ Always free
Other compute services for knowledge:
  1. Fargate: Serverless technique used to manage containers.
  2. Outpost: Supporting hybrid cloud model. Basically, hardware is provided by AWS.
  3. LightSail: Used to quickly launch preconfigured applications for small projects.
  4. Batch: AWS batch is used to process large workloads in smaller batches.

Information Security Blogs

Blogs on infosec and cyber security, writeups, latest trends, security best practices, etc.

Skip to content ↓