postgresql news
DESCRIPTION
originally presented at Linux World Conference & Expo Germany 2005TRANSCRIPT
PostgreSQL NewsPeter Eisentraut
2
News
• PostgreSQL 8.1 letzte Woche freigegeben
3
Hunderte Änderungen
• Einzelheiten sind in den Release-Notes zu finden...
4
Bitmap Scans
• Kann nun mehrere Indexe pro Tabelle verwenden
• Indextreffer werden im Speicher zusammengefasst
• Nützlich für• SELECT * FROM tabelle WHERE (x = 1) OR (x
= 2) OR (x = 3)
• Automatisch erzeugte Anfragen• Slony-I
5
Two-Phase Commit
• PREPARE TRANSACTION
• COMMIT TRANSACTION
• ROLLBACK TRANSACTION
• Vorbereitete Transaktionen werden beim Server-Neustart beibehalten.
• Noch keine XA-Schnittstelle
6
Rollen-System
• Vereinigt Benutzer und Gruppen
• »Benutzer« = Rolle + Login-Recht
• Rollen können geschachtelt werden
• Rollen können Objekteigentümer sein
• Rollen können zur Laufzeit aktiviert und deaktiviert werden
7
Automatische Index-Verwendung bei MIN() u. MAX()
Automatisches Umschreiben von
SELECT min(spalte) FROM tab;
als
SELECT spalte FROM tab ORDER BY spalte LIMIT 1;
• Indexe werden automatisch verwendet
• Funktioniert bei allen Datentypen
• Auch für benutzerdefinierte Aggregate
8
Integriertes Autovacuum
• contrib/pg_autovacuum/ jetzt als Serverprozess
• Startet und stoppt mit dem Datenbankserver
• Viele Konfigurationsmöglichkeiten in postgresql.conf
• Standardmäßig nicht eingeschaltet
9
Shared Row-Level Locks
• SELECT ... FOR SHARE
• Reduziert die Lock-Anforderungen bei Prüfung der referenziellen Integrität
• Bessere Leistung für Fremdschlüssel
10
Abhängigkeiten für globale Objekte
• Verhindert, dass Rollen gelöscht werden, denen noch Datenbankobjekte gehören• Keine »verwaisten« Objekte mehr
• Vereinfachtes Löschen von Tablespaces
11
Constraint Exclusion
• Vermeidet Zugriffe auf Kindtabellen, wenn Constraints anzeigen, dass keine passenden Zeilen in der Kindtabelle existieren.
• Einfache Art der Tabellen-Partitionierung, wird demnächst ausgebaut
12
Und mehr...
• Verbesserte GiST-Indexe (für Volltextindex, GIS u.a.)
• COPY 30% schneller
• 64 Bit Shared Memory (2 Terabyte)
• IN/OUT Parameter für Funktionen
• Schneller auf SMP-Systemen
• ...
13
Neuer ODBC-Treiber
• Basiert auf libpq
• IPv6-Unterstützung
• SSL-Unterstützung
• Kerberos-Unterstützung
• Viel stabiler
14
Neuer JDBC-Treiber
• Viele Bug-Fixes
• Besteht angeblich die Sun JDBC CTS
• Noch kein XA :-(
15
Neue pgAdmin III Version 1.4.0
• PostgreSQL 8.1 Unterstützung:• Autovacuum-Administration
• Rollen
• OUT-Parameter
• Vorbereitete Transaktionen (2PC)
• Grafisches EXPLAIN
• Slony-I Unterstützung
• SQL/Shell Job Scheduling Agent
• Mac OS X Unterstützung
16
Zukünftige/Gewünschte Features
• MERGE oder REPLACE Befehl
• Tabellen-Partitionierung
• Materialized Views
• Updatable Views
• Index-organisierte Tabellen, Daten direkt aus Index lesen
• Rekursive Anfragen
• Window-Funktionen
17
Andere Entwicklungen
• Mehr kommerzielles Engagement• Pervasive
• EnterpriseDB
• Fujitsu
• Wichtige neue Benutzer• (anonym)
• (anonym)
• (anonym)
18
Fragen?