PostgreSQL Workshop Workshop-Tage 2012

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche

PostgreSQL – das innovative DBMS für die Praxis

Workshop-Tage 4.-6. September 2012, organisiert durch ch/open.

Referenten:

  • Prof. Stefan Keller, HSR, Rapperswil (CH)
  • Dipl. Inf. Andres Freund, 2ndQuadrant, Deutschland GmbH, Stuttgart (DE)

Siehe auch Kurs_PostgreSQL_für_Adminstratoren_und_Entwickler IGE-Kurs, ch/open Workshop-Tage 2012 und Workshop

Allgemeines

  • Einleitung: PostgreSQL ist wohl das zurzeit am meisten unterschätzte Datenbankmanagementsystem (DBMS). PostgreSQL ist robust und hat eine der stärksten Entwicklergemeinden. Es kann sich von der Funktionalität her mit den grössten DBMS messen. Und das ohne Lizenzkosten - da Open Source - und mit lokalem Support. Einige Erweiterungen, wie PostGIS, hstore, K-Nearest Neighbour-Index und Full Text Search sind einzigartig.
  • Kursziel: Nach Abschluss des Workshops kennen die Teilnehmer und Teilnehmerinnen die wichtigsten Aspekte dieses erstaunlichen objekt-relationalen DBMS.
  • Adressaten: IT-Administratoren, DBMS-Umsteiger, Software-Entwickler und allgemein solche, die sich für Open Source-Datenbanken interessieren.
  • Voraussetzungen: Kenntnisse eines Datenbanksystems, insbesondere SQL.
  • Dauer: Ganztages-Workshop.
  • Max. Teilnehmerzahl: 16

Organisatorisches:

Programm

Überarbeiteter Programmentwurf mit Anpassungen gegenüber erstem Programmentwurf (vgl. Diskussion:PostgreSQL_Workshop_Workshop-Tage_2012): "Mehr Praxis; spezifische Aspekte wie Performance Tuning, Erweiterungen, Postgres-Spezialitäten", d.h. ...

Der Workshop besteht aus folgender Theorie:

  • Einführung in PostgreSQL für DB-Admins:
    • Systemarchitektur, Systemanforderungen, Installation (Stefan)
    • Client-Tools; Hilfe (Stefan)
  • Datentypen mit Hinweisen für MySQL- und ORACLE-Umsteiger (Stefan)
  • Erweiterungen und Spezialitäten von PostgreSQL:
    • Tipps für MySQL- und ORACLE-Umsteiger (Andres)
    • hstore (Stefan)
    • PostGIS (Stefan)
    • Full Text Search (Andres)
  • Einführung in PLs geben (plpgsql, plpython) (Andres)
  • Administration: Konfiguration; Backup und Recovery; Monitoring & Maintenance (Andres)
  • Replikation (Andres)
  • Performance Tuning (Andres)

Eingestreute Beispiele ergänzen die Theorie.

Detailprogramm (grössere Übungen sind separate Programmpunkte unten. Kleinere Übungen werden direkt eingestreut und hier nur am Rande erwähnt):

  1. Einführung (inkl. Virtual Image), Geschichte, Vergleich
  2. System
    1. Systemarchitektur, Systemanforderungen, Versionen
    2. Hilfe finden
  3. DB-Clients
    1. Überblick pgAdmin, psql, phpPgAdmin, weitere
    2. Datenbank-Administration
    3. Daten-Import und -Export
    4. Übung Daten importieren
  4. Datentypen, u.a. mit Arrays und XML - "The PostgreSQL Way"
  5. SQL-Syntax/Anfragen, Schemas - "The PostgreSQL Way"
    1. Tipps für MySQL- und ORACLE-Umsteiger (Andres)
    2. Übung Window Funktionen und CTE
  6. Views, Rules und Triggers
  7. Funktionen und Stored Procedures, [s]Operatoren[/s]
    1. Übung Eigene Stored Procedure schreiben
  8. Extensions
    1. Überblick
    2. Übung hstore
    3. Volltextsuche inkl. Fuzzy String Matching in grossen Datenmengen von Sprachdokumenten (Andres)
    4. Übung Volltextsuche? (Andres)
  9. Einführung in PLs, serverseitige Sprachen: Pl/PgSQL etc. (Andres)
  10. Verwaltung/Administration (Andres)
    1. Benutzerverwaltung: Authentifizierung, Privilegien
    2. Backup und Recovery
  11. Konfiguration (Andres)
    1. Konfiguration (Dateien), Wartung, Vacuum und Analyze
    2. Indexverwaltung
  12. Replikation (Andres)
    1. Streaming Based Replication
    2. Trigger Based Replication
  13. Performance Tuning, Optimierung (Andres)
    1. Statistiken, Planer und Optimizer
    2. Partitionierung

Unklar/Zuviel:

  • Übung SQL Basics mit Movie DB (Stefan)
  • Hinweise zur Installation unter Windows und Linux (Stefan)
  • Client / Server (Andres)
  • Datenstrukturen / Datenverwaltung (Andres)
  • Schreib- und Leseverwaltung (Andres)
  • Monitoring (Andres)
  • Locking (Andres)
  • Prozessverwaltung, Clustermanagement (Andres)
  • Multiversion Concurrency Control (MVCC) (Andres)
  • Transaktionslogverwaltung (Andres)
  • Connection Pooling (Andres)