postgresql: die freie datenbankalternative
DESCRIPTION
Introduction to the PostgreSQL software and project that I gave to students of the FH Aachen in January 2007.TRANSCRIPT
![Page 2: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/2.jpg)
PostgreSQL
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 3: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/3.jpg)
PostgreSQL
Historie
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 4: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/4.jpg)
PostgreSQL
Historie
INGRES
1977–1985University of California at BerkeleyProf. StonebrakerPrototyp eines relationalen DBMS
1986—Relational Technologies/Ingres Corp./Computer AssociatesKommerziell erfolgreich
![Page 5: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/5.jpg)
PostgreSQL
Historie
POSTGRES
1986–1994University of California at BerkeleyProf. StonebrakerPrototyp eines objektrelationalen DBMS
1995—Illustra/Informix/IBMKommerziell erfolgreich
![Page 6: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/6.jpg)
PostgreSQL
Historie
PostgreSQL
1995Postgres95University of California at BerkeleyUmstellung auf SQL
1996—Open-Source-ProjektTeamwachstum von 4 auf mehrere Dutzend
![Page 7: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/7.jpg)
PostgreSQL
Das Projekt
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 8: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/8.jpg)
PostgreSQL
Das Projekt
Projektorganisation
Interessierte versammeln sich [email protected]
Quellcode im CVSEntwickler schicken PatchesCore Team behält den Überblick
![Page 9: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/9.jpg)
PostgreSQL
Das Projekt
Entwicklungsarbeit
“Scratch your own itch”Roadmap gibt’s nichtFeature-Vorschläge auf TODO-ListeNebenaufgaben:
DokumentationWebsiteLokalisierungÖffentlichkeitsarbeitusw.
![Page 10: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/10.jpg)
PostgreSQL
Das Projekt
Wer entwickelt das?
SelbstständigeDienstleisterAnbieter von ErweiterungenHobbyistenStudenten
![Page 11: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/11.jpg)
PostgreSQL
Das Projekt
Lizenz
Freie Software / Open SourceBSD-LizenzKeinerlei LizenzkostenEigene Ergänzungen beliebig möglichKeine Herausgabe des Quelltextes erforderlich
![Page 12: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/12.jpg)
PostgreSQL
Das Projekt
Community
Anwender helfen AnwendernDirekter Kontakt zu EntwicklernWebsite: http://www.postgresql.org/Mailing-ListenIRC, Foren, Blogs, . . .
![Page 13: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/13.jpg)
PostgreSQL
Im Einsatz
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 14: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/14.jpg)
PostgreSQL
Im Einsatz
Anwendungen
TelekommunikationUniversitätenRegierungenMilitärWarenwirtschaftSteuerungssystemeInternetMedienEinzelhandelTechnologiefirmen
![Page 15: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/15.jpg)
PostgreSQL
Im Einsatz
Vergleich mit anderen Produkten
Vergleichbare Menge von FeaturesPerformance:
Benchmark muss wirklichkeitsnah seinAS3AP: Geschwindigkeit und SkalierbarkeitTPC-C: Online-Transaktionsverarbeitung
Veröffentlichung von Zahlen nicht erlaubtErgebnisse vergleichbar!
Wirtschaftlich vorteilhafter
![Page 16: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/16.jpg)
PostgreSQL
Im Einsatz
Ableger
EnterpriseDBGreenplum/BizgresTelegraphCQ
![Page 17: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/17.jpg)
PostgreSQL
Features
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 18: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/18.jpg)
PostgreSQL
Features
Plattformen
Läuft auf großen Servern und auf kleinen SystemenUnterstützt nahezu alle Unix-Derivate, Linux, Windows,MacOSMultiprozessorfähig
![Page 19: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/19.jpg)
PostgreSQL
Features
SQL-Standards
Unterstützt große Teile von SQL 1992, SQL 1999, SQL2003Beste SQL-Unterstützung am MarktEinfache PortierungenPortierungstoolsKompatibilitätserweiterungen für Oracle, Informix, . . .
![Page 20: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/20.jpg)
PostgreSQL
Features
SQL-Features
AggregierungConstraintsDomainsFremdschlüsselOuter JoinsPartielle IndexeSavepointsSchemasSubselectsTriggerViews
![Page 21: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/21.jpg)
PostgreSQL
Features
Programmierschnittstellen
Standardisierte APIs:ODBC 3.5JDBC 3Embedded SQL in CPerl DBI/DBD
Weitere Schnittstellen:SQL-ShellCC++PHPPython, Ruby, Tcl
![Page 22: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/22.jpg)
PostgreSQL
Features
Stored Procedures
Verschiedene Sprachen:PL/pgSQL, ähnlich PL/SQLJavaCPerl, PHP, Python, Ruby, Shell, Tcl
Benutzerdefinierte Funktionen:Liefert Einzelwert oder TabelleVerarbeitet Tabellen
![Page 23: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/23.jpg)
PostgreSQL
Features
Erweiterbarkeit
Benutzerdefinierte
DatentypenFunktionenOperatorenIndextypenProgrammiersprachenu.a.
![Page 24: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/24.jpg)
PostgreSQL
Features
Erweiterbarkeit
Viele Erweiterungen verfügbar:GISKryptoXMLVolltextsucheÄhnlichkeitssucheReplikation
![Page 25: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/25.jpg)
PostgreSQL
Features
Datensicherung
SQL-DumpsInkrementelle Backups mit Point-in-Time-Recovery“Hot Backups”
![Page 26: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/26.jpg)
PostgreSQL
Features
Keine Größenbeschränkung
Geeignet für große DatenmengenKeine Beschränkungen für Tabellen, Zeilen, . . .Lineare Skalierung auch bei anspruchsvollenAnwendungen
![Page 27: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/27.jpg)
PostgreSQL
Features
Datenintegrität
Kompromisslos stabil und zuverlässigDatenintegrität gesichert bei SystemabstürzenKorrekte Transaktionslogik von Anfang anAusgefeiltes Typensystem mit DomainsDatenbank akzeptiert keine ungültigen DatenKorrekte Semantik der Daten durch Fremdschlüssel undConstraints
![Page 28: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/28.jpg)
PostgreSQL
Features
Transaktionsverarbeitung – ACID
Atomicity Ergebnis der Transaktion ganz oder gar nicht zusehen
Consistency Datenbank bleibt immer konsistentIsolation Gleichzeitige Transaktionen beeinflussen sich
nichtDurability Ergebnis bleibt erhalten
![Page 29: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/29.jpg)
PostgreSQL
Features
Multiversion Concurrency Control
Leser blockieren keine Schreiber, Schreiber blockierenkeine Leser.Volle Unterstützung des ACID-PrinzipsTransaktionsisolation: Serializable und Read CommittedExplizite Sperrmodi
![Page 30: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/30.jpg)
PostgreSQL
Features
Indexe
B-treeR-treeHashGiSTGIN
![Page 31: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/31.jpg)
PostgreSQL
Features
Objektrelationale Datenbankmanagementsysteme
Kombination relationaler und objekorientierter KonzepteBeibehaltung bewährter KonzepteAbwärtskompatibelEvolution statt RevolutionMigration
![Page 32: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/32.jpg)
PostgreSQL
Features
Objektrelationale Datenbankmanagementsysteme
Benutzerdefinierte Typen, OperatorenKomplexe Datentypen: Arrays, Zeilentypen, . . .VererbungEindeutige Objektidentität
![Page 33: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/33.jpg)
PostgreSQL
Features
Administration
Sehr geringer AdministrationsaufwandIns Serversystem eingebunden: Dateisystem, Logging, . . .Diverse Administrationstools: phpPgAdmin, Webmin,pgAdmin, TOra, psqlZusätzlich Spezialtools: Visual Explain, . . .
![Page 34: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/34.jpg)
PostgreSQL
Interna
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 35: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/35.jpg)
PostgreSQL
Interna
Wie funktioniert das?
. . . oder: Wieviel meines Studienwissens kann ich dabeianwenden?
![Page 36: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/36.jpg)
PostgreSQL
Interna
Implementierung
Geschrieben in CClient/Server-ArchitekturEin Prozess pro VerbindungKommunikation über Shared MemoryDaten liegen in Dateien
![Page 37: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/37.jpg)
PostgreSQL
Interna
Verarbeitung eines Befehls
1 Netzwerkprotokoll2 Parser3 Rewriter4 Planer/Optimizer5 Executor
![Page 38: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/38.jpg)
PostgreSQL
Interna
Andere Bauteile
Storage ManagerLock ManagerMemory ManagerCache ManagerEingebaute Funktionen, Datentypen
![Page 39: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/39.jpg)
PostgreSQL
Interna
Was man noch so lernt
COBOL lebt — als SQLB-Tree-Indexe sind noch viel komplizierter als in derVorlesungObjektorientierte Datenbanken interessieren keinenAber XML vielleicht schonHardware spielt eine erhebliche RolleImmer mal das Halteproblem zitieren
![Page 40: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/40.jpg)
PostgreSQL
Abschluss
Agenda
1 Historie
2 Das Projekt
3 Im Einsatz
4 Features
5 Interna
6 Abschluss
![Page 41: PostgreSQL: Die Freie Datenbankalternative](https://reader033.vdocuments.us/reader033/viewer/2022052901/55642681d8b42a2a0a8b5a68/html5/thumbnails/41.jpg)
PostgreSQL
Abschluss
Die Zukunft
Neue Release 8.3 Mitte 2007PGCon im MaiAnsonsten weiter so