IT-Exam-AWS

From wiki.samerhijazi.net
Revision as of 19:52, 11 April 2025 by Samerhijazi (talk | contribs) (Low-Latency Architecture)
Jump to navigation Jump to search

Core AWS Services

  • EC2 – Instances, types, autoscaling
  • S3 – Storage classes, performance, hosting static websites
  • ELB (Elastic Load Balancer) – For distributing traffic
  • RDS & DynamoDB – When to use what (relational vs NoSQL)
  • Lambda – For serverless scenarios
  • CloudFront – CDN to reduce latency

Architecture Best Practices

  • Operational Excellence
  • Security
  • Reliability
  • Performance Efficiency
  • Cost Optimization
  • Sustainability (recent addition)

Low-Latency Architecture

  • Use CloudFront for global distribution
  • Place backend services in multiple Availability Zones
  • Use Auto Scaling for EC2 or Lambda
  • Use Elasticache for caching (Redis/Memcached)
  • Choose regions close to the end users
  • Use Global Accelerator if needed

Databases

Amazon RDS (Relational Database Service)

  • You need structured data with relationships (foreign keys, joins).
  • Your application depends on SQL queries (PostgreSQL, MySQL, MariaDB, SQL Server, Oracle).
  • You require ACID transactions (Atomicity, Consistency, Isolation, Durability).
  • You need complex reporting or analytics using joins, aggregations, etc.

Amazon DynamoDB (NoSQL)

  • You need high-speed reads/writes at any scale
  • You don’t need complex relationships (no joins)
  • Your data is semi-structured or unstructured
  • You expect massive scale (e.g., millions of users, IoT, gaming)

XXX

ACID (Atomicity, Consistency, Isolation, Durability) transactions

  • A (Atomicity): A transaction is all or nothing — if one part fails, the entire thing rolls back.
  • C (Consistency): The database must move from one valid state to another — rules and constraints are respected.
  • I (Isolation): Transactions don't interfere with each other — even when run at the same time.
  • D (Durability): Once a transaction is committed, the data is permanently saved, even if the system crashes.