Courseiva
Workload-Specific Database DesigneasyMultiple ChoiceObjective-mapped

Amazon DynamoDB for Flexible Schema Document Management

A company is building a document management system where each document can have multiple tags and users need to query documents by any combination of tags. The number of tags per document is up to 20, and the total number of documents is expected to be 50 million. Which database design is most appropriate for this flexible tag-based querying?

Quick Answer

The answer is Amazon DynamoDB with a global secondary index on the tag attribute, because this design directly supports flexible schema document management and efficient tag queries without rigid schema constraints. DynamoDB’s ability to store each document as an item with a list or set of tags, combined with a global secondary index that indexes each tag value, allows you to query by any single tag instantly; for queries involving multiple tags, you perform application-side intersection of the results from the index. On the AWS Certified Database Specialty DBS-C01 exam, this scenario tests your understanding of when to use NoSQL over relational or graph databases—a common trap is choosing RDS with join tables, which fails at 50 million documents due to join overhead, or Neptune, which is overkill for simple tag lookups. Remember the memory tip: “GSI on tags, intersect in app” to avoid complex joins and keep queries fast at scale.

⚠ Common exam trap

A common mix-up: candidates choose Amazon RDS for MySQL (Option B) because they assume a normalized relational schema is the 'correct' way to handle many-to-many relationships, but they fail to consider the performance and scalability challenges of multi-table joins at 50 million documents with flexible tag queries.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Amazon DynamoDB with a global secondary index on the tag attribute

Amazon DynamoDB with a global secondary index on the tag attribute is the most appropriate design because it supports flexible, low-latency queries on any combination of tags at scale. DynamoDB's single-table design with a GSI allows you to query documents by a specific tag efficiently, and by using composite sort keys or multiple GSIs, you can support queries on multiple tag combinations without the overhead of joins or schema normalization. This approach handles 50 million documents with up to 20 tags per document while maintaining predictable performance.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Amazon DynamoDB with a global secondary index on the tag attribute

    Why this is correct

    DynamoDB scales easily and supports flexible tag queries.

  • Amazon RDS for MySQL with a normalized schema

    Why it's wrong here

    Joins on millions of documents can be slow.

  • Amazon Neptune

    Why it's wrong here

    Neptune is overkill for simple tag-based queries.

  • Amazon ElastiCache for Memcached

    Why it's wrong here

    Memcached is a cache, not a persistent data store.

About these practice questions

This DBS-C01 question is part of Courseiva's 1,663-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on DBS-C01

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A startup is building a mobile app that requires a scalable NoSQL database. The data model includes user profiles with variable attributes that change over time. The database must support high read throughput and low latency. Which AWS database is best suited?

easy
  • A.Amazon Neptune
  • B.Amazon RDS for MySQL
  • C.Amazon DynamoDB
  • D.Amazon Redshift

Why C: Amazon DynamoDB is a fully managed NoSQL key-value and document database that delivers single-digit millisecond latency at any scale. It supports flexible schema with variable attributes, making it ideal for user profiles that change over time, and its provisioned or on-demand capacity modes enable high read throughput with consistent low latency.

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DBS-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DBS-C01 exam.