Applications & Data · Databases
Databases
Systems that store, protect and serve structured data with transactional guarantees, indexing and controlled concurrent access.
IntermediateUpdated 2026-09-01
Overview
Relational databases organise data into tables with enforced schemas and relationships, queried with SQL and protected by ACID transactions. Non relational stores trade some of those guarantees for scale, flexible schema or specific access patterns, document, key value, wide column, graph and time series.
For IT teams the database is usually the availability and recovery centre of gravity of an application. Its backup method, patch cadence and access model deserve more attention than the application tier in front of it.
How it works
- 01Indexes trade write cost and storage for read speed; query plans reveal whether they are used.
- 02Transaction isolation levels determine what concurrent sessions can observe, and are a frequent source of subtle application bugs.
- 03High availability uses replication with automatic failover, always on availability groups, managed failover groups, or replica sets.
- 04Backups must be application consistent and include transaction logs when point in time recovery is required.
Reference table
| Type | Strength | Typical use |
|---|---|---|
| Relational (SQL) | Strong consistency, joins, mature tooling | ERP, finance, line of business systems |
| Document | Flexible schema, developer velocity | Catalogues, content, event payloads |
| Key-value | Very low latency at scale | Sessions, caching, feature flags |
| Wide-column | Huge write volumes, partitioned access | Telemetry, IoT ingestion |
| Graph | Relationship traversal | Identity relationships, fraud, dependency mapping |
| Time-series | Efficient time ordered writes and rollups | Monitoring metrics, historian style data |
Security considerations
- Use managed or federated identity for application access instead of embedded connection string passwords.
- Restrict network reachability to the application tier only; never expose a database to the internet.
- Encrypt at rest and in transit, and apply column level protection or masking for sensitive fields.
- Audit privileged database access separately, DBA activity is rarely covered by application logging.
Common misconfigurations
- Default or shared administrative accounts (sa, root, postgres) still enabled with weak passwords.
- Point in time recovery assumed but transaction log backups never configured.
- Production data copied into test environments without masking.
