0
0
DynamoDBquery~10 mins

NoSQL vs relational database comparison in DynamoDB - Visual Side-by-Side Comparison

Choose your learning style9 modes available
Concept Flow - NoSQL vs relational database comparison
Start
Choose Database Type
Relational DB
Tables with Rows
Fixed Schema
Use SQL Queries
Strong ACID
Good for Complex
Relationships
End
This flow shows the choice between relational and NoSQL databases, highlighting their structure, schema, query style, consistency, and use cases.
Execution Sample
DynamoDB
-- Relational DB example
SELECT * FROM Users WHERE Age > 30;

-- NoSQL (DynamoDB) example
aws dynamodb scan --table-name Users --filter-expression "Age > :age" --expression-attribute-values '{":age":{"N":"30"}}'
This shows a simple query to get users older than 30 in both relational SQL and DynamoDB NoSQL style.
Execution Table
StepDatabase TypeStructureSchemaQuery StyleConsistencyUse Case
1RelationalTables with rows and columnsFixed schema (defined columns)SQL queriesStrong ACID (Atomicity, Consistency, Isolation, Durability)Good for complex relationships and transactions
2NoSQL (DynamoDB)Tables with items (key-value pairs)Flexible schema (attributes can vary)API calls or query expressionsEventual consistency by default, can be configured for strong consistencyGood for big data, high scalability, flexible data models
3RelationalRows must follow schemaSchema changes require migrationsJoins supportedTransactions supportedStructured data with relations
4NoSQL (DynamoDB)Items can have different attributesSchema changes easy, no migrations neededNo joins, denormalization commonLimited transactions (ACID in some cases)Unstructured or semi-structured data
5RelationalScaling vertically (bigger servers)Schema enforces data integrityComplex queries possibleStrong consistency alwaysFinancial, ERP, CRM systems
6NoSQL (DynamoDB)Scaling horizontally (more servers)Flexible for evolving dataSimple queries, no complex joinsEventual consistency for speedWeb apps, IoT, real-time analytics
7End-----
💡 Comparison ends after listing key differences and use cases for both database types.
Variable Tracker
AspectRelational DBNoSQL (DynamoDB)
StructureTables with rows and columnsTables with items (key-value pairs)
SchemaFixed, predefined columnsFlexible, attributes vary per item
Query StyleSQL languageAPI calls or expressions
ConsistencyStrong ACIDEventual by default, optional strong
ScalingVertical scalingHorizontal scaling
Use CaseComplex relationships, transactionsBig data, scalability, flexible data
Key Moments - 3 Insights
Why does NoSQL allow flexible schema while relational databases do not?
Because NoSQL stores data as items with varying attributes (see execution_table rows 2 and 4), it does not require all data to fit a fixed column structure like relational tables do (rows 1 and 3).
How does consistency differ between relational and DynamoDB NoSQL?
Relational databases guarantee strong ACID consistency (rows 1 and 5), while DynamoDB defaults to eventual consistency for speed but can be configured for strong consistency (rows 2 and 6).
Why are joins common in relational but not in NoSQL?
Relational databases support joins to combine tables (row 3), but NoSQL databases like DynamoDB do not support joins and instead use denormalized data to avoid complex queries (row 4).
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, at which step is it mentioned that NoSQL uses flexible schema?
AStep 2
BStep 3
CStep 1
DStep 5
💡 Hint
Check the 'Schema' column for NoSQL in step 2.
According to variable_tracker, which database type uses vertical scaling?
ANoSQL (DynamoDB)
BRelational DB
CBoth
DNeither
💡 Hint
Look at the 'Scaling' row in variable_tracker.
From execution_table, which database type supports complex joins?
ABoth
BNoSQL (DynamoDB)
CRelational DB
DNone
💡 Hint
See the 'Query Style' and 'Use Case' columns in step 3.
Concept Snapshot
NoSQL vs Relational Databases:
- Relational: fixed schema, tables with rows/columns, SQL queries, strong ACID consistency.
- NoSQL (DynamoDB): flexible schema, key-value items, API queries, eventual consistency by default.
- Relational scales vertically; NoSQL scales horizontally.
- Use relational for complex relationships; NoSQL for big data and scalability.
- NoSQL avoids joins; relational supports them for complex queries.
Full Transcript
This visual execution compares NoSQL and relational databases. It starts by choosing the database type, then shows relational databases have fixed schemas with tables and rows, using SQL queries and strong ACID consistency. NoSQL databases like DynamoDB have flexible schemas with items that can vary, use API calls for queries, and offer eventual consistency by default. Relational databases scale vertically and are good for complex relationships and transactions, while NoSQL scales horizontally and suits big data and flexible models. Key differences include schema rigidity, query style, consistency guarantees, and scaling methods. Joins are supported in relational but not in NoSQL, which uses denormalization instead. This helps beginners see the practical differences and when to use each type.