Databases are fundamental for storing and managing data. Two broad categories exist: SQL (relational) and NoSQL (non-relational) databases.
SQL databases are based on a structured schema and use Structured Query Language (SQL) for defining and manipulating data.
NoSQL databases provide flexible schemas and are designed for specific data models like key-value, document, column-family, or graph.
Aspect | SQL | NoSQL |
---|---|---|
Schema | Fixed, predefined | Flexible or schema-less |
Scaling | Vertical scaling | Horizontal scaling |
Transactions | Strong ACID compliance | Often eventual consistency |
Query Language | SQL | Varies (MongoDB uses JSON queries, Cassandra uses CQL) |
Use Cases | Traditional apps with complex joins | Large-scale, distributed apps |
For more info, see SQL vs NoSQL Databases.