SlideShare ist ein Scribd-Unternehmen logo
PostgreSQL im Produktivbetrieb




                                    PostgreSQL

                                       im Überblick
                                 Von und mit Frank Schmidt




                 Frank Schmidt          PostgreSQL im Überblick                  1




                                 Das Logo - Der Elefant
                                                      ü Elefant (von lateinisch
                                                        elephantus)
                                                      ü Elefanten sind die größten
                                                        noch lebenden Landtiere.
                                                      ü Eine Versuchsreihe im New
                                                        Yorker Bronx-Zoo zeigte
                                                        Anzeichen dafür, dass
                                                        Elefanten über ein Ich-
                                                        Bewusstsein verfügen
                                                      ü Sprichwort: „Elefanten
                                                        vergessen nicht“


                 Frank Schmidt          PostgreSQL im Überblick                  2




Frank Schmidt - www.SchmidtIT.de                                                     1
PostgreSQL im Produktivbetrieb




                                             Geschichte
                 ü POSTGRES
                      î Die Implementierung von POSTGRES begann 1986 unter Anleitung
                        von Professor Michael Stonebraker, wurde gesponsert von der
                        Defense Advanced Research Projects Agency (DARPA), dem Army
                        Research Office (ARO), der National Science Foundation (NSF) und
                        ESL, Inc. Schließlich hat Illustra Information Technologies (später
                        fusioniert mit Informix, die jetzt zu IBM gehört) den Code
                        übernommen und kommerzialisiert
                 ü Postgres95
                      î Im Jahr 1994 bauten Andrew Yu und Jolly Chen einen SQL-
                        Interpreter in POSTGRES ein. Unter neuem Namen wurde
                        Postgres95 im Web freigegeben, um seinen eigenen Weg als Open-
                        Source-Nachfolger des ursprünglichen POSTGRES-Codes zu finden
                 ü PostgreSQL
                      î 1996 wurde deutlich, dass der Name „Postgres95“ dem Test der Zeit
                        nicht standhalten würde



                 Frank Schmidt               PostgreSQL im Überblick                          3




                                                  Lizenz
                 ü PostgreSQL ist unter der BSD-Lizenz veröffentlicht, die
                   lediglich verlangt, dass die lizenzierten Quelltexte, die
                   Informationen über das Urheberrecht und die Lizenz
                   beibehalten werden müssen
                 ü Diese OSI-zertifizierte Lizenz wird hoch geschätzt, da sie
                   flexibel, benutzer- und geschäftsfreundlich ist
                 ü Sie erlaubt die uneingeschränkte Nutzung von
                   PostgreSQL in kommerziellen und urheberrechtlich
                   geschützten Anwendungen
                 ü Die BSD-Lizenz und der Quellcode, dessen Entwicklung von
                   mehreren Firmen gefördert wurde und der öffentliches
                   Eigentum ist, machen PostgreSQL bei Anbietern, die eine
                   Datenbank in ihre eigenen Produkte integrieren möchten,
                   ohne dass Lizenzgebühren, Abhängigkeiten von einem
                   Hersteller oder Änderungen der Lizenzbedingungen zu
                   befürchten sind, sehr beliebt
                 Frank Schmidt               PostgreSQL im Überblick                          4




Frank Schmidt - www.SchmidtIT.de                                                                  2
PostgreSQL im Produktivbetrieb




                                          Technische Details
                 ü Hervorragende Umsetzung des ANSI-             ü   Hot Stand-By, Replikation
                   SQL99-Standards                               ü   Volle Unterstützung des ACID-Prinzips,
                 ü ANSI-SQL2003 Unterstützung in                 ü   Serialisierbare Transaktionen
                   Grundzügen                                    ü   Partielle Indizes und Indizes über
                 ü Schnittstellen für Tcl, Perl, C, C++, PHP,        Funktionsergebnisse
                   ODBC, JDBC, Embedded SQL in C,
                   Python und Ruby                               ü   Unicode- und Locale-Unterstützung
                 ü GUI-Administrationstools: pgAdmin,            ü   Nachladbare Erweiterungen für
                   pgAccess, phpPgAdmin                              Volltextsuche, GIS, XML und andere
                                                                     Funktionalitäten
                 ü Views, Sequenzen, Vererbung, Outer            ü   Unterstützung von SSL und Kerberos-
                   Joins, Sub-Selects, Referentielle                 Authentifizierung
                   Integrität
                 ü UNION, INTERSECT und EXCEPT                   ü   Werkzeuge, um portablen SQL-Code für
                   Anfragen                                          alle SQL unterstützende Systeme zu
                                                                     erzeugen
                 ü Rules (Regelsysteme), Trigger                 ü   Datenbankübergreifende
                 ü Benutzerdefinierte Funktionen, Stored             Kompatibilitäts-funktionen
                   Procedures                                    ü   Bitmap-Scan, Tabellen-Partitionierung,
                 ü Prozedurale Sprachen PL/pgSQL, PL/Perl,           Zwei-Phasen-Commit
                   PL/Python, PL/Tcl und mehr
                 ü Erweiterbares Datentyp-System




                 Frank Schmidt                     PostgreSQL im Überblick                                    5




                                           Leistungsgrenzen

                 ü Maximale Datenbankgröße                                   Unbegrenzt
                 ü Maximale Tabellengröße                                    32 TB
                 ü Maximale Datensatzgröße                                   1.6 TB
                 ü Maximale Feldgröße                                        1 GB
                 ü Maximale Datensatzanzahl                                  Unbegrenzt
                 ü Maximale Spalten pro Tabelle                              250 – 1600
                 ü Maximale Indexe pro Tabelle                               Unbegrenzt



                 Frank Schmidt                     PostgreSQL im Überblick                                    6




Frank Schmidt - www.SchmidtIT.de                                                                                  3
PostgreSQL im Produktivbetrieb




                                      Neuerungen v. 8.2
                 ü Performanz -Steigerungen
                      î Version 8.2 steigert die Verarbeitungsgeschwindigkeit insgesamt um
                        ca. 20% bei Systemtests mit High-end OLTP (Online Transaction
                        Processing)
                      î Noch stärker profitieren Anwender sogar beim Betrieb von Data-
                        Warehouse-Lösungen
                      î Die Verbesserungen betreffen Sortiervorgänge. Sowohl im
                        Arbeitsspeicher als auch auf Festplatten wird schneller sortiert,
                        bessere Multi-Prozessor-Skalierung, bessere Planung von Abfragen
                        auf partitionierten Tabellen, schnellere Bulk Loads und erheblich
                        beschleunigte Outer-Join-Abfragen sind möglich




                 Frank Schmidt               PostgreSQL im Überblick                       7




                                      Neuerungen v. 8.2
                 ü Warm-Standby Datenbanken
                      î Durch eine Erweiterung des in der Version 8.0 eingeführten "Point in
                        Time Recovery" können Administratoren jetzt auf einfache Weise
                        eine Kopie ihrer Datenbank-Cluster als Ausfallsicherung einrichten
                 ü Online Index Erstellung
                      î Tabellen können jetzt auch indiziert werden, während Anwendungen
                        in Datenbank-Tabellen schreiben, welches ein Datenbank-Tuning
                        ohne Ausfallzeiten ermöglicht
                 ü SQL:2003 Funktionalitäten
                      î PostgreSQL, bekannt für seine Standard-Kompatibilität, wurde um
                        Syntax für weitere Elemente der ANSI-Spezifikation SQL:2003
                        ergänzt. Unter anderem: Aggregatfunktionen für statistische
                        Auswertungen, VALUE-Zuweisungen für mehrere Zeilen zugleich,
                        UPDATE RETURNING und Aggregate über mehrere Spalten



                 Frank Schmidt               PostgreSQL im Überblick                       8




Frank Schmidt - www.SchmidtIT.de                                                               4
PostgreSQL im Produktivbetrieb




                                          Funktionsvergleich
                 FunktionDB       PostgreSQL       Oracle                 MySQL            MS SQL
                 LOB               Nur BLOBs        P                      Nur BLOBs        P
                 Felder            P                P                      O                O
                 Strukt. Typen     P                P                      O                P
                 Funktionen        P                P                      P                P
                 Trigger           P                P                      P                P
                 Vererbung         P                P                      O                O
                 OIDs              P                P                      O                O
                 Spiegel/Cluster   P (diverse)      P                      P (Enterprise)   P
                 Standby Server    P                P                      P                P
                 ORDBMS            P                P                      O                O
                 Schema            P                P                      O                P
                 Fremdschlüssel    P                P                      P (nur InnoDB)   P
                 Operatoren        P                P                      O                O




                 Frank Schmidt                   PostgreSQL im Überblick                             9




                                        Anwendungsgebiete
                 üPostgreSQL ist für fast alle Fälle die richtige
                  Wahl
                        î   Mehrnutzerfähigkeit - MVCC
                        î   Hohe Zuverlässigkeit
                        î   Hohe Datenunabhängigkeit
                        î   Viele Schnittstellen
                        î   Hohe Datenvolumen
                        î   Objekt-Relational (Eigene Objekte, Operatoren,
                            Vererbung)

                 Frank Schmidt                   PostgreSQL im Überblick                             10




Frank Schmidt - www.SchmidtIT.de                                                                          5
PostgreSQL im Produktivbetrieb




                                         Im Einsatz
                 ü               - 3,6 Milliarden Datensätze pro Jahr
                 ü               - 2 Milliarden Datensätze (GIS)
                 ü               - Online Banking
                 ü               - Technische Datenerfassung
                 ü               - Web Content Management und
                                   Redaktionssystem - CMAssist
                 ü               - Online Auftritt, Baustellenmanagement
                 ü               - Transportauftragssystem
                 ü               - Projektzeiterfassungssystem

                 Frank Schmidt           PostgreSQL im Überblick           11




                                       Im Einsatz II
                 üHochschulen
                      î Viele deutsche Hochschulen nutzen PostgreSQL
                        im wissenschaftlichen Bereich für Forschung und
                        Lehre
                      î Darüber hinaus wird PostgreSQL auch von HIS
                        verwendet. HIS ist ein Hochschul- Informations-
                        System zur Verwaltung von Studenten,
                        Lehrkräften und Personal



                 Frank Schmidt           PostgreSQL im Überblick           12




Frank Schmidt - www.SchmidtIT.de                                                6
PostgreSQL im Produktivbetrieb




                                 Performance im Vergleich




                 Frank Schmidt          PostgreSQL im Überblick   13




                                 Performance im Vergleich




                 Frank Schmidt          PostgreSQL im Überblick   14




Frank Schmidt - www.SchmidtIT.de                                       7
PostgreSQL im Produktivbetrieb




                                              Sponsoren
                 ü Weltweit erfährt
                   PostgreSQL Unter-
                   stützung von renom-
                   mierten Unternehmen




                 Frank Schmidt                PostgreSQL im Überblick   15




                                    Softwareprodukte GIS
                 üPostGIS – GRASS
                      î Geographic Resources Analysis Support System
                      î Originally developed by the U.S. Army Corp of
                        Engineering Research Laboratories (1982-1995)




                 Frank Schmidt                PostgreSQL im Überblick   16




Frank Schmidt - www.SchmidtIT.de                                             8
PostgreSQL im Produktivbetrieb




                                  Software Produkt CMS
                 üCMAssist
                      î Web-Content-Management-System
                      î www.CMAssist.de
                      î Über 150 Kunden pro 0815/Server




                 Frank Schmidt             PostgreSQL im Überblick   17




                                        Administration
                 üZahlreiche Bashbefehle (psql)
                 üphpPgAdmin - Webinterface
                 üpgAdmin III GUI – Windows + Linux




                 Frank Schmidt             PostgreSQL im Überblick   18




Frank Schmidt - www.SchmidtIT.de                                          9
PostgreSQL im Produktivbetrieb




                                         Schnittstellen
                 ü   DBD::Pg     - Perl Driver
                 ü   JDBC        - JDBC Driver
                 ü   libpqxx     - C++ API
                 ü   Npgsql      - .Net Data Provider
                 ü   ODBC        - ODBC Driver
                 ü   PgOleDb     - OLE-DB Driver
                 ü   pgtclng     - Next generation interface for TCL
                 ü   Pgtcl       - Tcl binding library
                 ü   Pgin        - A Tcl interface to PostgreSQL written in Tcl
                 ü   PyGreSQL    - Python interface for PostgreSQL
                 ü   psycopg     - Another Python interface for PostgreSQL


                 Frank Schmidt             PostgreSQL im Überblick                19




                        Serverseitige Programmiersprachen
                 ü   PL/SQL      - PostgreSQL Sprache ähnlich PL/SQL (Oracle)
                 ü   PL/C        - C/C++
                 ü   pPerl       - PERL als prozedurale Sprache
                 ü   pPython     - PYTHON
                 ü   PL/Java     - Java procedural language using in-process JNI-
                                   based integration
                 ü PL-J          - Java procedual language using one jvm per
                   database
                 ü plPHP    - PHP-based procedural language
                 ü plR      - Procedural language based on the R statistical
                              language
                 ü pl-ruby  - Ruby based procedural language

                 Frank Schmidt             PostgreSQL im Überblick                20




Frank Schmidt - www.SchmidtIT.de                                                       10
PostgreSQL im Produktivbetrieb




                           Erweiterungen - Clusterlösungen
                 ü PGCluster
                      î is the synchronous replication system of the multi-master
                        composition for PostgreSQL
                 ü Slony-I
                      î is a "master to multiple slaves" replication system
                        supporting cascading and failover. It uses a group
                        communications system to manage its configuration,
                        allowing dynamic reconfiguration of the cluster
                 ü Pgpool
                      î is a connection pooling/replication server for PostgreSQL


                 Frank Schmidt                PostgreSQL im Überblick                       21




                                  Erweiterungen - Oracle
                 ü Better Oracle functions support
                      î The goal of this project is implementation some functions from
                        Oracle database. Some date functions (next_day, last_day, trunc,
                        round, ...) are implemented now. Functionality was verified on
                        Oracle 10g and module is useful for production work
                 ü Oralink
                      î Oralink is a transparent gateway to access Oracle (tm) databases
                        directly from PostgreSQL. Can be used for integration, replication or
                        simply to access Oracle(tm) data using PostgreSQL
                 ü DBLink and Materialized Views
                      î Materialized Views, Materialized View Logs and a simple Database
                        Link on Pg also supporting Oracle's FAST REFRESH. It implements:
                        CREATE/DROP DBLINK,CREATE/DROP/REFRESH
                        SNAPSHOT,CREATE/DROP SNAPSHOT LOG. Oracle and Pg drivers
                        included


                 Frank Schmidt                PostgreSQL im Überblick                       22




Frank Schmidt - www.SchmidtIT.de                                                                 11
PostgreSQL im Produktivbetrieb




                                                          Literatur
                 üONLINE! http://www.postgresql.org/docs/
                 üBücher
                      î

                                 PostgreSQL Ge -Packt


                                                           PostgreSQL. Das
                                                          offizielle Handbuch

                                                                                  PostgreSQL inkl. CD
                                                                                  Administration und
                                                                                        Einsatz




                 üEs gibt kein aktuelles Buch für Entwickler

                 Frank Schmidt                          PostgreSQL im Überblick                         23




Frank Schmidt - www.SchmidtIT.de                                                                             12

Weitere ähnliche Inhalte

PDF
Jtl_connect keynote_thomas_lisson
PPTX
iBusiness #Party24 der Transmutation oder 24 Fakten über Branche und digitale...
PDF
Händlerbund-Studie: Das Weihnachtsgeschäft im Online-Handel 2013
PDF
Social Media im Unternehmen
PDF
Mobile matures and becomes ubiquitous
PDF
BueroWARE emMida eCommerce Suite 3 - Multi-Channel-Vertrieb mit BueroWARE ERP...
PDF
Ford Focus 1 l EcoBoost Presentation
PDF
FINDOLOGIC Internet World 2016
Jtl_connect keynote_thomas_lisson
iBusiness #Party24 der Transmutation oder 24 Fakten über Branche und digitale...
Händlerbund-Studie: Das Weihnachtsgeschäft im Online-Handel 2013
Social Media im Unternehmen
Mobile matures and becomes ubiquitous
BueroWARE emMida eCommerce Suite 3 - Multi-Channel-Vertrieb mit BueroWARE ERP...
Ford Focus 1 l EcoBoost Presentation
FINDOLOGIC Internet World 2016

Andere mochten auch (16)

PDF
SoftENGINE - Kaufmännische Softwarelösungen
PPTX
Software, Tools & Widgets für eure Arbeitswelt
PPTX
Future Communication Trends
PDF
Greenhouse Lab Angebote
PDF
Konsumentenverhalten im Wandel - Schlüsselfaktoren für erfolgreichen Crosscha...
PDF
Keynote Speaker Ibrahim Evsan
PPTX
JTL-Wawi | eBay Designvorlagen
PDF
Automatisierter Software-Test unter Java
PPTX
Kundenantrag: Realitäten im Großhandel
PDF
E-Commerce: Vom Mythos zur Realität
PPT
Social Media und Unternehmen: Neu vs. Alt oder zusammen?
PPTX
FINDOLOGIC_ShopwareCommunityDays_2014
PPT
SCD13: Die technische Roadmap von Shopware 4
PPTX
SCD 13: Johannes Altmann - 13 Schritte zur Unwiderstehlichkeit
PDF
Automotive Com Wolfsburg 2011
PDF
E government in Bayern
SoftENGINE - Kaufmännische Softwarelösungen
Software, Tools & Widgets für eure Arbeitswelt
Future Communication Trends
Greenhouse Lab Angebote
Konsumentenverhalten im Wandel - Schlüsselfaktoren für erfolgreichen Crosscha...
Keynote Speaker Ibrahim Evsan
JTL-Wawi | eBay Designvorlagen
Automatisierter Software-Test unter Java
Kundenantrag: Realitäten im Großhandel
E-Commerce: Vom Mythos zur Realität
Social Media und Unternehmen: Neu vs. Alt oder zusammen?
FINDOLOGIC_ShopwareCommunityDays_2014
SCD13: Die technische Roadmap von Shopware 4
SCD 13: Johannes Altmann - 13 Schritte zur Unwiderstehlichkeit
Automotive Com Wolfsburg 2011
E government in Bayern
Anzeige

Ähnlich wie PostgreSQL im Produktivbetrieb (20)

PDF
PostgreSQL: Die Freie Datenbankalternative
PDF
Schweine latein-vortrag
PDF
Eine Stunde was mit Api First!
PDF
Back to the future - Plone 5.2 und Python 3 Migration am Beispiel Onkopedia
ODP
XMPP - Real Time Communication
PDF
Perl@Hamburg – meine Sicht als Team-Leiter
ODP
Datenformate und Standards
PDF
Produce & Publish Authoring Environment World Plone Day 2010 - Berlin
PPT
Fit für die digitale Bibliothek? (2007)
PDF
Open Standards, Open Source, Open Data. Zuviel des Guten?
PDF
Oracle no sql-doag-datenbank_konferenz_juni_2014
PPT
D Z U G Unser Ding
PPT
openHAB @ rheinJUG Düsseldorf
PDF
Grundlagen postgresql
PPTX
.NET Datenzugriff einfach und performant mit Micro O/R Mappern
PDF
XML Seminar
PDF
Status of syslog as of 2005
PDF
Semesterarbeiten
PPTX
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
PDF
HDNET Social Network CeBIT 2009
PostgreSQL: Die Freie Datenbankalternative
Schweine latein-vortrag
Eine Stunde was mit Api First!
Back to the future - Plone 5.2 und Python 3 Migration am Beispiel Onkopedia
XMPP - Real Time Communication
Perl@Hamburg – meine Sicht als Team-Leiter
Datenformate und Standards
Produce & Publish Authoring Environment World Plone Day 2010 - Berlin
Fit für die digitale Bibliothek? (2007)
Open Standards, Open Source, Open Data. Zuviel des Guten?
Oracle no sql-doag-datenbank_konferenz_juni_2014
D Z U G Unser Ding
openHAB @ rheinJUG Düsseldorf
Grundlagen postgresql
.NET Datenzugriff einfach und performant mit Micro O/R Mappern
XML Seminar
Status of syslog as of 2005
Semesterarbeiten
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
HDNET Social Network CeBIT 2009
Anzeige

Mehr von GFU Cyrus AG (20)

PDF
Java Code Quality: Gute Software braucht guten Code - Regeln für verständlich...
PDF
Clean Code Developer
PDF
Cross-Apps-Entwicklung für iPhone, Android und Co.
PDF
Softwarequalitätssicherung mit Continuous Integration Tools
PDF
Datenschutz bei Facebook & Co. - Wie schütze ich meine persönlichen Daten im ...
PDF
Requirements Engineering in agilen Projekten - Flexibilität ist gefordert
PDF
SharePoint 2010 - Was ist neu, was wird besser!
PDF
Java Persistence 2.0
PDF
Pragmatische Einführung von IT-Servicemanagement - ITIL im Unternehmen - Erfa...
PDF
Liferay Portal - ein Webportal für viele Unternehmensanforderungen
PDF
Java Server Faces 2.0 - Der Standard für moderne und komponentenbasierte Weba...
PDF
Wieviel Web2.0 braucht Ihr Unternehmen?
PDF
Neue Features der Java EE 6
PDF
Das Java-Spring-Framework in der Praxis
PDF
Agile Geschäftsprozeßanalyse OOA/D am Beispiel einer Seminarverwaltung
PDF
Wissensmanagement bei Volkswagen
PDF
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...
PDF
Grenzüberschreitende Geschäftsprozesse mit Microsoft SharePoint und BizTalk
PDF
Projekt! - Toll - Ein Anderer Macht`s! - Voraussetzungen für eine erfolgreich...
PDF
Standardsoftware in der Versicherungsbranche - Betrachtung eines Paradigmenwe...
Java Code Quality: Gute Software braucht guten Code - Regeln für verständlich...
Clean Code Developer
Cross-Apps-Entwicklung für iPhone, Android und Co.
Softwarequalitätssicherung mit Continuous Integration Tools
Datenschutz bei Facebook & Co. - Wie schütze ich meine persönlichen Daten im ...
Requirements Engineering in agilen Projekten - Flexibilität ist gefordert
SharePoint 2010 - Was ist neu, was wird besser!
Java Persistence 2.0
Pragmatische Einführung von IT-Servicemanagement - ITIL im Unternehmen - Erfa...
Liferay Portal - ein Webportal für viele Unternehmensanforderungen
Java Server Faces 2.0 - Der Standard für moderne und komponentenbasierte Weba...
Wieviel Web2.0 braucht Ihr Unternehmen?
Neue Features der Java EE 6
Das Java-Spring-Framework in der Praxis
Agile Geschäftsprozeßanalyse OOA/D am Beispiel einer Seminarverwaltung
Wissensmanagement bei Volkswagen
Professionelle Anforderungsanalyse am Beispiel einer Java-Anwendung zur Betri...
Grenzüberschreitende Geschäftsprozesse mit Microsoft SharePoint und BizTalk
Projekt! - Toll - Ein Anderer Macht`s! - Voraussetzungen für eine erfolgreich...
Standardsoftware in der Versicherungsbranche - Betrachtung eines Paradigmenwe...

PostgreSQL im Produktivbetrieb

  • 1. PostgreSQL im Produktivbetrieb PostgreSQL im Überblick Von und mit Frank Schmidt Frank Schmidt PostgreSQL im Überblick 1 Das Logo - Der Elefant ü Elefant (von lateinisch elephantus) ü Elefanten sind die größten noch lebenden Landtiere. ü Eine Versuchsreihe im New Yorker Bronx-Zoo zeigte Anzeichen dafür, dass Elefanten über ein Ich- Bewusstsein verfügen ü Sprichwort: „Elefanten vergessen nicht“ Frank Schmidt PostgreSQL im Überblick 2 Frank Schmidt - www.SchmidtIT.de 1
  • 2. PostgreSQL im Produktivbetrieb Geschichte ü POSTGRES î Die Implementierung von POSTGRES begann 1986 unter Anleitung von Professor Michael Stonebraker, wurde gesponsert von der Defense Advanced Research Projects Agency (DARPA), dem Army Research Office (ARO), der National Science Foundation (NSF) und ESL, Inc. Schließlich hat Illustra Information Technologies (später fusioniert mit Informix, die jetzt zu IBM gehört) den Code übernommen und kommerzialisiert ü Postgres95 î Im Jahr 1994 bauten Andrew Yu und Jolly Chen einen SQL- Interpreter in POSTGRES ein. Unter neuem Namen wurde Postgres95 im Web freigegeben, um seinen eigenen Weg als Open- Source-Nachfolger des ursprünglichen POSTGRES-Codes zu finden ü PostgreSQL î 1996 wurde deutlich, dass der Name „Postgres95“ dem Test der Zeit nicht standhalten würde Frank Schmidt PostgreSQL im Überblick 3 Lizenz ü PostgreSQL ist unter der BSD-Lizenz veröffentlicht, die lediglich verlangt, dass die lizenzierten Quelltexte, die Informationen über das Urheberrecht und die Lizenz beibehalten werden müssen ü Diese OSI-zertifizierte Lizenz wird hoch geschätzt, da sie flexibel, benutzer- und geschäftsfreundlich ist ü Sie erlaubt die uneingeschränkte Nutzung von PostgreSQL in kommerziellen und urheberrechtlich geschützten Anwendungen ü Die BSD-Lizenz und der Quellcode, dessen Entwicklung von mehreren Firmen gefördert wurde und der öffentliches Eigentum ist, machen PostgreSQL bei Anbietern, die eine Datenbank in ihre eigenen Produkte integrieren möchten, ohne dass Lizenzgebühren, Abhängigkeiten von einem Hersteller oder Änderungen der Lizenzbedingungen zu befürchten sind, sehr beliebt Frank Schmidt PostgreSQL im Überblick 4 Frank Schmidt - www.SchmidtIT.de 2
  • 3. PostgreSQL im Produktivbetrieb Technische Details ü Hervorragende Umsetzung des ANSI- ü Hot Stand-By, Replikation SQL99-Standards ü Volle Unterstützung des ACID-Prinzips, ü ANSI-SQL2003 Unterstützung in ü Serialisierbare Transaktionen Grundzügen ü Partielle Indizes und Indizes über ü Schnittstellen für Tcl, Perl, C, C++, PHP, Funktionsergebnisse ODBC, JDBC, Embedded SQL in C, Python und Ruby ü Unicode- und Locale-Unterstützung ü GUI-Administrationstools: pgAdmin, ü Nachladbare Erweiterungen für pgAccess, phpPgAdmin Volltextsuche, GIS, XML und andere Funktionalitäten ü Views, Sequenzen, Vererbung, Outer ü Unterstützung von SSL und Kerberos- Joins, Sub-Selects, Referentielle Authentifizierung Integrität ü UNION, INTERSECT und EXCEPT ü Werkzeuge, um portablen SQL-Code für Anfragen alle SQL unterstützende Systeme zu erzeugen ü Rules (Regelsysteme), Trigger ü Datenbankübergreifende ü Benutzerdefinierte Funktionen, Stored Kompatibilitäts-funktionen Procedures ü Bitmap-Scan, Tabellen-Partitionierung, ü Prozedurale Sprachen PL/pgSQL, PL/Perl, Zwei-Phasen-Commit PL/Python, PL/Tcl und mehr ü Erweiterbares Datentyp-System Frank Schmidt PostgreSQL im Überblick 5 Leistungsgrenzen ü Maximale Datenbankgröße Unbegrenzt ü Maximale Tabellengröße 32 TB ü Maximale Datensatzgröße 1.6 TB ü Maximale Feldgröße 1 GB ü Maximale Datensatzanzahl Unbegrenzt ü Maximale Spalten pro Tabelle 250 – 1600 ü Maximale Indexe pro Tabelle Unbegrenzt Frank Schmidt PostgreSQL im Überblick 6 Frank Schmidt - www.SchmidtIT.de 3
  • 4. PostgreSQL im Produktivbetrieb Neuerungen v. 8.2 ü Performanz -Steigerungen î Version 8.2 steigert die Verarbeitungsgeschwindigkeit insgesamt um ca. 20% bei Systemtests mit High-end OLTP (Online Transaction Processing) î Noch stärker profitieren Anwender sogar beim Betrieb von Data- Warehouse-Lösungen î Die Verbesserungen betreffen Sortiervorgänge. Sowohl im Arbeitsspeicher als auch auf Festplatten wird schneller sortiert, bessere Multi-Prozessor-Skalierung, bessere Planung von Abfragen auf partitionierten Tabellen, schnellere Bulk Loads und erheblich beschleunigte Outer-Join-Abfragen sind möglich Frank Schmidt PostgreSQL im Überblick 7 Neuerungen v. 8.2 ü Warm-Standby Datenbanken î Durch eine Erweiterung des in der Version 8.0 eingeführten "Point in Time Recovery" können Administratoren jetzt auf einfache Weise eine Kopie ihrer Datenbank-Cluster als Ausfallsicherung einrichten ü Online Index Erstellung î Tabellen können jetzt auch indiziert werden, während Anwendungen in Datenbank-Tabellen schreiben, welches ein Datenbank-Tuning ohne Ausfallzeiten ermöglicht ü SQL:2003 Funktionalitäten î PostgreSQL, bekannt für seine Standard-Kompatibilität, wurde um Syntax für weitere Elemente der ANSI-Spezifikation SQL:2003 ergänzt. Unter anderem: Aggregatfunktionen für statistische Auswertungen, VALUE-Zuweisungen für mehrere Zeilen zugleich, UPDATE RETURNING und Aggregate über mehrere Spalten Frank Schmidt PostgreSQL im Überblick 8 Frank Schmidt - www.SchmidtIT.de 4
  • 5. PostgreSQL im Produktivbetrieb Funktionsvergleich FunktionDB PostgreSQL Oracle MySQL MS SQL LOB Nur BLOBs P Nur BLOBs P Felder P P O O Strukt. Typen P P O P Funktionen P P P P Trigger P P P P Vererbung P P O O OIDs P P O O Spiegel/Cluster P (diverse) P P (Enterprise) P Standby Server P P P P ORDBMS P P O O Schema P P O P Fremdschlüssel P P P (nur InnoDB) P Operatoren P P O O Frank Schmidt PostgreSQL im Überblick 9 Anwendungsgebiete üPostgreSQL ist für fast alle Fälle die richtige Wahl î Mehrnutzerfähigkeit - MVCC î Hohe Zuverlässigkeit î Hohe Datenunabhängigkeit î Viele Schnittstellen î Hohe Datenvolumen î Objekt-Relational (Eigene Objekte, Operatoren, Vererbung) Frank Schmidt PostgreSQL im Überblick 10 Frank Schmidt - www.SchmidtIT.de 5
  • 6. PostgreSQL im Produktivbetrieb Im Einsatz ü - 3,6 Milliarden Datensätze pro Jahr ü - 2 Milliarden Datensätze (GIS) ü - Online Banking ü - Technische Datenerfassung ü - Web Content Management und Redaktionssystem - CMAssist ü - Online Auftritt, Baustellenmanagement ü - Transportauftragssystem ü - Projektzeiterfassungssystem Frank Schmidt PostgreSQL im Überblick 11 Im Einsatz II üHochschulen î Viele deutsche Hochschulen nutzen PostgreSQL im wissenschaftlichen Bereich für Forschung und Lehre î Darüber hinaus wird PostgreSQL auch von HIS verwendet. HIS ist ein Hochschul- Informations- System zur Verwaltung von Studenten, Lehrkräften und Personal Frank Schmidt PostgreSQL im Überblick 12 Frank Schmidt - www.SchmidtIT.de 6
  • 7. PostgreSQL im Produktivbetrieb Performance im Vergleich Frank Schmidt PostgreSQL im Überblick 13 Performance im Vergleich Frank Schmidt PostgreSQL im Überblick 14 Frank Schmidt - www.SchmidtIT.de 7
  • 8. PostgreSQL im Produktivbetrieb Sponsoren ü Weltweit erfährt PostgreSQL Unter- stützung von renom- mierten Unternehmen Frank Schmidt PostgreSQL im Überblick 15 Softwareprodukte GIS üPostGIS – GRASS î Geographic Resources Analysis Support System î Originally developed by the U.S. Army Corp of Engineering Research Laboratories (1982-1995) Frank Schmidt PostgreSQL im Überblick 16 Frank Schmidt - www.SchmidtIT.de 8
  • 9. PostgreSQL im Produktivbetrieb Software Produkt CMS üCMAssist î Web-Content-Management-System î www.CMAssist.de î Über 150 Kunden pro 0815/Server Frank Schmidt PostgreSQL im Überblick 17 Administration üZahlreiche Bashbefehle (psql) üphpPgAdmin - Webinterface üpgAdmin III GUI – Windows + Linux Frank Schmidt PostgreSQL im Überblick 18 Frank Schmidt - www.SchmidtIT.de 9
  • 10. PostgreSQL im Produktivbetrieb Schnittstellen ü DBD::Pg - Perl Driver ü JDBC - JDBC Driver ü libpqxx - C++ API ü Npgsql - .Net Data Provider ü ODBC - ODBC Driver ü PgOleDb - OLE-DB Driver ü pgtclng - Next generation interface for TCL ü Pgtcl - Tcl binding library ü Pgin - A Tcl interface to PostgreSQL written in Tcl ü PyGreSQL - Python interface for PostgreSQL ü psycopg - Another Python interface for PostgreSQL Frank Schmidt PostgreSQL im Überblick 19 Serverseitige Programmiersprachen ü PL/SQL - PostgreSQL Sprache ähnlich PL/SQL (Oracle) ü PL/C - C/C++ ü pPerl - PERL als prozedurale Sprache ü pPython - PYTHON ü PL/Java - Java procedural language using in-process JNI- based integration ü PL-J - Java procedual language using one jvm per database ü plPHP - PHP-based procedural language ü plR - Procedural language based on the R statistical language ü pl-ruby - Ruby based procedural language Frank Schmidt PostgreSQL im Überblick 20 Frank Schmidt - www.SchmidtIT.de 10
  • 11. PostgreSQL im Produktivbetrieb Erweiterungen - Clusterlösungen ü PGCluster î is the synchronous replication system of the multi-master composition for PostgreSQL ü Slony-I î is a "master to multiple slaves" replication system supporting cascading and failover. It uses a group communications system to manage its configuration, allowing dynamic reconfiguration of the cluster ü Pgpool î is a connection pooling/replication server for PostgreSQL Frank Schmidt PostgreSQL im Überblick 21 Erweiterungen - Oracle ü Better Oracle functions support î The goal of this project is implementation some functions from Oracle database. Some date functions (next_day, last_day, trunc, round, ...) are implemented now. Functionality was verified on Oracle 10g and module is useful for production work ü Oralink î Oralink is a transparent gateway to access Oracle (tm) databases directly from PostgreSQL. Can be used for integration, replication or simply to access Oracle(tm) data using PostgreSQL ü DBLink and Materialized Views î Materialized Views, Materialized View Logs and a simple Database Link on Pg also supporting Oracle's FAST REFRESH. It implements: CREATE/DROP DBLINK,CREATE/DROP/REFRESH SNAPSHOT,CREATE/DROP SNAPSHOT LOG. Oracle and Pg drivers included Frank Schmidt PostgreSQL im Überblick 22 Frank Schmidt - www.SchmidtIT.de 11
  • 12. PostgreSQL im Produktivbetrieb Literatur üONLINE! http://www.postgresql.org/docs/ üBücher î PostgreSQL Ge -Packt PostgreSQL. Das offizielle Handbuch PostgreSQL inkl. CD Administration und Einsatz üEs gibt kein aktuelles Buch für Entwickler Frank Schmidt PostgreSQL im Überblick 23 Frank Schmidt - www.SchmidtIT.de 12