Your SlideShare is downloading. ×
PostgreSQL im Produktivbetrieb
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

PostgreSQL im Produktivbetrieb

8,037

Published on

1996 hat PostgreSQL seinen Kampf gegen kommerzielle Datenbanksysteme aufgenommen. Als Erbe des Datenbank Management Systems Ingres ist PostgreSQL (daher auch der Name, Post=nach, (in-)"gres") auf dem …

1996 hat PostgreSQL seinen Kampf gegen kommerzielle Datenbanksysteme aufgenommen. Als Erbe des Datenbank Management Systems Ingres ist PostgreSQL (daher auch der Name, Post=nach, (in-)"gres") auf dem Weg immer mehr kommerzielle Datenbanksysteme auch im Highlevel Segment zu verdrängen. Mit dem Zusatz SQL verdeutlich PostgreSQL sein bestreben die SQL-ANSI-Normen umzusetzen. Vor allem im Hochschulbereich wird PostgreSQL Entwickelt und auch eingesetzt. Datenmengen von mehreren Milliarden Datensätzen pro Tabelle bewältigt PostgreSQL mit Leichtigkeit denn gerade im GIS (Geografischen Information Systemen) Umfeld sind solche Datenmengen unabdingbar.

PostgreSQL im Überblick

Einsatzgebiete

Erfahrungsberichte

Grenzen und Ausblicke

Erweiterungen rund um PostgreSQL

PostgreSQL im Einsatz (Praxisberichte)

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
8,037
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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

×