This post is an introduction to databases.
Database Properties
Database properties featured on this post:
- ACID
- CRUD
ACID Database Transaction Properties
ACID (atomicity, consistency, isolation, durability) is a set of desired properties regarding database transactions.
CRUD Persistent Storage Operations
Create, Read, Update and Delete (CRUD) are the for basic operations for persistent storage.
Create, Read, Update and Delete at Wikipedia
Database Paradigms
Types of databases:
- Relational
- Key Value
- Wide column
- Document
- Graph
- Search
- Object-oriented
- Multi-model
You can find an introduction to relational databases on this post.
NoSQL are all those databases that are not relational. You can find a list of NoSQL databases on this post.
Database Locality
Database locality defines where the data within a database is located.
Database types by locality:
- Centralized database
- Distributed database
- Sharded database
Centralized Database
A centralized database stores all data in a single database.
Distributed Database
A distributed database stores data in multiple database nodes.
A sharded database is a subtype of distributed database. Data is split in columns or rows and distributed in different databases. Database sharding is the process of storing a large database across multiple machines.
The Paxos algorithm is a consensus algorithm to ensure that multiple nodes in a distributed system agree a single value.
Database Support Lifecycle
You can find a list with links to database support lifecycle on this post.
Application Connectivity to Databases
There are different ways to connect an application to a databases.
- ODBC
- JDBC
ODBC
Open Database Connectivity (ODBC) is an interface to connect an application to any database.
JDBC
Java Database Connectivity (JDBC) is an API to connect Java applications to databases.
JDBC uses different types of drivers.
JDBC drivers types:
- Type-1 driver / JDBC-ODBC bridge driver
- Type-2 driver / Native-API driver
- Type-3 driver / Network Protocol driver
- Type-4 driver / Thin driver
A type-3 driver use a network protocol and middleware to communicate to the servers.
Database Architecture
Databases architectures featured on this post:
- ANSI-SPARC Architecture
ANSI-SPARC Architecture
ANSI-SPARC architecture is a database architecture.
Levels featured on ANSI-SPARC
- External
- Conceptual
- Internal
The external level is the closest to the user. It contains the external views to the database and allows each user to see only those parts of the schemas in which the user is interested.
The contextual level.
The internal level.
ANSI-SPARC architecture at Wikipedia
Database Security
You can read this post about database security.
You might also be interested in…
External References
- Database paradigms
- Jeff Delaney; “Seven databases paradigms“; Fireship.io, 2020