AWS Databases & Analytics – Notes What is a Database? Stores data in a structured way. Allows indexes for efficient querying/searching. Unlike raw storage (EBS, S3, EFS, EC2 Instance Store), databases provide structure and relationships between data. Types of Databases a. Relational Databases (SQL) Oldest and most common type. Data stored in tables (rows & columns) with relationships. Example: Students table linked to Departments table by department_id. Query language: SQL (Structured Query Language). Scaling: Vertical (scale up) is common, horizontal scaling is harder. b. NoSQL Databases (Non-Relational) Stands for Non-SQL (not relational). Modern, built for specific purposes and flexible schema. Benefits: Flexible and schema-less. Scales horizontally (add distributed servers). High performance, optimized for specific models. Examples: Key-value stores. Document stores (JSON). Graph databases. In-memory databases. Search databases. JSON (JavaScript Object Notation) commonly used to store data. Supports nested fields, arrays, and evolving schemas. AWS Shared Responsibility Model for Databases Managed Databases (AWS responsibility): Quick provisioning. Built-in High Availability (HA). Easy scaling (vertical + horizontal). Automated backups, restore, patching, upgrades. Integrated monitoring & alerting. AWS handles OS patching & maintenance. Self-Managed Databases (Your responsibility on EC2): You handle resiliency, patching, backups, HA, fault tolerance, scaling. Much more operational overhead. Exam Tip For the CCP exam: Know which AWS managed database fits which use case. Example: RDS (Relational), DynamoDB (NoSQL key-value), Neptune (Graph), ElastiCache (In-memory), OpenSearch (Search). Key takeaway: Use AWS managed databases unless explicitly required to run your own. Managed services simplify ops, scaling, backups, and patching.
...