Bird
Raised Fist0
AWScloud~5 mins

RDS supported engines in AWS - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: RDS supported engines
O(n)
Understanding Time Complexity

We want to understand how the time to list supported RDS engines changes as the number of engines grows.

How does the number of supported engines affect the time to get their details?

Scenario Under Consideration

Analyze the time complexity of the following operation sequence.


// List all supported RDS engines
const engines = await rds.describeDBEngineVersions().promise();

// For each engine, get details
for (const engine of engines.DBEngineVersions) {
  console.log(engine.Engine, engine.EngineVersion);
}
    

This code fetches all supported RDS database engines and prints their names and versions.

Identify Repeating Operations

Identify the API calls, resource provisioning, data transfers that repeat.

  • Primary operation: One API call to describeDBEngineVersions to get all engines.
  • How many times: Called once regardless of number of engines.
  • Data processing: Loop over each engine in memory to print details.
How Execution Grows With Input

The API call happens once, but the processing loops over each engine.

Input Size (n)Approx. API Calls/Operations
101 API call + 10 print operations
1001 API call + 100 print operations
10001 API call + 1000 print operations

Pattern observation: API calls stay the same, but processing grows linearly with number of engines.

Final Time Complexity

Time Complexity: O(n)

This means the time grows linearly with the number of supported RDS engines.

Common Mistake

[X] Wrong: "The API call time grows with the number of engines, so more engines means more API calls."

[OK] Correct: The API call returns all engines at once, so only one call is needed regardless of engine count.

Interview Connect

Understanding how API calls and data processing scale helps you design efficient cloud solutions and answer real-world questions confidently.

Self-Check

"What if we made a separate API call for each engine to get more details? How would the time complexity change?"

Practice

(1/5)
1. Which of the following database engines is supported by AWS RDS?
easy
A. MySQL
B. MongoDB
C. Cassandra
D. Redis

Solution

  1. Step 1: Recall AWS RDS supported engines

    AWS RDS supports popular relational database engines like MySQL, PostgreSQL, Oracle, SQL Server, and Aurora.
  2. Step 2: Identify which option matches supported engines

    Among the options, only MySQL is a supported RDS engine. MongoDB, Cassandra, and Redis are not supported by RDS but by other AWS services.
  3. Final Answer:

    MySQL -> Option A
  4. Quick Check:

    RDS supports MySQL = A [OK]
Hint: Remember RDS supports relational engines like MySQL, not NoSQL [OK]
Common Mistakes:
  • Confusing NoSQL databases as RDS engines
  • Assuming Redis is supported by RDS
  • Thinking Cassandra is supported by RDS
2. Which of the following is the correct way to specify the engine when creating an RDS instance using AWS CLI?
easy
A. --engine mongodb
B. --engine mysql
C. --engine redis
D. --engine cassandra

Solution

  1. Step 1: Understand AWS CLI engine parameter

    The AWS CLI uses the parameter --engine to specify the database engine when creating an RDS instance.
  2. Step 2: Identify valid engine names

    Valid engine names include mysql, postgres, oracle, sqlserver, aurora. MongoDB, Redis, and Cassandra are not valid for RDS engine parameter.
  3. Final Answer:

    --engine mysql -> Option B
  4. Quick Check:

    Correct engine name for MySQL is mysql [OK]
Hint: Use lowercase engine names like mysql, not unsupported ones [OK]
Common Mistakes:
  • Using unsupported engines like mongodb or redis
  • Capitalizing engine names incorrectly
  • Confusing engine parameter with instance type
3. Given the following AWS CLI command to create an RDS instance:
aws rds create-db-instance --db-instance-identifier mydb --engine postgres --allocated-storage 20 --db-instance-class db.t3.micro --master-username admin --master-user-password secret123

What database engine will this RDS instance use?
medium
A. SQL Server
B. MySQL
C. Oracle
D. PostgreSQL

Solution

  1. Step 1: Analyze the --engine parameter in the command

    The command specifies --engine postgres, which corresponds to PostgreSQL.
  2. Step 2: Match engine parameter to database engine

    Postgres is the short name for PostgreSQL, a supported RDS engine.
  3. Final Answer:

    PostgreSQL -> Option D
  4. Quick Check:

    --engine postgres means PostgreSQL [OK]
Hint: Look for --engine value to identify the database engine [OK]
Common Mistakes:
  • Confusing postgres with MySQL
  • Assuming default engine is MySQL
  • Ignoring the --engine parameter
4. You tried to create an RDS instance with the command:
aws rds create-db-instance --db-instance-identifier testdb --engine mongo --allocated-storage 20 --db-instance-class db.t3.micro --master-username admin --master-user-password secret123

But it failed. What is the most likely reason?
medium
A. The master username is missing
B. The allocated storage is too low
C. The engine name 'mongo' is not supported by RDS
D. The instance class db.t3.micro is invalid

Solution

  1. Step 1: Check the engine parameter validity

    The engine parameter is set to 'mongo', which is not a supported RDS engine. MongoDB is not supported by RDS.
  2. Step 2: Verify other parameters

    Allocated storage of 20 GB and instance class db.t3.micro are valid. Master username is provided.
  3. Final Answer:

    The engine name 'mongo' is not supported by RDS -> Option C
  4. Quick Check:

    Unsupported engine name causes failure [OK]
Hint: Check engine names carefully; unsupported names cause errors [OK]
Common Mistakes:
  • Assuming MongoDB is supported by RDS
  • Blaming storage size or instance class incorrectly
  • Overlooking the exact error message
5. You want to migrate an on-premises Oracle database to AWS RDS. Which RDS engine should you choose to ensure compatibility and minimal changes?
hard
A. Oracle
B. PostgreSQL
C. Aurora MySQL
D. SQL Server

Solution

  1. Step 1: Identify the source database engine

    The source is an on-premises Oracle database, so compatibility is key.
  2. Step 2: Choose the matching RDS engine

    AWS RDS supports Oracle as a managed engine, which ensures compatibility and minimal changes during migration.
  3. Step 3: Consider other options

    Aurora MySQL, PostgreSQL, and SQL Server are different engines and would require significant changes.
  4. Final Answer:

    Oracle -> Option A
  5. Quick Check:

    Match source engine to RDS engine for smooth migration [OK]
Hint: Pick the same engine type for easy migration [OK]
Common Mistakes:
  • Choosing Aurora MySQL for Oracle migration
  • Assuming PostgreSQL is compatible with Oracle
  • Ignoring migration compatibility
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard