Skip to main content

What are various AWS services used for?

AWS EMR (Amazon Elastic MapReduce) - is used for big data reading/processing and analysis / process applications with data intensive workload

AWS Kinesis - real-time streaming data

AWS Custom Kinesis Streams Applications - to analyze data and move analyze outcomes to other systems

VPC Peering - for inter-region private connection

VPC Endpoints - private link; should be used with VPC Peering for inter-region connection

NAT Gateway - allows private instances to download updates from internet; AWS recommends creating a NAT Gateway in each AZ

CloudWatch Alarms - can do auto-scaling, EC2 actions, SNS notifications etc.,

Amazon Kinesis Data Firehose - is used to ship data to other AWS services (not for analysis)

AWS RDS (Amazon Relational Database Service) - is an SQL DB. It works on OLTP

Amazon DynamoDB - is a No-SQL DB. It is used for light-weight and durable storage

AWS Direct Connect - is used to establish a network connection from on premises to AWS. But, don't use this to transfer huge data of size like TB

AWS Snowball - a solution to transport data of sizes like TB / PB

Amazon S3 Transfer Acceleration - is used to speed up content transfers to and from Amazon S3 by as much as 50-500 % for long distance transfer of large objects. But, don't use this to transfer huge data of size like TB

AWS Global Accelerator - is used to improve availability and performance for applications. It is not meant for data transfer

AWS Aurora - is fully managed MySQL and PostgreSQL compatible relational database engine; It gives 5x throughput of MySQL & 3x throughput of PostgreSQL

AWS ECS (Elastic Container Service) - is container management service that makes it easy to run, stop and manage Docker containers on a cluster

AWS SQS (Simple Queue Service) - is some message queue service used by distributed applications to exchange messages through a polling model (not through push mechanism). It is not used for storage. It cannot read real-time data

AWS RedShift - is usually used for petabyte (PB) based storage. It works on OLAP

AWS Glacier - is used for archive storage

AWS DynamoDB - best, light-weight, durable storage option for meta-data

AWS STS - temporary access to AWS resources / cross account access / AssumeRole API

AWS CloudTrail - auditing

AWS Config - check compliance. This is a configuration service

Amazon Single Sign On (SSO) - identity federation

Identity Providers - authenticate users (not services)

Federated Identity Providers - authenticate users

Cognito Identity Pool - authorizes users

AWS Directory Services - AWS Active Directory

Route53 Health Checks - are used to check whether the instance's status is healthy or not

CloudFront - improves website performance; speeds up static/dynamic web content distribution through edge locations; for performance optimization (for GET requests)

Elastic Beanstalk - to quickly deploy and manage applications; to provision new development environment

AWS KMS (Key Management Service) - for encryption at rest (not transit)

Lambda Authorizer - controls access to API

AWS RAM (Resource Access Manager) - used to share AWS resources (e.g., Aurora DB) with other AWS Organizations

AWS Resource Share - used to share AWS resources in an account with other accounts in the same AWS Organization (especially when sharing is NOT enabled in that AWS Organization)

AWS DataSync - used for huge amount of data transfer between on-premises & AWS cloud. It's a secure way of online data transfer

AWS Storage Gateway - used to sync. data between on-premises & AWS S3 buckets

Gateway cached volumes - low latency for frequently accessed data

Gateway stored volumes - low latency for entire dataset

DMS Engine conversion tool - for homogeneous DB migration

DMS Schema conversion tool - for heterogeneous DB migration

ELB - used to distribute traffic among EC2 instances

Athena - a serverless query service to perform interactive queries on data stored in S3

Elasticsearch - to perform complex real-time search

Comments

Popular posts from this blog

GoLang - How to check if key exists in map?

package main import "fmt" var m map[string]string func main() { m = make(map[string]string) m["foo"] = "abc" if val, ok := m["foo"]; ok { fmt.Println("foo found -", val) } else { fmt.Println("foo not found") } if val, ok := m["bar"]; ok { fmt.Println("bar found -", val) } else { fmt.Println("bar not found") } } Output: foo found - abc bar not found

How to delete commits in Git?

Suppose you have 3 commits with SHAs as follows: HEAD~0 --> Commit 3 ccccccc HEAD~1 --> Commit 2 bbbbbbb HEAD~2 --> Commit 1 aaaaaaa If you want to remove the last two commits (i.e., commits 2 and 3) and make Commit 1 as the latest commit, run the following commands: git reset --hard aaaaaaa git push origin HEAD --force Now, the commit history would be as follows: HEAD~0 --> Commit 1 aaaaaaa