What is the AWS Database Specialty exam number?
The AWS Certified Database - Specialty exam code is DBS-C01. It covers relational and non-relational databases including RDS, Aurora, DynamoDB, Redshift, ElastiCache, Neptune, and database migration services. Single-table design stores multiple entity types in one DynamoDB table, using composite primary keys where PK identifies the entity type and SK identifies the specific record or relationship.
The AWS Certified Database - Specialty (DBS-C01) tests deep knowledge of database services on AWS — not just which service to use, but how each database engine works, how to optimize performance, how to ensure high availability, and how to migrate existing databases to AWS. This exam is appropriate for database administrators, architects, and developers who design and operate database solutions.
The exam is less about AWS console skills and more about database engineering fundamentals applied to AWS services.
Exam Overview
The DBS-C01 exam contains 65 questions (50 scored, 15 unscored) with a 180-minute time limit. The passing score is 750 out of 1000.
Domain Weights
| Domain | Weight |
|---|---|
| Domain 1: Workload-Specific Database Design | 26% |
| Domain 2: Deployment and Migration | 20% |
| Domain 3: Management and Operations | 18% |
| Domain 4: Monitoring and Troubleshooting | 18% |
| Domain 5: Database Security | 18% |
Domain 1: Workload-Specific Database Design (26%)
This domain tests your ability to select the correct database service for a given workload and design the schema or data model appropriately.
Database Service Selection Matrix
| Use Case | Service | Reason |
|---|---|---|
| Relational OLTP | Amazon RDS or Aurora | ACID transactions, SQL queries |
| High-performance relational | Amazon Aurora | Up to 5x MySQL, 3x PostgreSQL throughput |
| Serverless relational | Aurora Serverless v2 | Variable or unpredictable workloads |
| Key-value / document | Amazon DynamoDB | Single-digit millisecond latency at any scale |
| In-memory caching | Amazon ElastiCache | Sub-millisecond cache reads |
| In-memory primary database | Amazon MemoryDB for Redis | Redis-compatible, durable, fully managed |
| Time-series | Amazon Timestream | Purpose-built for IoT and operational metrics |
| Ledger / immutable audit | Amazon QLDB | Cryptographically verifiable transaction log |
| Graph | Amazon Neptune | Relationships and graph traversals |
| Analytics / data warehouse | Amazon Redshift | Columnar storage, petabyte-scale OLAP |
| Full-text search | Amazon OpenSearch Service | Search, log analytics |
DynamoDB Data Modeling
DynamoDB is one of the deepest topics on this exam. The exam tests access pattern-driven design.
Single-table design: Minimize the number of tables by storing multiple entity types in one table. Use a composite primary key where PK identifies the entity type and SK identifies a specific record or relationship.
Access pattern example:
An e-commerce system needs to:
Get order by order ID
List all orders for a customer
Get all items in an order
PK SK Attributes
CUSTOMER#C001 CUSTOMER#C001 name, email
CUSTOMER#C001 ORDER#O001 status, total
ORDER#O001 ITEM#P001 quantity, price
ORDER#O001 ITEM#P002 quantity, price
This design supports all three access patterns using the base table and no additional indexes.
GSI overloading: Use the same GSI across multiple entity types by storing different values in the index key attributes depending on the entity type.
DynamoDB Streams with Lambda: For event-driven processing, DynamoDB Streams captures changes and delivers them to Lambda with exactly-once semantics. Use cases: materializing views, replicating to other data stores, audit logging.
Redshift Architecture
Redshift uses massively parallel processing (MPP) across compute nodes:
Leader node: Receives queries, creates execution plans, coordinates nodes
Compute nodes: Execute query fragments, return results to leader
Distribution styles: EVEN (round-robin), KEY (same key values on same node), ALL (replicate small tables to all nodes), AUTO (AWS decides)
Sort keys: Compound sort keys speed up range queries and joins; interleaved sort keys give equal weight to all columns in the key
Redshift Spectrum: Query data in S3 without loading it into Redshift. Useful for querying historical data while keeping hot data in the cluster.
Domain 2: Deployment and Migration (20%)
AWS Database Migration Service (DMS)
DMS migrates databases with minimal downtime:
Migration types:
| Type | Description |
|---|---|
| Full load | Migrates existing data only; no ongoing replication |
| Full load + CDC | Migrates existing data, then replicates ongoing changes via Change Data Capture |
| CDC only | Replicates ongoing changes from a database already migrated by another method |
Supported sources and targets: DMS supports homogeneous migrations (Oracle to Oracle) and heterogeneous migrations (Oracle to Aurora PostgreSQL). Heterogeneous migrations usually require the Schema Conversion Tool (SCT) first.
Replication instance: A managed EC2 instance that runs the DMS engine. Size it based on migration volume and number of concurrent tasks.
Common DMS issues:
LOB (Large Object) handling: Configure full LOB mode or limited LOB mode based on object sizes
Network bandwidth: Ensure adequate bandwidth between source, replication instance, and target
Source read impact: Full load can impact source database performance; run during off-peak hours
AWS Schema Conversion Tool (SCT)
SCT converts database schemas from one engine to another:
Converts DDL statements (tables, views, stored procedures, functions, triggers)
Reports conversion complexity; flags objects requiring manual conversion
Does not migrate data — only schema; DMS migrates data
Oracle to PostgreSQL migration challenges:
PL/SQL to PL/pgSQL: Most logic converts with SCT, but complex packages require rewriting
Oracle sequences → PostgreSQL sequences or SERIAL
Oracle-specific data types (VARCHAR2, NUMBER) → PostgreSQL equivalents
RDS Snapshot Migration
For smaller databases with acceptable downtime:
Take an RDS snapshot
Restore snapshot to new region or engine version
Test application against new instance
Update connection string during maintenance window
For cross-account migration: Share the snapshot with the target account, then restore.
Domain 3: Management and Operations (18%)
RDS High Availability and Scaling
Multi-AZ deployment:
Synchronous replication to a standby in a different AZ
Automatic failover in 1-2 minutes when primary fails
Standby is not readable (not a read replica)
Maintenance and snapshots occur on the standby to minimize primary impact
RDS Read Replicas:
Asynchronous replication; replica lag varies by write load
Up to 5 read replicas per primary (Aurora supports 15)
Can be promoted to standalone primary (breaks replication)
Cross-region read replicas for DR and geographic distribution
Read replicas count toward storage costs
Aurora Cluster architecture:
Aurora separates compute (DB instances) from storage (Aurora storage layer):
Cluster volume: Automatically distributed across 3 AZs, 6 copies of data
Writer endpoint: Always routes to the primary instance
Reader endpoint: Load-balances reads across available Aurora Replicas
Custom endpoints: Point to a subset of instances (e.g., a dedicated analytical replica)
Aurora Global Database:
Primary region handles writes
Secondary regions (up to 5) have read-only replicas with replication lag < 1 second
Managed failover promotes a secondary region to primary within minutes
DynamoDB Operations
Capacity planning:
| Mode | When to Use |
|---|---|
| Provisioned (+ Auto Scaling) | Predictable traffic; lower cost at scale |
| On-demand | Unpredictable or spiky traffic; pay per request |
Global Tables: Multi-region, multi-active tables. All regions can read and write. DynamoDB resolves conflicts using last-write-wins. Global Tables require DynamoDB Streams enabled.
Time To Live (TTL): Automatically delete expired items at no cost. Set an attribute containing a Unix epoch timestamp. Items are deleted within 48 hours of expiration.
Domain 4: Monitoring and Troubleshooting (18%)
RDS Performance Insights
Performance Insights provides a dashboard showing database load by:
Wait events: What the database is waiting on (CPU, I/O, locks, network)
SQL statements: Top queries contributing to load
Hosts and users: Source of load by client host or username
The Database Load (DB Load) metric shows average active sessions. If DB Load exceeds the number of vCPUs, the database is overloaded.
CloudWatch Metrics for Databases
Critical RDS metrics:
| Metric | Meaning |
|---|---|
| CPUUtilization | Engine CPU usage |
| DatabaseConnections | Open connections |
| FreeStorageSpace | Available storage |
| ReadIOPS / WriteIOPS | I/O operations per second |
| ReadLatency / WriteLatency | Average I/O latency |
| ReplicaLag | Replication delay for read replicas |
DynamoDB metrics:
ConsumedReadCapacityUnits/ConsumedWriteCapacityUnitsThrottledRequests: Requests rejected due to capacity limitsSuccessfulRequestLatency: Latency percentiles
Slow Query Troubleshooting
RDS slow query logs (MySQL):
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 1; - Log queries > 1 second
Enable via RDS parameter group; publish to CloudWatch Logs for centralized analysis.
PostgreSQL auto_explain: Automatically logs execution plans for slow queries. Configure via the auto_explain extension in the parameter group.
Domain 5: Database Security (18%)
Encryption at Rest and in Transit
RDS encryption:
Enable at creation time; cannot enable encryption on an existing unencrypted instance
Workaround for encrypting an existing instance: snapshot, copy with encryption, restore
Read replicas inherit the encryption status of the primary; cross-region replicas can use a different CMK in the target region
DynamoDB encryption:
Enabled by default using an AWS-owned key
Can specify an AWS-managed key or a customer-managed key
No performance impact
In transit: Enable require_ssl or ssl parameter in the RDS parameter group. Force SSL with an IAM policy condition:
{
"Condition": {
"Bool": {
"aws:SecureTransport": "false"
}
},
"Effect": "Deny"
}
Database Authentication
IAM database authentication (RDS):
Generate a 15-minute authentication token using IAM credentials
Token replaces the database password
Supported for MySQL and PostgreSQL on RDS and Aurora
Useful for applications using IAM roles; eliminates static password management
Secrets Manager automatic rotation:
Rotation Lambda function updates the database password and the secret value atomically
Built-in Lambda templates for RDS MySQL, PostgreSQL, Oracle, SQL Server, and Aurora
Configure rotation interval (e.g., 30 days)
"The DBS-C01 exam is fundamentally about knowing the access patterns before you choose a database engine. Candidates who try to memorize service features without understanding when each database shines will struggle with the scenario-based questions." — Gilad Bihary, co-author of the AWS Certified Database Study Guide (Sybex, 2022)
Study Timeline
Recommended: 10-12 weeks. Requires SQL fundamentals and database administration experience.
| Week | Focus |
|---|---|
| 1-2 | DynamoDB data modeling, access patterns, GSI design |
| 3-4 | RDS multi-AZ, read replicas, Aurora architecture |
| 5-6 | DMS, SCT, migration strategies |
| 7-8 | Redshift architecture, Timestream, Neptune overview |
| 9-10 | Monitoring, Performance Insights, slow query analysis |
| 11-12 | Security, encryption, IAM auth, practice exams |
See also: AWS Solutions Architect Associate (SAA-C03) Study Guide: Domains, Services, and Scenarios
Database Specialty career impact and salary outcomes
The AWS Database Specialty targets experienced database engineers and DBAs migrating to cloud-native operations. The credential carries meaningful weight in enterprises running heterogeneous database portfolios on AWS.
| Role | Seniority | US salary range (2024-2025) [1] | AWS DBS-C01 impact |
|---|---|---|---|
| Database Administrator | Mid | $100,000-$140,000 | $5,000-$10,000 uplift |
| Senior DBA | Senior | $130,000-$185,000 | $7,000-$15,000 uplift |
| Cloud Database Engineer | Mid | $115,000-$160,000 | $8,000-$15,000 uplift |
| Cloud Database Engineer | Senior | $150,000-$210,000 | $10,000-$20,000 uplift |
| Data Platform Engineer | Senior | $155,000-$215,000 | $10,000-$20,000 uplift |
| Database Solutions Architect | Senior | $175,000-$240,000 | Near-required credential |
Related AWS specialty certifications
| Certification | Current exam code | Fee | Overlap with DBS-C01 |
|---|---|---|---|
| AWS SAA-C03 | SAA-C03 | $150 | Foundational; partial overlap on RDS/DynamoDB basics |
| AWS SAP-C02 | SAP-C02 | $300 | Strong overlap on multi-region database architectures |
| AWS Data Analytics Specialty | DAS-C01 | $300 | Redshift overlap; different emphasis |
| AWS DevOps Engineer Professional | DOP-C02 | $300 | Database automation and CI/CD patterns |
| AWS Security Specialty | SCS-C02 | $300 | Database encryption and IAM auth |
Database engine selection matrix
The DBS-C01 heavily tests the candidate's ability to match business requirements to the correct database engine. The table below summarizes the typical decision criteria.
| Workload pattern | Best-fit engine | Rationale |
|---|---|---|
| High-volume OLTP with complex queries | Amazon RDS for PostgreSQL / Aurora PostgreSQL | SQL flexibility + ACID; Aurora scales storage automatically |
| Web-scale key-value lookups | Amazon DynamoDB | Single-digit ms latency at any scale; managed partitioning |
| Analytical queries on terabytes of data | Amazon Redshift | Columnar storage; MPP architecture |
| Time-series ingestion | Amazon Timestream | Purpose-built; automatic tiering to magnetic storage |
| Graph queries on relationship data | Amazon Neptune | Property graph + RDF; Gremlin + SPARQL |
| Document-oriented flexible schema | Amazon DocumentDB | MongoDB-compatible with managed operations |
| Caching layer with sub-ms reads | Amazon ElastiCache | Redis or Memcached; in-memory |
| Search and log analytics | Amazon OpenSearch Service | Full-text search; Kibana-style dashboards |
| Ledger / immutable records | Amazon QLDB | Cryptographic verification; append-only |
| Legacy SQL Server with .NET | RDS for SQL Server | Commercial licensing included; easiest migration path |
Exam questions frequently present scenarios where two or three engines could technically work but one is clearly optimal based on a specific constraint - cost, consistency requirements, write-throughput, or compliance. Reading the question carefully to identify the tie-breaking constraint is the key skill.
Common DBS-C01 scenario categories
The exam is heavy on migration scenarios, cross-engine selection, and operational troubleshooting. Candidates should practice the specific scenario types below.
Oracle to PostgreSQL migration - SCT + DMS + schema refactoring; cut-over strategies with minimal downtime.
SQL Server to Aurora MySQL migration - feature parity assessment, application refactoring scope, hybrid operation during transition.
Sharded MongoDB to DynamoDB migration - data model transformation, GSI design, access pattern analysis.
Multi-region active-active DynamoDB - Global Tables design, conflict resolution, latency requirements.
Read-heavy RDS PostgreSQL scaling - read replica placement, Aurora Global Database vs cross-region replicas, connection pooling (RDS Proxy).
Write-scale Aurora MySQL - vertical scaling limits, sharding strategies, Aurora Serverless v2 applicability.
OLAP workload on Redshift - node type selection (RA3 vs DC2), distribution key vs sort key, concurrency scaling.
Time-series data ingestion - Timestream vs DynamoDB vs OpenSearch trade-offs.
"The Database Specialty rewards candidates who have made real migration decisions and lived with the consequences. Memorizing service features without understanding the operational trade-offs - connection scaling, lock contention, replication lag, backup strategies under business constraints - produces candidates who pass multiple-choice questions but fail the scenario-based questions that dominate the exam." - AWS Database Hero Gilad Bihary, in his Sybex study guide preface [2].
Renewal and continuing education
AWS certifications expire after three years. Recertification requires retaking the current exam version at full price ($300 for specialty tier). There is no continuing education alternative. The 50% post-fail retake voucher applies to recerts as well as initial attempts.
Database Specialty candidates should plan for:
- Continuous consumption of AWS database blog posts and re:Invent recordings to track new features.
- Periodic hands-on review of services that change significantly (Aurora Serverless v2, DynamoDB enhancements).
- Budgeted recert fee of $300 every three years.
References
[1] Robert Half. (2024). 2024 Technology Salary Guide. https://www.roberthalf.com/us/en/insights/salary-guide/technology
[2] Bihary, Gilad and Skobriev, Slava. "AWS Certified Database Study Guide." Sybex, 2022.
AWS. "AWS Certified Database - Specialty Exam Guide (DBS-C01)." https://d1.awsstatic.com/training-and-certification/docs-database-specialty/AWS-Certified-Database-Specialty_Exam-Guide.pdf
AWS. "Amazon RDS User Guide." https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html
AWS. "Amazon DynamoDB Developer Guide." https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html
AWS. "Best Practices for DynamoDB." https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/best-practices.html
AWS. "AWS Database Migration Service User Guide." https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html
AWS. "Amazon Aurora User Guide." https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html
AWS. "Amazon Redshift Database Developer Guide." https://docs.aws.amazon.com/redshift/latest/dg/welcome.html
Payscale. (2024). AWS Certified Database Specialty Salary Data. https://www.payscale.com/research/US/Certification=AWS_Certified_Database_-_Specialty
Frequently Asked Questions
What is the AWS Database Specialty exam number?
The AWS Certified Database - Specialty exam code is DBS-C01. It covers relational and non-relational databases including RDS, Aurora, DynamoDB, Redshift, ElastiCache, Neptune, and database migration services.
What is DynamoDB single-table design?
Single-table design stores multiple entity types in one DynamoDB table, using composite primary keys where PK identifies the entity type and SK identifies the specific record or relationship. This approach pre-joins data and supports all access patterns without expensive Scan operations.
What is the difference between RDS Multi-AZ and Read Replicas?
Multi-AZ uses synchronous replication to a standby for high availability and automatic failover; the standby is not readable. Read Replicas use asynchronous replication for read scaling; they can be promoted to standalone but are not automatic failover targets (except in Aurora).
How do you encrypt an existing unencrypted RDS instance?
You cannot enable encryption on an existing unencrypted instance directly. The workaround is to take a snapshot of the instance, copy the snapshot with encryption enabled, then restore the encrypted snapshot as a new database instance.
What is the difference between DMS Full Load and Full Load + CDC?
Full Load migrates existing data only and does not capture ongoing changes. Full Load + CDC migrates existing data and then continuously replicates new changes using Change Data Capture, allowing near-zero-downtime migrations.
