24th September 2020: PostgreSQL 13 Released!
This page in: Chinese / English / French / German / Hebrew / Indonesian / Japanese / Korean / Polish / Portuguese / Russian / Spanish

PostgreSQL 13 Press Kit

Contents

Original Press Release

PostgreSQL 13 Released!

Die PostgreSQL Global Development Group hat heute die Veröffentlichung von PostgreSQL 13, der aktuellsten Version des weltweit führenden Open-Source-SQL-Datenbanksystems, bekannt gegeben.

PostgreSQL 13 enthält wesentliche Verbesserungen bei der Indizierung, was großen Datenbanken zugute kommt, einschließlich Platzersparnis und Leistungsgewinnen für Indizes, schnellere Antwortzeiten für Abfragen, welche Aggregate oder Partitionen verwenden, sowie eine bessere Planung der Anfragen bei Verwendung erweiterter Statistiken.

Zusammen mit stark nachgefragten Features wie paralleles Vacuum und inkrementelles Sortieren, bietet PostgreSQL 13 ein besseres Datenmanagement für große und kleine Workloads. Das beinhaltet Optimierungen für die tägliche Administration, mehr Komfort für Applikationsentwickler, und Verbesserungen bei der Sicherheit.

"PostgreSQL 13 zeigt die Zusammenarbeit und das Engagement unserer globalen Community bei der Verbesserung der weltweit fortschrittlichsten relationalen Open Source Datenbank", sagt Peter Eisentraut, ein Mitglied des PostgreSQL-Kernteams. "Die Innovationen, die jede Version mit sich bringt, und die zusammen mit der bekannten Zuverlässigkeit und Stabilität einhergehen, sind der Grund, warum immer mehr Menschen PostgreSQL für ihre Zwecke verwenden."

PostgreSQL, ein innovatives Management System für Daten, bekannt für seine Robustheit und Zuverlässigkeit, profitiert von über 25 Jahren Open Source Entwicklung und einer globalen Entwicklergemeinschaft, und hat sich zur bevorzugten Open Source Datenbank für Unternehmen jeder Größe entwickelt.

Kontinuierliche Geschwindigkeitsverbesserungen

Aufbauend auf der Arbeit der vorherigen Version, kann PostgreSQL 13 nun effektiv duplizierte Daten in B-Tree Indexes verarbeiten. Der B-Tree Index ist der standardmäßig verwendete Datenbank-Index und wird am häufigsten eingesetzt. Dies reduziert den Gesamtspeicherplatz für B-Tree Indexes und verbessert allgemein die Geschwindigkeit von Abfragen.

PostgreSQL 13 führt eine inkrementelle Sortierung ein, bei der bereits sortierte Daten eines früheren Schrittes die Sortierung in späteren Ausführungsschritten beschleunigt. Zusätzlich kann PostgreSQL nun die erweiterten Statistiken nutzen (erreichbar über CREATE STATISTICS). Dies erstellt verbesserte Abfragepläne für Abfragen mit OR - Formulierungen oder IN/ANY - Suchen über Listen.

In PostgreSQL 13 können mehr Abfragevarianten die Aggregierungen und Sortierungs-Sets verwenden, da die Effizienz der Hash-Aggregierung in PostgreSQL verbessert wurde. Abfragen mit grossen Aggregaten müssen nun nicht mehr komplett in den RAM passen. Abfragen auf partitionierte Tabellen laufen in der Regel schneller, da mehr Fälle vom Planer gar nicht erst in Betracht gezogen werden. Dies trifft zu wenn entweder zur Plan- oder zur Laufzeit festgestellt wird, dass die Partitionen keine relevanten Daten enthalten können. Partitionen können zudem direkt miteinander verbunden (ge-joined) werden, ohne den Umweg über die partitionierte Tabelle zu gehen. Dies spart erheblichen Aufwand beim Ausführen derartiger Abfragen.

Administrative Optimierungen

Vacuuming ist ein wesentlicher Bestandteil der PostgreSQL Administration. Es erlaubt der Datenbank Speicherplatz zurückzugeben, nachdem Datensätze geändert und gelöscht wurden. Dieser Prozess kann eine administrative Herausforderung sein, auch wenn in früheren PostgreSQL Versionen bereits viel Arbeit in die Verringerung des Vacuum Aufwands investiert wurde.

PostgreSQL 13 verbessert Vacuum mit der Einführung des Parallelen Vacuum von Indexen. Dies bringt nicht nur generelle Geschwindigkeitsvorteile beim Vacuum, sondern Administratoren können mit dieser Verbesserung auch konfigurieren, dass die Anzahl der parallelen Prozesse an spezifische Auslastungen angepasst wird. Eine weitere Neuheit ist, dass Inserts nun auch den Vacuum Prozess auslösen können. Bisher konnte das nur durch Updates und Deletes automatisch ausgelöst werden.

In PostgreSQL 13 können Replication Slots so eingestellt werden, dass nur eine maximale Anzahl an WAL Segmenten vorgehalten wird. So wird verhindert, dass der Speicherplatz auf einer Primär-Datenbank ausgeht. Replication Slots sorgen dafür dass Write-Ahead Logs (WAL) nicht gelöscht werden, bevor diese auf einem Replica angekommen sind.

Administratoren bekommen mit PostgreSQL 13 mehr Möglichkeiten die Aktivitäten in der Datenbank zu überwachen. Z. B. werden WAL Statistiken nun in der Ausgabe von EXPLAIN dargestellt, der Fortschritt von Base Backups kann überwacht werden und auch der Fortschritt von ANALYZE Kommandos kann abgefragt werden. Neu ist zudem, dass die Integrität von pg_basebackup Backups mit dem neuen Kommando pg_verifybackup sichergstellt werden kann.

Vorteile für die Applikations-Entwicklung

PostgreSQL 13 vereinfacht die Arbeit mit PostgreSQL Datentypen die von verschiedenen Quellen kommen. Das neue Release kommt mit der datetime() Funktion für SQL/JSON path. Diese konvertiert korrekte Zeitformate (z. B. ISO 8601 strings) zu nativen PostgreSQL Datentypen. Zusätzlich enhält PostgreSQL 13 eine Funktion gen_random_uuid() um UUID v4 zu generieren. Die Installationen einer Erweiterung ist damit nicht mehr notwendig.

Das PostgreSQL Partitionierungs-System wird flexibler indem partitionierte Tabellen nun zu 100% die logische Replikation unterstützen (vorher mussten die einzelnen Partitionen logisch repliziert werden). BEFORE row-level Trigger werden nun auch für partitionierte Tabellen unterstützt.

Die FETCH FIRST Syntax in PostgreSQL 13 wurde erweitert, so dass nun auch die WITH TIES Klausel verwendet werden kann. Wird dies angegeben, wird WITH TIES alle Zeilen beinhalten die eine Verbindung zur letzten Zeile des Resultats haben (basierend auf der Sortierung des ORDER BY).

Verbesserungen bei der Sicherheit

Das PostgreSQL Erweiterungs-System ist ein zentraler Bestandteil von PostgreSQL, der es Entwicklern erlaubt die Funktionalität von PostgreSQL zu erweitern. In vorherigen Versionen von PostgreSQL konnten nur Superuser Erweiterungen installieren. Um dies zu vereinfachen, führt PostgreSQL 13 das Konzept von "vertraulichen Erweiterungen" ein. Dies erlaubt Datenbank-Benutzern Erweiterungen selbst zu installieren, die zuvor von einem Superuser als vertraulich markiert wurden. Einige Standard-Erweiterungen sind nun schon standardmässig als vertraulich markiert, z.B. pgcrypto, tablefunc, hstore, und viele mehr.

Für Applikationen die sichere Authentifizierungsmethoden erfordern, bietet PostgreSQL 13 den Clients ein require channel binding wenn SCRAM authentication verwendet wird. Zusätzlich kann der PostgreSQL Foreign Data Wrapper (postgres_fdw) nun Zertifikate für die Authentifizierung verwenden.

Über PostgreSQL

PostgreSQL ist das führende Open-Source Datenbanksystem, mit einer weltweiten Community bestehend aus Tausenden von Nutzern und Mitwirkenden sowie Dutzenden von Firmen und Organisationen. Das PostgreSQL Projekt baut auf über 30 Jahre Erfahrung auf, beginnend an der University of California, Berkeley, und hat heute eine nicht zu vergleichende Performance bei der Entwicklung. PostgreSQL's ausgereiftes Feature Set ist nicht nur mit den führenden proprietären Datenbanksystemen vergleichbar, sondern übertrifft diese in erweiterten Datenbankfunktionen, Erweiterbarkeit, Sicherheit und Stabilität.

About PostgreSQL

PostgreSQL is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 30 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability.

Learn more about PostgreSQL and participate in our community at PostgreSQL.org.

More About the Features

For explanations of the above features and others, please see the following resources:

Where to Download

There are several ways you can download PostgreSQL 13, including:

Other tools and extensions are available on the PostgreSQL Extension Network.

Documentation

PostgreSQL 13 comes with HTML documentation HTML documentation as well as man pages, and you can also browse the documentation online in both HTML and PDF formats.

Licence

PostgreSQL uses the PostgreSQL License, a BSD-like "permissive" license. This OSI-certified license is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms.

Contacts

Website

Email

Images and Logos

PostgreSQL Logo

All logos are available for modification and redistribution under The PostgreSQL Licence. The PostgreSQL name and logo are trademarks of The PostgreSQL Community Association of Canada.

Corporate Support

PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our sponsors page for some of these project supporters.

There is also a large community of companies offering PostgreSQL Support , from individual consultants to multinational companies.

If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our donations page.