PostgreSQL Up and Running

Buch PostgreSQL: Up & Running Regina Obe, ihres Zeichens Mitentwicklerin beim PostGIS-Projekt und ebenso Beraterin bei der Paragon Company wie der Co-Autor Leo Hsu, geben mit Ihrem Buch „PostgreSQL: Up and Running, Second Edition von Regina Obe und Leo Hsu (O’Reilly). Copyright 2015 Regina Obe and Leo Hsu, 978-1-4493-7319-1“ einen breit gefächerten Überblick über die Funktionalität von PostgreSQL 9.4.

Auf rund 200 Seiten treffen die Autoren eine Themenauswahl, die dem Leser in verschiedenen Bereichen teils tiefgreifende Einblicke in die Arbeitsweise von PostgreSQL verschafft.

Wer PostgreSQL kennt, der weiss, dass es Unmengen an Dokumentation, HowTos, Bücher und Wikis gibt, in denen man nahezu jeden Aspekt der Konfiguration und des Betriebs der Datenbank nachlesen kann.

Aber gerade die Menge an zur Verfügung stehenden Informationen macht es manchmal schwierig, die richtigen Antworten zu konkreten Fragestellungen zu finden.

Überblick über den Inhalt

Die Autoren stellen folgende Themenbereiche dar:

  • Einstieg in die PostgreSQL Welt (Installation, Tools, Features)
  • Grundlagen der Datenbank Administration
  • Die Nutzung des Kommandozeilen-Tools psql
  • Das graphische Administrations-Tool pgAdmin
  • Datentypen in PostgreSQL (auch JSON und XML)
  • Basics und Weiterführendes zu Tabellen, Constraints und Indexe
  • Eine Darstellung von SQL mit PostgreSQL-Spezialitäten
  • Programmierung von PostgreSQL mittels Funktionen (stored procedures) in verschiedenen Programmiersprachen
  • Ein Kapitel zum Query Performance Tuning
  • Replikation und der Zugriff auf externe Datenquellen

Die Auswahl der Themen zeigt, dass hier sowohl angehende als auch gestandene Datenbank-Administratoren (DBA) angesprochen werden. Die einführenden Kapitel sind gut für diejenigen geeignet, die SQL-Basics kennen und nun mit Hilfe dieses Buches an und mit PostgreSQL wachsen möchten.

Durch die verschiedenen Spezial-Themen wie Query-Optimierung, Funktionsprogrammierung und Replikation ist dieses Buch aber auch für den gestandenen DBA geeignet. Anstatt im überbordenden Original-Handbuch suchen zu müssen, werden hier essenzielle Aspekte aus Sicht der täglichen Praxis dargestellt.

Datentypen in PostgreSQL

Bereits in Version 9.2 wurde in PostreSQL der JSON-Datentyp eingeführt. In diesem Kapitel im Buch wird dargestellt, wie man mittels der SQL-Datenbank mit JSON-Daten hantieren kann. Das in Version 9.4 neu eingeführte binäre JSON wird mit seinen Vor- und Nachteilen und Beispielen erläutert.

Ein weiterer interessanter Abschnitt dieses Kapitels ist die Beschreibung des benutzerdefinierten Datentyps. An verschiedenen Beispielen wird gezeigt, wie eigene Datentypen und die dazu passenden Operatoren definiert werden können.

Darstellung von SQL mit PostgreSQL-Spezialitäten

Dieses Kapitel beschreibt einige Spezialitäten von PostgreSQL. Als erstes werden Views beschrieben. Dabei gehen die Autoren darauf ein, wie Views mit Triggern aktuell gehalten werden können und liefern dazu ausführliche Beispiele.

Die relativ neuen materialized views werden ebenso dargestellt, wie die Anwendung der kürzlich erweiterten common table expressions, mit denen bequem wiederverwendbare Unter-Queries erstellt werden können.

Funktionen in PostgreSQL

Das Kapitel Writing Functions gibt einen Überblick über Funktionen in PostgreSQL. Verschiedene Beispiele für die Sprachen SQL, PL/pgSQL, PL/Python und PL/V8 (ein Javascript-Dialekt) erleichtern den Einstieg in die Nutzung externer Sprachen in der Datenbank.

Query Performance Tuning

Für den erfahrenen PostgreSQL-DBA ist dieses Kapitel mit seinen ausführlichen Erläuterungen zur Query-Analyse und Tipps zur Interpretation dieser Analyse-Ergebnisse äusserst hilfreich. Wenn es heisst, das letzte Quentchen Performance aus der Datenbank zu holen, wird man in diesem Kapitel fündig.

Dabei wird auch das Fine-Tuning des Query-Planers beschrieben und wie sich zum Beispiel unterschiedlich schnelle Speichermedien (Cloud, Platten, SSDs usw.) und das Caching in diesem Zusammenhang auswirken.

Abgeschlossen wird das Kapitel, indem gezeigt wird, wie die Erkenntnisse der Query-Analyse genutzt werden können, um effizientere Queries zu schreiben. Schritt für Schritt werden die einzelnen Optimierungsmöglichkeiten dargestellt und diskutiert.

Replikation

Für alle, die die PostgresSQL-Datenbank nicht als Einzelsystem betreiben, ist dieses Kapitel eine wahre Fundgrube. Neben der ausführlichen Beschreibung der Replikation werden auch der Zugriff auf externe Datenquellen mittels foreign data wrappers (FDW) dargestellt. Wer einfache Dateien (z. B. CSV-Dateien) abfragen möchte oder ferne PostgreSQL-Server, der wird in diesem Kapitel fündig.

Fazit

Die Autoren schaffen es, aus den Unmengen an vorhandener Dokumentation über PostgreSQL mit Hilfe ihrer eigenen praktischen Erfahrung diejenigen Perlen herauszupicken, die den Leser nicht nur schnell an die Arbeit mit PostgreSQL bringen, sondern auch weiterführende Hilfen liefern. Das Buch ist in leicht verständlichem Englisch geschrieben und stellt die Zusammenhänge nicht nur aufgrund der vielfältigen Beispiele sehr anschaulich dar.

Der Titel lautet „Up & Running” und genau dabei hilft das Buch. Die PostgreSQL-Datenbank zu installieren, zu konfigurieren, und auch bei fortgeschrittenen Ansprüchen Antworten für den Betrieb zu liefern.

Wer wissen möchte, ob das Buch das richtige ist, sollte sich einfach das Inhaltsverzeichnis (zum Beispiel auf dieser Produktseite) anschauen. Falls da genug interessante Themen dabei sind, die einen Kauf rechtfertigen könnten, empfehle ich: zugreifen!