PostgreSQL

PostgreSQL ist ein objektrelationales Datenbankmanagementsystem

PostgreSQL ist ein objektrelationales Datenbankmanagementsystem, das als Open Source Software frei verfügbar ist und ohne Lizensierung heruntergeladen und benutzt werden darf. Ursprünglich wurde das zugrunde liegende PostgreS als Projekt an der University of California am Berkeley Computer Science Department entwickelt. Seither haben viele Entwickler rund um den Globus an diesem Code weitergearbeitet und das Programm bekam 1996 den Namen PostgreSQL.

PostgreSQL wird in Expertenkreisen als fortschrittliches Open Source Datenbanksystem  geschätzt. PostgreSQL unterstützt die SQL92 und SQL99 Standards und bietet darüber hinaus eine Menge eigener Erweiterungen an.

Als objektrelationales Datenbanksystem implementiert PostgreSQL die Speicherung von Daten und Objektidentitäten und erlaubt Benutzern, das System um selbstdefinierte Datentypen, Operatoren und Funktionen zu erweitern. Ein fortschrittliches Transaktionsmanagement gehört ebenfalls zu den Leistungsmerkmalen von PostgreSQL,  die Definition von Triggern und Regeln, mit denen Zugriffe auf Datenbankobjekte gesteuert werden können.

PostgreSQL realisiert ein riesiges Speichervolumen

PostgreSQL basiert auf einem so genannten Client-Server-Modell: Ein Serverprozess verwaltet die Datenbankdateien sowie die Verbindungen, die von Client-Programmen zum Server aufgebaut werden und bearbeitet die Anfragen, die von diesen Client-Programmen gestellt wurden. Alle diese Aufgaben werden bei PostgreSQL vom Serverprogramm „postmaster“ erledigt.

Um mit dem „postmaster“ kommunizieren zu können, kann man auf unterschiedliche Client-Programme zurückgreifen. Mit einem Client-Programm werden Verbindungen zum Datenbankserver aufgebaut und Aktionen in der Datenbank ausgeführt. In der PostgreSQL-Distribution direkt enthalten ist „psql“, ein schneller und einfacher Datenbankmonitor. pgAccess, ein grafischer Client, wird in den meisten Linux-Distributionen mitgeliefert und läuft auch unter Windows  bei interaktiven Webseiten übernimmt der Webserver die Rolle des Clients. Typisch für das Client-Server-Modell ist eine verteilte Architektur: Client und Server müssen nicht auf derselben Maschine installiert sein und sind es tatsächlich in den wenigsten Fällen. Sie kommunizieren über eine TCP/IP Verbindung. Der PostgreSQL Server kann mehrere parallele Verbindungen verwalten. Jedesmal, wenn ein Client sich mit dem Server verbindet, startet der „postmaster“ einen neuen Prozess, der dann die Client-Server-Kommunikation übernimmt. Das Speichervolumen von PostgreSQL ist gigantisch: In der Praxis werden Anwender wahrscheinlich eher durch ihr eigenes Speichervolumen beschränkt als durch die Grenzen von PostgreSQL. Die Größe einer Datenbank ist unbegrenzt und eine Tabelle kann bis zu 32 Tera-Byte umfassen. Diese Tabelle kann unbegrenzt viele Datensätze enthalten, die maximal 1.6 TB groß sein können. Lediglich die Anzahl der Spalten ist auf 250 – 1600 begrenzt, je nach dem, welche Datentypen verwendet wurden. Jedes Feld kann Daten bis zu 1 Gigabyte aufnehmen und für jede Tabelle kann man unbegrenzt viele Indexe definieren.

Weitere Informationen zum Thema PostgreSQL gibt es auf der Website der Wikipedia Enzyklopädie https://de.wikipedia.org/wiki/PostgreSQL und auf der Website des Herstellers https://www.postgresql.org/