PostgreSQL
Ein open-source, objekt-relationales Datenbank-System.
Ursprünglich 1986 an der Universität Berkeley in Californien entwickelt.
Features
- ACID-Compliance
- Transactional
- Concurrent
- Row Level Security
- Unterstützung von
- Strukturierte Datentypen
- Benutzerdefinierte Datentypen
- Multidimensionale Arrays
- Geometrie
- Key-Value-Speicher
- Dokumente: JSON-Daten
- Volltextsuche
- Materialized Views
- Erweiterbarkeit durch Mods
- pgvector: Hybride Vector-Datenbank-Suche
- PostGIS
- PostgREST
- pg_graphql
Architektur
Client-Server-Architektur
Server Hauptprozess namens Postmaster erstellt einen Backendprozess für jede Verbindung.
Storage
Daten auf Festplatte werden in einem Verzeichnis namens Data Cluster gespeichert, das die
- Datenbanken
- Schemas
- Tabellen
- Indizes
- WALs (Write Ahead Logging Logs)
enthält.
Datenspeichermodell
Jede Tabelle ist gespeichert in einem oder mehreren Heap Files.
Heap File wird 8 kB Seiten-weise auf Festplatte gespeichert.
Eine Seite kann mehrere Zeilen einer Tabelle enthalten.
Sie enthält Metadaten, Referenzen und Tupel, was die Postgres-interne Repräsentation von Zeilen ist.
Durch die Nutzung von Heaps werden Tupel in nicht geordneter Weise auf Festplatte gespeichert.
TOAST-Technik
TOAST steht für The Oversized-Attribute Storage Technique.
