DB2 SQL. DB2-Optimierung und SQL-Performance. Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL

Größe: px
Ab Seite anzeigen:

Download "DB2 SQL. DB2-Optimierung und SQL-Performance. Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL"

Transkript

1 Kapitel 2: Grundsätzliches zu DB2 und Performance Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL DB2 SQL Optimierung und Performance Ausgabe 11: 2014 V (inkl. DB2 V9/V10) S.K.Consulting Services GmbH Seite 1 von 44

2 Inhaltsverzeichnis INHALTSVERZEICHNIS 1 VORWORT GRUNDSÄTZLICHES ZU DB2 UND PERFORMANCE Planen von Performance Strategien Management von Performance allgemein Setzen von realistischen Performance Zielen Service-level agreements(sla) Planung der Performance Überwachung Kontrolle und review der performancerelevanten Daten Die Optimierungspotentiale bei DB Vorgehensweise beim Tuning von DB Anhaltspunkte und Analysedaten für Tuning Accounting und statistics records Die Grundvorgaben für gute DB2 Performance Weitere Voraussetzungen für Performance in SQL bei DB Möglichkeiten und Maßnahmen zur (SQL-)Optimierung Systemtechnische Aktivitäten Anwendungsbezogene Maßnahmen Die Tuningpotentiale des DB2-Systems selbst SQL - DIE STRUCTURED QUERY LANGUAGE BEI DB Relationale Sprachelemente und Operationen bei SQL Die relationale Funktion "SELEKTION" Die relationale Funktion "PROJEKTION" Die relationale Funktion "JOIN" Relationale Mengenoperationen-Zusammenfassung ÜBERLEGUNGEN ZUR SQL PERFORMANCE Dynamic SQL Datenbankobjekte und ihre Struktur Tabellen und Tablespaces Indexe Primary und Clustering Indexes Index Only -Zugriffe auf VARCHAR Spalten Aufwand und Kosten von Indexes Verzögerte Objektdefinitionen Empfehlungen zu Sortierungen SQL-Abfragen mit Subqueries Die Typen von Subqueries Correlated subqueries non-correlated Subqueries Bedingungen bei DB2 um eine Subquery in einen Join zu tranferieren S.K.Consulting Services GmbH ++49 (0) Seite 2 von 44

3 Inhaltsverzeichnis Resultate im EXPLAIN Subqueries transformiert auf Joins Subqueries, die DB2 nicht auf Joins transformieren können Correlating und de-correlating Subqueries Set functions und grouping functions Correlated ranges und <> Vergleiche Subquery Tuning Komplexität von Queries Spalten-Funktionen Formulieren von Prädikaten Die Verwendung von scalar functions Neuordnen der Tabellenfolge in der FROM Klausel Die Prefetches Sequential prefetch Dynamic prefetch List prefetch Uncommitted read row level locks Freigabe von Locks lock escalation "materialized query tables"(mqt's) und "automatic query rewrite"(aqr) Empfehlungen für das Design von "materialized query tables" Empfehlungen für das Design der zugehörigen "base tables" Beispiele für MQTs Der DB2-Katalog SQL-TUNING UND PERFORMANCE BEI DB Die neuen Limits bei DB2 Version Die DB2 SQL Engine SQL-Tuning und die Logik der Abfragen constant propagation Eliminieren von totem Code Zusammenfassen von Konstanten ( constant folding ) case-insensitive Suchen Sargability Transformation von Prädikaten Transitive closure für Prädikate "Join transitive closure" transitive closure bei OUTER JOINs Ausnahmen zur transitive closure Regel predicate push down predicate bubble up S.K.Consulting Services GmbH ++49 (0) Seite 3 von 44

4 Inhaltsverzeichnis 5.5 DB2 SQL und Empfehlungen Grundsätzliche Empfehlungen zu DB2-SQL Modifikation von SQL-Statements Restrukturierung von UNION- durch CASE-Ausdrücke Unterstützung von UNION- durch physisches DB-Design Spezielle Techniken ORDER BY und SORT-Vorgänge bei DB Einsatz des cartesian join ( star-join ) existence checks mit SQL So sollte es nicht gemacht werden correlated Subquery und non-correlated Subquery Grobe Vergleichsmessungen existence check und OPTIMIZE FOR 1 ROW Fetch First Row Only Zusammenfassung JOIN s und OUTER JOIN s Warum Joins von Bedeutung sind Beispiel-Views Die Join Syntax ON-Klausel vs WHERE-Formulierung Die Join Typen Division (Quotient) Die Kodierung diverser Join Typen in DB2 SQL Bemerkungen zu Joins Predikate und Joins - eine Lektion Joins - Beachtenswertes Binary Matching Operationen Der NESTED-LOOP JOIN Algorithmus Der MERGE-JOIN Algorithmus Der Hybrid-JOIN Algorithmus Der HASH JOIN Algorithmus Besprechung der Optimierungstechniken Die SQL-Statements INTERSECT und EXCEPT Die Operation MERGE Delete only MERGE Complex Merge Die Operation TRUNCATE Mehr Performance für SQL-Operationen in Programmen seit V8/V scalar full select multiple DISTINCT s ORDER BY und FETCH FIRST im Subselect multi row FETCH und multi row INSERT common table expressions Rekursives SQL Erzeugen rekursiver Funktionen und Prozeduren in SQL PL Mehr Performance für Modifikationsoperationen seit DB2 V multi row INSERT Lesen geänderter/eingefügter Zeileninhalte über SELECT multi row FETCH und positioned UPDATE/DELETE" Gestern, heute, morgen - Datumsarithmetik im DB Das Spezialregister current date Datumsarithmetik S.K.Consulting Services GmbH ++49 (0) Seite 4 von 44

5 Inhaltsverzeichnis Die Date-Duration Skalare Funktionen in Verbindung mit Datumsarithmetik Do s und Don ts bei SQL in Kürze Grundsätzliche Empfehlungen zu SQL Tipps und Hinweise DB2 SQL Nutzungsrichtlinien (Zusammenfassung) DIE RELATIONALEN KOMPONENTEN IN DB Das RDS - Relational Data Systems DM - Data Manager BM - Buffer Manager IRLM Lock, Timeout, Deadlock VSAM (außerhalb von DB2) DIE VERARBEITUNG VON PRÄDIKATEN Indexable Predicates Wie wird der Index durchsucht? "Sargeable und indexable Predicates"(Übersicht) Weitere Beispiele für Sargeable & indexable Predicates Prädikate auf Sargeable & indexable umformulieren (Beispiele) Index probing DB2 "Access Path"-Auswahl Access-Path-Selection bei Tablespace- / Table-Scan Access-Path-Selection bei "non-matching" Index Access-Path-Selection bei "matching" Index Access-Path-Selection bei "One-Fetch" Index-Scan Access-Path-Selection bei "Index-only" Zugriff DB2 "Access Path"-Selection (Zusammenfassung) DB2 "Access Path"-Auswahl : "List Prefetch" DB2 "Access Path"-Auswahl : "Multiple Index Access" / UNION (OR) DB2 "Access Path"-Wahl : "Multiple Index Access" / INTERSECT (AND) DB2 "Access Path"-Auswahl : "Multiple Index Access" / AND + OR DB2 - EXPLAIN für MI-Zugriffe DB2 "Access Path"-Auswahl : JOINs / "nested loop" DB2 "Access Path"-Auswahl : JOINs / "merge scan" Spezielle Techniken zum Beeinflussen der Pfadauswahl bei DB Die Informationen über Zugriffspfade Minimieren des "overhead" durch Anfordern von wenigen "rows" Nutzung der "cardinality" Klausel Reduktion der Anzahl "matching columns" Neuanordnen der Tabellenreihenfolge Update der Katalogstatistiken Nutzung von Subsystem Parametern DB2 - Parallelverarbeitung Allgemein Konzeptioneller background und Terminologie Database Design Überlegungen Überlegungen zum Applikationsdesign BIND Optionen S.K.Consulting Services GmbH ++49 (0) Seite 5 von 44

6 Inhaltsverzeichnis System und Installationsüberlegungen ANALYSE DER ZUGRIFFSPFADE UND DIE DB2-OPTIMIZER INFORMATIONEN Faktoren der Entscheidung für den DB2-Optimizer Der Optimierungsvorgang und EXPLAIN Prädikate und Prädikatkategorien Die Filter Filterfaktoren(FF) Update von Kataloginformationen PLAN_TABLE und EXPLAIN Voraussetzungen für effizientes EXPLAIN Informationen, die nicht in der PLAN_TABLE stehen Die DSN_STATEMNT_TABLE Einflüsse auf die Kostenkategorien Verbesserungen für "stage 2"-Prädikate "view" Materialisierung "nested table expression" Materialisierung Verbessern der Lock-Nutzung bei DB Generelle Empfehlungen Vermeiden von "false contention" Monitoring auf "false contention" Wieviel contention ist akzeptabel? Wie kann man false contentions reduzieren? Verändern der Größe einer lock structure Verringern der lock entry size Reduzieren der Zeit bis zum Auflösen von contentions Vermeiden von partition locks auf alle TS Partitions Tuning von deadlock und timeout Verarbeitung Globales deadlock processing Globales timeout processing Empfehlungen BEHANDLUNG LANGLAUFENDER QUERIES/STATEMENTS Explain und PLAN_TABLE prüfen DSN_STATEMNT_TABLE einbeziehen SQL-Statement überprüfen Prüfen der Struktur des Datenmodells RUNSTATS-Statistik-Spalten des Katalogs überprüfen Monitor einsetzen und Ergebnisse überprüfen (z.b. DB2PM) SQL TRACE REPORT überprüfen (z.b. DB2PM) MESSWERTE UND DATEN FÜR SQL-PERFORMANCE Bufferpool-Hit Ratio und Maximal Unreferenced Pool Age (MUPA) DB2-Tools und Möglichkeiten zur Ermittlung von Performance-Werten S.K.Consulting Services GmbH ++49 (0) Seite 6 von 44

7 Inhaltsverzeichnis 10.3 Statistikdaten des Katalogs Statistikdaten und ihre Auswirkung auf das DB2 Optimizing Manipulation von Statistikwerten DB2-Accounting-Zeiten SQL Query-Typen: "I/O Bound" und "CPU Bound" SQL-QUERY UND TUNING EMPFEHLUNGEN (ZUSAMMENFASSUNG) Richtlinien zur Leistungsoptimierung Kodieren Sie SQL nur für die erforderlichen Ergebnisse Wird die erwartete Performance nicht erreicht Prädikate werden in stages verarbeitet Weitere Empfehlungen zu SQL-Queries ORDER BY / GROUP BY JOIN Tuning Allgemein Subquery Tuning ANHANG Performance Änderungen in DB2 V Hash access auf einzelne Tabellenzeilen Verbesserte LOB und XML Verarbeitung LOB Daten Locking SQL Zusatzinformationen Zum Thema LIKE DB2 zum Thema optimistic locking Die EXPLAIN_Tables Die input -Tables Die PROFIL Tabellen builtin-functions Abbildungsverzeichnis Index Glossar Literaturhinweise S.K.Consulting Services GmbH ++49 (0) Seite 7 von 44

8 Kapitel 2: Grundsätzliches zu DB2 und Performance 1 Vorwort Information steht heute und auch in Zukunft im Mittelpunkt wirtschaftlichen Handelns. Information wird zur treibenden Kraft der Informationsgesellschaft... Das Zitat von John Naisbitt aus seinem Buch Megatrends (1988) sagt über die Bedeutung der Information in unserer Gesellschaft alles aus. Information ist eine denkbar komplizierte (Betriebs-)Ressource, die leichter, effizienter und produktiver verwendet werden kann, wenn sie geordnet und seinem Zusammenhang gemäß sinnvoll dargestellt und angeboten wird. Datenbankmanagementsysteme (DBMS) sind immer noch die Werkzeuge, mit denen Informationen strukturiert, verwaltet und bedarfsgerecht aufbereitet, wiedergegeben und verwaltet werden können. Über sie werden moderne Informationssysteme erst möglich. DB2 for z/os und DB2 LUW von IBM sind derartige Datenbanksysteme, die in einer modernen IT-Umgebung in der Lage sind, Informationsarchitekturen und -systeme über und für die gesamte Unternehmenshierarchie umfassend real werden zu lassen. Informationsverarbeitung ist zunächst abstrakt und dann effizient, wenn die richtigen Informationen zum richtigen Zeitpunkt am richtigen Ort sind. Das gelingt nur mit einer sorgfältigen Planung und Konzeptionen, einer technisch perfekten Implementierung und einer ständigen Kontrolle und Abstimmung. Die Datenbank als Informationsspeicher muss in der Lage sein, gestellte Anforderungen sicher, konsistent und schnell zu erfüllen: Manche Informationen sind eben nur wertvoll, wenn sie hochaktuell sind. Und - jeder Nutzer spezifischer Informationen kann seine eigenen individuellen und subjektiven Ansprüche an diese Ressource Information stellen. Das erfordert technisch hochperformante und flexible, aber auch stabile und sichere Systeme. DB2for z/os und DB2 LUW beispielsweise lassen sich so konfigurieren, dass alle erforderlichen Aktivitäten, Anwendungen und Anforderungen auf effizienteste Art und Weise bedient werden können. Dazu müssen nicht nur alle (System-)Parameter optimal gewählt, das logische Datenmodell genau und sorgfältig entwickelt, sondern auch die Datenstrukturen nach genauer Analyse in die physische DB2-Umgebung überführt sein. Dies umso mehr, als mit der Ausweitung der Informationstechnik die Komplexität der Informationsstrukturen selbst und die Quantität angebotener Datenmengen ständig zunimmt und letztendlich beliebig umfangreich werden kann. Andererseits soll die Informationsqualität ständig verbessert und die verfügbaren Informationen immer effektiver und zielgerichteter dargeboten werden. Insbesondere gilt es, Applikationen architektonisch so abzubilden, dass sie konsistent und stabil allen möglichen business logics folgen; d.h. letzendlich Programme so zu schreiben, dass sie wartbar, entwickelbar, komplexe Vorgänge unterstützen und Performanceziele erreicht werden. Im Endeffekt soll ein Minimum an Kosten entstehen. Die Erkenntnis, dass der Unternehmenserfolg, wie bei den bekannten klassischen Produktionsfaktoren - Finanzen, Material, Anlagen und Personal(ist das eine Ressource?) - unmittelbar von einer erschöpfenden und werteffizienten Verwertung der fünften Kraft Information - abhängt, führte zur Suche nach neuen Konzepten in einem neuen betriebswirtschaftlichen Umfeld - der Informationswirtschaft. Denn: Ein Datenbanksystem selbst bringt den Unternehmen noch keinen oder nur geringen Nutzen. Dieser entsteht erst aus der intensiven Nutzung der verfügbaren Information und der daraus resultierenden betriebswirtschaftlichen Wertschöpfung: Je mehr Nutzung, desto mehr Nutzen ist möglich und umso effektiver kann die Informationsbewirtschaftung für das Unternehmen sein. Im Zentrum der wirtschaftli- S.K.Consulting Services GmbH Seite 8 von 44

9 Kapitel 1: Vorwort chen Aspekte aber steht die Informationstechnologie - ihre Möglichkeiten, ihre Produkte und die Wertschöpfung, die man mit ihren Ausprägungen der Information erzielen kann. Die Erwartungen an die Leistungsfähigkeit und Stabilität eines DBMS sind also hoch und berechtigt. In dieser Handbuchserie werden unter DB2 Performance-Gesichtspunkten alle wichtigen Fragen zu und die Möglichkeiten in Hinsicht auf das Produkt DB2 for z/os thematisiert. Die Serie besteht aus folgenden Büchern: 01_Die Umgebung von DB2 Eine Architekturübersicht 02_DB2 und das Relationenmodell von Dr. Codd 03_DB2-Optimierung und SQL-Performance 04_Physisches DB-Design und DB2-Performance 05_DB2 und effiziente Anwendungsentwicklung 06_Administration von DB2 Umgebungen 07_Tunig-Beispiele zu DB2: Erfahrungen aus der Praxis 08_DB2 im Client-Server Umfeld 09_Tools und hilfreiche Produkte zu DB2 Die gesamte Handbuch-Serie stellt sich nicht in Form von Manuals im Sinne von Systemdokumentation dar diese werden vom Hersteller angeboten. Vielmehr ist beabsichtigt, DB2 unter Nutzbarkeits- und Performance-Gesichtspunkten möglichst umfassend zu beleuchten. Die Serie ist für Kenner, nicht in erster Linie für Anfänger im Umgang mit DB2, konzipiert. Das vorliegende Buch beschäftigt sich mit dem Thema: DB2 Optimierung und SQL-Performance. Es ein Leitfaden sein, der SQL Statements ursprünglich, richtig und effizient entwickeln, testen und zukünftig optimal schreiben und einstellen helfen kann - immer mit dem Ziel, höchstmöglicher Performance in allen direkt betroffenen und umliegenden Betrachtungsfeldern. Viel Spaß beim Lesen und viel Erfolg bei der Nutzung von IBM s DB2 for z/os (manche SQL Vorschläge gelten genauso für DB2 LUW). Mit freundlichen Grüßen S.K. Consulting Services GmbH Sepp Kraus Für die Mitarbeit an diesem Handbuch bedanken wir uns bei den Firmen AXA Versicherungen, Köln BMW AG, München Deutsch Bank Bauspar AG, Frankfurt NORD/LB, Hannover Raiffeisenverband IT, Bozen IT-Verlag, Sauerlach b. München S.K.Consulting Services GmbH ++49 (0) Seite 9 von 44

10 2 Grundsätzliches zu DB2 und Performance 2.1 Planen von Performance Strategien Der erste Schritt zur Verbesserung von Durchsatz besteht in der Planung der Ziele, Kriterien, Vorgehensweisen und Aufwände: Zum Planen einer Performance-Strategie sollten folgende Punkte in Betracht gezogen werden: Management von Performance allgemein Setzen von realistischen Performance Zielen Planung der Performance Überwachung Kontrolle und review der performancerelevanten Daten Reaktion auf erkennbare Performance Probleme Neben den Informationen über Performance Monitoring und Tuning sollten folgende Tatsachen nicht außer Acht gelassen werden: DB2 ist nur ein Teil eines Gesamtsystems. Jede Änderung an der Hardware von zseries, am disk subsystem, an z/os, IMS, CICS, TCP/IP, VTAM, dem Netzwerk, WebSphere, VMWare oder den Anwendungen verteilter Plattformen, z.b. Windows, UNIX oder Linux, die sich die gemeinsame IT Infrastruktur teilen müssen, können Einfluss darauf nehmen, wie DB2 und seine Anwendungen sich verhalten. Die Empfehlungen für Performance Monitoring und Tuning basieren also auf den derzeitigen Erkenntnissen über DB2 Performance unter normalen Umständen und typischen Systemzuständen. Deshalb kann nicht garantiert werden, dass die in diesem Buch veröffentlichten Empfehlungen für jede spezielle Konfiguration seine uneingeschränkte Gültigkeit haben. Um genau zu sein: Häufig erfolgen die Hinweise zu Performance-Situationen aus einem speziellen Performancegesichtpunkt heraus. In manchen Installationen können aber andere Faktoren eine höhere Priorität haben und normale Empfehlungen zu DB2 könnten so ungeeignet sein. Die Empfehlungen sind allgemein. Performance Messungen sind in höchstem Maße abhängig von der Last und den Systemcharakteristiken außerhalb von DB Management von Performance allgemein Die Kontrolle und das Management von Performance umfassen in allen Systemen dieselben Schritte: 1. Aufstellen und Festlegen der Performanceziele 2. Planung, wie Performance überwacht werden soll ( performance monitoring ) 3. Durchführen der geplanten Aktionen(ggf. aus einem Performance DWH ) 4. Über die Analyse der performance reports, wird entschieden, ob die gesetzten Ziele erreicht wurden 5. Ist die Performance uneingeschränkt gut, gelten folgende Optionen: Weniger monitoring, denn monitoring selbst benötigt auch Ressourcen S.K.Consulting Services GmbH Seite 10 von 44

11 Kapitel 2: Grundsätzliches zu DB2 und Performance Weiteres monitoring, um gegebenenfalls eine Historie des Performanceverhaltens zu haben, die dann mit zukünftigen Ergebnissen verglichen werden können 6. Ist die Performance nicht zufriedenstellend, gibt es folgende mögliche Aktionen: a. Bestimmen der hauptsächlichen Hemmnisse im System b. Bestimmen, wo man den höchsten Effekt und die höchste Ressourcenentlastung erhalten kann und will c. Tunen des Systems, indem die erforderlichen Charakteristiken so gut justiert werden, dass sich damit die Performance verbessert d. Zurück zu Schritt 3 und Durchführung weiterer monitoring Aktionen In festen Zeitabständen oder nach signifikanten Änderungen an System oder der Systemlast sollte man zu Schritt 1 zurückkehren, die Zielsetzungen überprüfen und entsprechend die monitoring - und Tuning-Strategien verfeinern und anpassen Setzen von realistischen Performance Zielen Wie gute Performance für das DB2 System definiert wird, hängt von den Anforderungen an das System und deren Priorisierung ab. Performanceziele sollten realistisch, innerhalb des Budgets liegend, verständlich und messbar festgelegt sein. Normalerweise schließen diese Zielsetzungen Werte für Akzeptable response time (eine Zeit, innerhalb der ein bestimmter Prozentsatz aller Applikationen beendet sein sollte) Durchschnittlichen Durchsatz (die Gesamtzahl der Transaktionen / Queries, die innerhalb einer vorgegeben Zeit fertig werden) Systemverfügbarkeit, inklusive der mean time to failure und der Dauer der down times Systemstabilität, mit Funktionalitäten, wie HADR, cloning von DBs, BACKUP und RECOVERY etc. mit ein. Ziele, wie diese, definieren auch die Last für das System und bestimmen die Anforderungen für Ressourcen, wie Prozessorgeschwindigkeit, Speichergrösse, zusätzlich erforderliche Software usw. Oft bestimmen die verfügbaren Ressourcen die maximale Grenze der akzeptablen Systemlast. Dies wiederum hieße, die Zielsetzungen neu zu überdenken Service-level agreements(sla) Angenommen die User haben ein Mitspracherecht, was ihre Performanceziele angeht: So ist eine Vereinbarung auf Gegenseitigkeit für akzeptable Performance zwischen der betreibenden IT Gruppe und den Benutzergruppen formalisiert und zum sogenannten Service-Level Agreement bestimmt. SLA s können Erwartungen an query response time, den Durchsatz pro Tag / Stunde / Minute und Fenster für Batch Jobs ( inklusive utilities ) beinhalten. Diese Vereinbarungskriterien sind ein Anhaltspunkt dafür, ob ein System angemessene Performance ausweist oder nicht. Sie können beliebig komplexen Algorithmen folgen. Die Kriterien dafür müssen jedoch ohne Ausnahme messbar sein. S.K.Consulting Services GmbH ++49 (0) Seite 11 von 44

12 Kapitel 2: Grundsätzliches zu DB2 und Performance Planung der Performance Überwachung Die Planung des monitoring von DB2 Performance sollte folgendes berücksichtigen: Einen generellen monitoring Terminplan. Große Batch Jobs oder Utility Läufe können zu Lastspitzen führen. Man sollte also monitoring mit anderen Operationen koordinieren, sodass keine Konflikte mit unüblichen Lastspitzen gibt, außer man will genau diese überwachen Die Art der Analyse, die erfolgen soll und die Art von Tools, die für das monitoring einzusetzen sind. Man sollte auch die Daten, die aus dem monitoring resultieren dokumentieren Einige Performance Reports kommen von den Produkten, die man für das monitoring nutzt: Tivoli Decision Support for z/os, OMEGAMON XE for DB2 Performance Monitor (DB2 PM), OMEGAMON (inklusive der Funktion DB2 PM), Mainview von BMC andere Reporting Werkzeuge oder eigene Programme, die Informationen aus Standardreports filtern Ein Team, das die Ergebnisse analysiert. Die Resultate des monitoring und die Folgerungen daraus sollten der User Support Group und den System performance Spezialisten zur Verfügung gestellt werden. Eine Strategie zum Tunen von DB2. Man sollte beschreiben, wie oft Änderungen erlaubt sind und auch die Standards, nach denen Folgewirkungen zu testen sind. Die Tuning Strategien sollten Bestandteil der regulären System Management procedures sein. Tuningempfehlungen können sowohl normale Datenbankänderungen (SQL, physische DB Struktur etc.), aber auch Änderungen am Anwendungsdesign und im aufwändigsten Fall auch am Datenmodell umfassen. Man sollte angelehnt daran die Entwicklungsrichtlinien aktualisieren, um so die gemachten Erfahrungen wiederzugeben und wiederholte Fehler zu vermeiden. Typischerweise enthält der Plan vier Ebenen des monitoring : Kontinuierliches Performance monitoring Periodisches Performance monitoring Detailliertes Performance monitoring Außergewöhnliches / Problem-. Performance monitoring Eine Performance Monitoring Strategie beschreibt in einem Plan, was von Fall zu Fall zu tun ist und jede der genannten Ebenen Kontrolle und review der performancerelevanten Daten Die Analyse der Performance-Messdaten erfolgt, um festzustellen, ob die Performance die vorgegebenen Anforderungen erfüllt, um Problembereiche zu identifizieren und den monitoring Prozess auszuwerten. Wenn die Anforderungen definiert und der monitoring Prozess geplant wird, wird auch ein Plan erstellt, wie die performancerelevanten Daten ausgewertet werden sollen. S.K.Consulting Services GmbH ++49 (0) Seite 12 von 44

13 Kapitel 2: Grundsätzliches zu DB2 und Performance Diese Daten sind systematisch auszuwerten. Man sollte tägliche Daten wöchentlich und wöchentliche Daten monatlich betrachten. Birgt ein Report Auffälligkeiten, so muss er des Öfteren überprüft und seine Auffälligkeiten analysiert werden. Details sollten nur in Problemfällen untersucht werden. Ansonsten wird nur die Stimmigkeit der Reports in Bezug auf die historischen (Referenz-) Reports überprüft. S.K.Consulting Services GmbH ++49 (0) Seite 13 von 44

14 Kapitel 2: Grundsätzliches zu DB2 und Performance 2.2 Die Optimierungspotentiale bei DB2 Die Optimierungspotentiale bei relationalen Datenbanksystemen unterscheiden sich generell, was SQL betrifft auch zwischen DB2 und Oracle, SQL Server und SYBASE - nur minimal. Genau so sieht es bei der DB-Physik und den Installationsparametern aus Sicher ist, dass die wirksamsten Tuning-Potentiale, diese relationalen Datenbanksysteme schneller zu machen, im Bereich der Abfragesprache SQL und damit im Umfeld der Anwendungsentwicklung und der laufenden Programme und Abfragen zu suchen ist (siehe Grafik unten). Weiteres Performancepotential stellt das physische DB-Design, gefolgt von der Einstellung der Systemparameter selbst und dem Betriebssystem (z/os, AIX, UNIX, Linux, Windows usw.), dar. Empfehlenswert ist es, im Tuningfall dort zuerst zu suchen, wo das größte Potential zum Lösen der Tuningaufgaben existiert. Man darf dabei nur die anderen Bereiche nicht aus den Augen verlieren. In diesem Handbuch werden vorrangig die Problematiken und Möglichkeiten der Optimierung von SQL bei DB2" behandelt. Die Design- und Strukurierungsproblematik der physischen Datenbankstruktur bei DB2 findet man im Band DB2 - DB-Design und physische Strukturen aus dieser Handbuchreihe Tuning und Performance für DB2-Umgebungen. 2 = DB2 System (10%) 3 = phys. DB-Design Design (20%) 4 = Anwendung (60%) = OS System (10%) Bild-01: Tuningpotentiale bei DB2 Die Grafk zeigt die Anteile der Tuningpotentiale im DB2 Umfeld. Entsprechend kann man auch seine Erwartungen platzieren. S.K.Consulting Services GmbH ++49 (0) Seite 14 von 44

15 Kapitel 2: Grundsätzliches zu DB2 und Performance 2.3 Vorgehensweise beim Tuning von DB2 Grundsätzlich ist Tuning ein iterativer Vorgang: Schritt_1: Analyse der Details Schritt_2: Erarbeiten einer Lösung Schritt_3: Test der Lösung Schritt_4: Vergleich der Ergebnisse Wiederholung des Prozesses bis zum besten Resultat Bild-02: Vorgehensweise beim Tuning In allen Schritten ist jede mögliche Maßnahme zum Erreichen des Tuning-Ziels erlaubt Anhaltspunkte und Analysedaten für Tuning Anhaltspunkte für Tuning bieten bei DB2 für z/os folgende Messdaten 1. Elapsed Time Analysis und Tuning 2. CPU Time Tuning: Aufwand für Select, Insert, Update, Delete, Dynamic Bind, DB2 Traces, Distributed/ Stored Procedure, DB2 Data Compression 3. IFI Informationen: Anzahl GETPAGES, Aufrufhäufigkeiten etc. 4. Buffer Pool, Locking, EDM Pool, Work File, LOB, DBM1 Virtual Storage Accounting und statistics records Alle accounting und Statistikdaten sind bei DB2 for z/os relativ einfach und kostengünstig zu erhalten. Sie sind vor allem nützlich für ein kontinuierliches Monitoring der Performance und daraus abzuleitende Tuningaktivitäten. Für eine erste Analyse genügen jedoch meistens: Der Accounting report (nicht trace ) pro connection type oder Plan und Der Accounting Report (nicht trace ) für dieselbe Zeitspanne Diese Fakten sollten die ersten sein, die betrachtet werden, wenn ein DB2 Performance Problem auftaucht. Beispiel: DB2PM Command Eingabe zum Erhalt der entsprechenden passenden Daten: DB2PM DB2PM DB2PM STATISTICS REPORT LAYOUT (LONG), und ACCOUNTING REPORT LAYOUT (LONG) ORDER (CONNTYPE) EXCLUDE (PACKAGE(*)) zur Gruppierung über thread connection type, wie TSO, CICS, DB2CALL, IMS, APPL- DIR, SYST- DIR, usw., oder ACCOUNTING REPORT LAYOUT (LONG) ORDER (PLANNAME) und INCLUDE (DB2ID (xxxx)) FROM (03/ 11/ 00,10: 00: 00.00) TO (...) Weitere Anhaltspunkte zur Analyse der DB2-Faktoren unter Pkt ff. S.K.Consulting Services GmbH ++49 (0) Seite 15 von 44

16 Kapitel 2: Grundsätzliches zu DB2 und Performance 2.4 Die Grundvorgaben für gute DB2 Performance 1. Stellen Sie sicher, dass genügend Plattenplatz vorhanden ist. (6-10 Laufwerke pro CPU ist für den Anfang genug das gilt auch für DB2 LUW und seine SAN Systeme). Jeder "Tablespace Container" sollte alle verfügbaren Platten erreichen können. Einige "tablespaces", wie zum Beispiel SYSCATSPACE und alle Platten mit einer geringen Anzahl von Tabellen, sollten nicht über alle möglichen "Disks" gestreut werden, wogegen die TS mit einer großen Useranzahl oder auch mit vielen "temporary tables" möglichst über den gesamten "Diskpool" aufgeteilt sein sollten. 2. (Buffer-)Pools sollten einen Nutzungsgrad des verfügbaren Speichers von ca. 75% (bei OLTP Anwendungen) oder 50% (bei OLAP Anwendungen) ausweisen. 3. RUNSTATS sollte auf allen Tabellen, inklusive der Systemtabellen (Katalog) immer durchgeführt sein. Gegebenenfalls sollte man einen "Design Advisor" nutzen, um eine Empfehlung und ein "review" für die Indizes bezüglich ihrer SQL" workloads" und Wirksamkeit zu erhalten. 4. Man kann auch den "Configuration Advisor" nutzen, um Empfehlungen bezüglich der Konfiguration fürden "Database Manager" und die Datenbank für die entsprechenden Applikationen zu erhalten. 5. Logging sollte auf separaten "high-speed Disks" erfolgen 6. "Concurrency" kann durch häufige "commits" und konsistentes Transaktionsverhalten verbessert werden (SQL Statement Tuning). 7. Der Parameter SORTHEAP/SORTHEAPSIZE sollte hoch genug eingestellt werden, um "sort overflows" zu vermeiden 8. Der Tablespace Typ für den "System catalog table space" sollte ein eigener SMS-Pool oder sogar ein eigener (schneller) Plattentyp sein. 9. "Temporary table spaces", work TS und "DMS raw (devices)" oder "Files" sollten ebenfalls separat definiert sein. 10. Man nutze "parameter markers" für sich wiederholende (dynamic) SQL- Statements (SQL Statement Tuning). 2.5 Weitere Voraussetzungen für Performance in SQL bei DB2 Es ist bekannt, dass sich Tuning- und Performance-Maßnahmen auch bei relationalen Systemen bis auf die Applikationsentwicklung auswirken. So gilt auch hier, dass die ineffiziente Nutzung von Systemressourcen durch Anwendungsprogramme über systemtechnische Einstellungen nicht korrigiert werden kann. Deshalb müssen vor allem die Entwickler: Verständnis für die Interna der DB2-Umgebung besitzen ein tiefes Wissen über DB2-Tuning-Ansätze und Optimizer-Verhalten haben das (logische und das physische) Datenmodell kennen S.K.Consulting Services GmbH ++49 (0) Seite 16 von 44

17 Kapitel 2: Grundsätzliches zu DB2 und Performance Das Fundament für gute Performance kann nur über entsprechende Maßnahmen beim System-Design in Daten- und Funktionsentwurf erreicht werden Weitere den Leistungsdurchsatz und Performance beeinflussende Faktoren sind: 1. Bestimmte Benutzergruppen Die grob einzuteilenden Benutzergruppen, die diese Frage aus der Sicht des Anwenderverhaltens problematisch werden lassen, sind End-User mit allen Erwartungen/Anforderungen an alle denkbaren und nicht planbare Datenkonstellationen an komfortable Oberflächen an gute, unverzügliche Antwortzeiten an permanente Verfügbarkeit Anwendungsentwickler mit ihrer Qualifikation und dem Wissen über Vorgehensmethoden und techniken und dem Verständnis komplexer Zusammenhänge und dem Verständnis für interne, systemtechnische Zusammenhänge und Konsequenzen und ihrem Wissen unter dem Aspekt des Einsatzes und der Handhabung von Tools Administratoren mit ihrem Qualitätsanspruch an Planung und Kontrolle optimierter Ressource-Nutzung unter der Anforderung des Sicherstellens aller möglichen und notwendigen security -Aspekte an die Nutzung effizienter und sicherer Administrationswerkzeuge 2. Methodeneinsatz In den aus der Praxis entlehnten Erfahrungen mit Performanceproblemen weisen die meisten auf unsystematisches Vorgehen in der Anwendungsentwicklung hin (siehe auch Grafik im Kapitel DB2 Anwendungsentwicklung / Pkt. I: Übersicht). Sinnvollerweise sollte beim Vorgehen in der AE (= Anwendungsentwicklung ) auf folgende Faktoren besonderes Augenmerk gelegt werden: Einsatz einer fundierten Vorgehens- und Systementwicklungsmethodik und deren Kontrolle Festlegung objektivierbarer und sinnvoller Performance- Zielsetzungen Permanente Berücksichtigung aktueller Performance-Erkenntnisse 3. Technologie-Einsatz Hoher Komfort verlangt nach hohem Ressourceneinsatz. Dennoch sollen die Ressourcenverbräuche angemessen sein. Übergroße Schuhe hindern einen am Laufen ebenso wie zu kleine... S.K.Consulting Services GmbH ++49 (0) Seite 17 von 44

18 Kapitel 2: Grundsätzliches zu DB2 und Performance Dabei ist es entscheidend, dass auf keiner der unterschiedlichen Ressourcenund Technologieebenen Engpässe auftreten dürfen: angemessene Hardware abgestimmtes Betriebssystem und systemnahe Software moderater Einsatz von Standard-Software-Systemen Unterstützung von Individualanwendungen Nutzung von Performance-Tools Nutzung von moderaten Entwicklungshilfen S.K.Consulting Services GmbH ++49 (0) Seite 18 von 44

19 Kapitel 2: Grundsätzliches zu DB2 und Performance 2.6 Möglichkeiten und Maßnahmen zur (SQL-)Optimierung Wie in jedem Datenbanksystem sind auch bei DB2 die Tuningmöglichkeiten auf einige, aber komplexe und sinnvolle Maßnahmen beschränkt. Diese Tuningaktivitäten in den einzelnen Bereichen gehorchen den allgemeinen Gesetzen des Systemtunings und diese sind: 1. Performance entsteht nicht von selbst! 2. Performance ist niemals statisch! 3. Performance ist zu definieren und damit PLANBAR 4. "benchmarks" sind meist SUBJEKTIV und damit im Einzelfall NICHT aussagefähig!!!!! 5. Performance wird erreicht durch das Zusammenwirken mehrerer (annähernd) GLEICHWERTIGER Faktoren: a) ein realistisches, "sauberes" Informationsmodell b) eine optimale Umsetzung dessen in die physische Umgebung c) eine klare und systematische Anwendungsentwicklung d) effiziente Anwendungsprogramme e) die optimale Einstellung der DBMS-Parameter f) eine entsprechende Änderung und Anpassung der OS-Parameter g) eine ständige Überwachung der Produktionsumgebung - durch Datenadministration - durch die Datenbankadministration - über "Monitoring" h) nicht zuletzt ein entsprechender Hardware-Einsatz Die Tuning-Möglichkeiten bei DB2 lassen sich also grob unterteilen in: Systemtechnische Aktivitäten Anwendungsbezogene Maßnahmen Tuningpotentiale des DB2-Systems S.K.Consulting Services GmbH ++49 (0) Seite 19 von 44

20 Kapitel 2: Grundsätzliches zu DB2 und Performance Systemtechnische Aktivitäten Zu den systemtechnischen Maßnahmen, die in den direkten Zuständigkeitsbereich der Datenbankadministratoren (DBA) beispielsweise für DB2 for z/os fallen, gehören: Optimierung der Generierungsparameter für z/os, CICS, IMS-DB und TSO. Autorisierungskonzept. Connection- und Thread -Nutzung ( Pooling ) Optimierung der Generierungsparameter für DB2, wie z.b.: Bufferpool-Größe und Nutzung EDM-PooI-Größe Bereitstellen der virtuellen Speicher/Systeme Lock-Definitionen (IRLM) LOG-Definitionen und -einstellungen Festlegung der Optionen für physische DB2-Objekte, wie z.b.: Storage group / User defined (VSAM-)Datasets DB2-Databases Typisierung der (User-)Tablespaces Typisierung und Einrichten der optimalen Indizes Nuztzung von Packages, Collections und (Anwendungs-)Plänen Re- bzw. Umorganisation der physischen Datenspeicherung. Anlegen, Ändern oder Löschen von Indizes. Beeinflussung der DB2-Zugriffspfade durch Manipulation von (Katalog-) Statistik-Werten. Permanente Überwachung des Systemverhaltens Einsatz von Utilities, wie z.b. RUNSTATS, CHECK, REORG etc. Durchführung gezielter REBIND-Maßnahmen und damit Nutzung von statischem SQL für operative Systeme Optimale Einrichtung der JDBC-, ODBC, CONNECT-Strecken Anwendungsbezogene Maßnahmen Unter anwendungsbezogenen Maßnahmen versteht man: logische und physische Datenmodellierung mit Festlegung der Benutzer- DB2-Objekte (auch Denormalisierung, falls erforderlich). Einsatzentscheidungen für: Tabellen, Views, Synonyme und Aliase Veränderungen der Datenablage mit Auswirkung auf die logische Ebene (z.b. Aufteilen langer Zeilen, Kompression, Änderung von Datentypen, Einsatz von UNIOCODE etc.). Festlegung und Test von SQL-Statements (z.b. durch EXPLAIN nach Ausführung von RUNSTATS, durch Tools wie APPTUNE, MAINVIEW etc.) beim operativen Einsatz Umschreiben von Queries (Abfragen und Manipulationen) in effizienterer Form. S.K.Consulting Services GmbH ++49 (0) Seite 20 von 44

21 Kapitel 2: Grundsätzliches zu DB2 und Performance Festlegung der Nutzung von "constraints", RI, "triggers", UDF s und gespeicherten Prozeduren (STPs) Die Tuningpotentiale des DB2-Systems selbst Die Tuningpotentiale des DB2-Systems selbst liegen vor allem in folgenden Bereichen: z/os-prioritäten-steuerung Adressraum-Nutzung Paging/Swapping Interne Ressource-Nutzung Generierungsparameter(ZPARMS) Connection/Thread-Nutzung Anzahl parallele Threads Autorisierungs-Konzepte z/os- und DB2-Systemparameter Cross-Memory- und System-Kommunikation Bufferpool-Größe und Nutzung LOG-Management LOCK-Management Interne Ressource-Nutzung: - Anzahl intern zu behandelnder Zeilen (Materialisierungen) Definition der Daten-Zugriffspfade: - Einfache Zugriffspfade - Page Set Scan, Index-Nutzung - Komplexe Zugriffspfade - Join, Subqueries Filtermöglichkeiten und Aufwand bei der Bearbeitung vorgegebener SQL-Prädikate Anzahl zu übertragender Pages = Cl s VSAM-Optionen DB2-DDL-Optionen Page-Nutzung Freespace-Zuordnung Daten-Zusammenlegung Daten-Verteilung(DDF) Speicherhierarchien Index-Definition und Nutzung IRLM - - Services VSAM System- Services Database- Services DDF- DDF- Services Andere Trägersysteme Bild-03: Die DB2-Services im Überblick S.K.Consulting Services GmbH ++49 (0) Seite 21 von 44

22 Kapitel 4: Überlegungen zur SQL-Performance 3 SQL - Die Structured Query Language bei DB2 SQL besteht aus folgenden Kategorien, die sich wiederum in ihren Sprachelementen unterscheiden: DDL DML DCL Data Definition Language Data Manipulation Language Data Control Language DDL DML DCL CREATE SELECT / SELECT INTO GRANT DROP INSERT REVOKE ALTER UPDATE LABEL DELETE EXCHANGE MERGE RENAME TRUNCATE COMMENT PREPARE EXECUTE (IMMEDIATE) CONNECT / REFRESH SET CONNECTION / CURRENT.. CALL RELEASE (connect) SAVEPOINT COMMIT RELEASE SAVEPOINT ROLLBACK DECLARE OPEN / CLOSE DESCRIBE ALLOCATE EXPLAIN FREE GET DIAGNOSTICS HOLD LOCATOR INCLUDE LOCK REFRESH TABLE SIGNAL VALUES / VALUES INTO WHENEVER Bild-04: Übersicht über die wichtigsten SQL-Sprachelemente Während DDL und DCL in Richtung des "environment management" von DB2 zielen, kann die DML als das User-Interface der Sprache SQL bezeichnet werden. Dabei ist nicht nur die Menge der Sprachelemente entscheidend, sondern deren Kombinierbarkeit. Sie macht die Mächtigkeit von SQL aus. DB2 deckt damit die DML-Anforderungen im Relationenmodell und mehr ab: Es gibt keine Auswirkung der physischen Speicherungsgegebenheiten auf - die Formulierung von SQL, z. B. TS-Formen, Indizes usf. - SQL als nicht-prozedurale Sprache - die Qualität von DB2-SQL: alle Sprachelemente sind Mengenoperationen S.K.Consulting Services GmbH Seite 22 von 44

23 Kapitel 3: SQL Die structured Query Language bei DB2 Und: SQL enthält Sprachkonstrukte für Projektion, Selektion, Join. SQL bietet eine Vielzahl "eingebauter Funktionen" ("builtin functions" und "scalar functions" ) für bool sche Operationen, für spezielle Prädikate und "date / time" - Arithmetik. Fast alle SQL-DML-Befehle können in Form von "views" abgelegt werden. Die wichtigsten Sprachelemente der SQL-DML finden Sie in der folgenden Übersicht: Lesen SELECT eingebaute Funktionen SUM Ändern INSERT MAX, MIN, AVG UPDATE DISTINCT DELETE COUNT TRUNCATE MERGE Gruppieren spezielle Aussagen UNION GROUP BY INTERSECT, EXCEPT HAVING LIKE, IN, ANY, ALL BETWEEN EXISTS Sortieren ORDER BY Bool sche Operatoren AND OR NOT Sperren LOCK Arithmetische Operatoren Vergleichsoperatoren +, - =, >=, <= /, * ^=, ==, <> (, ) >, < Spez. Arithmetik YEAR, MONTH, DAY, DAYS "Scalar Functions" HOUR, MINUTE, SECOND, LENGTH, VALUE, SUBSTR, MICROSECOND, CHAR, INT, HEX, DEC, CURRENT FLOAT, DIGITS, DATE, TIME, DAY, CAST, BINARY, TIMESTAMP, WEEK, NULLIF, CASE, MONTHS DECFLOAT, BIGINT, COALESCE Weitere Funktionen(Beispiele): CLOB, BLOB ABS, ROUND, ACOS, ASIN, "Table Functions" ATAN, COS, MQREADALL, LOWER, UPPER MQRECEIVEALL LTRIM, RTRIM, WITH RAND, REPEAT SIGN, STRIP, TAN, TRUNC, RANK() ROWID, INCLUDE, ROW_NUMBER... Bild-05: Grobe Übersicht über die SQL-Funktionen Eine Liste aller derzeit in DB2 implementierten builtin-functions mit Beispielen ist im Anhang unter Pkt ff. zu finden. S.K.Consulting Services GmbH ++49 (0) Seite 23 von 44

24 Kapitel 3: SQL Die structured Query Language bei DB2 3.1 Relationale Sprachelemente und Operationen bei SQL SQL nutzt algebraische Mengenfunktionen zur Qualifikation der Daten. Die Grundemente sind dabei: PROJEKTION SELEKTION JOIN Auswahl bestimmter Spalten Auswahl bestimmter Zeilen aufgrund von Dateninhalten - auch anhand verknüpfter Suchkriterien Zusammenführen von Daten aus mehreren Tabellen Die relationale Funktion "SELEKTION" Die Funktion "SELEKTION" meint in der relationalen Algebra die Auswahl bestimmter Zeilen, z. B. aus TAB A A B C D E a1 b1 c1 d1 e1 a2 b2 c2 d2 e2 a3 b3 c3 d3 e3 a4 b4 c4 d4 e4 ergibt A B C D E a2 b2 c2 d2 e2 a4 b4 c4 d4 e4 In SQL lautet die Formulierung: SELECT * FROM TABA WHERE A = 'a2' OR A = 'a4' Bild-06: Die Selektion im RDB-Modell S.K.Consulting Services GmbH ++49 (0) Seite 24 von 44

25 Kapitel 3: SQL Die structured Query Language bei DB Die relationale Funktion "PROJEKTION" Die "PROJEKTION" im Sinne der relationalen Algebra bedeutet die Auswahl bestimmter Spalten aus einer Relation, z.b. Spalte A, C, D A B C D E a1 b1 c1 d1 e1 a2 b2 c2 d2 e2 a3 b3 c3 d3 e3 a4 b4 c4 d4 e4 ergibt a) A C D a1 c1 d1 a2 c2 d2 a3 c3 d3 häufig erfolgt auch eine a4 c4 d4 Mischung aus Selektion und Projektion In SQL lautet die Formulierung: ergibt b) A C D a2 c2 d2 a4 c4 d4 a) SELECT A, C, D b) SELECT A, C, D FROM TABA FROM TABA WHERE A = 'a2' OR A = 'a4' Bild-07: Die Projektion im RDB-Modell S.K.Consulting Services GmbH ++49 (0) Seite 25 von 44

26 Kapitel 3: SQL Die structured Query Language bei DB Die relationale Funktion "JOIN" Die Funktion JOIN basiert auf dem Verbinden von Tabellen = Bilden des kartesischen Produkts. Diese Mengenfunktion ist mathematisch korrekt, aber informationstechnisch von minderem Wert. Deshalb bildet man bei SQL-JOINs nicht das kartesische Produkt, sondern vielmehr eine Intersektionsmenge (= Durchschnittsmenge). Dazu muss der Anwender wissen, über welche Attribute (Spalten) die Verbindung zur jeweils anderen Tabelle hergestellt werden kann. Zusammengesetzte Schlüssel müssen dazu vollständig qualifiziert werden. Im Beispiel wird über A verknüpft. TABA A B C D E a1 b1 c1 d1 e1 a2 b2 c2 d2 e2 a3 b3 c3 d3 e3 a4 b4 c4 d4 e4 nicht im Ergebnis (out of join) TABB F G H ergibt als karthesisches Produkt die Permutation aus beiden Tabellen - als JOIN Menge aber folgendes Resultat: a1 g1 h1 a2 g2 h2 a4 g3 h3 A B C D E F G H a1 b1 c1 d1 e1 a1 g1 h1 a2 b2 c2 d2 e2 a2 g2 h2 a4 b4 c4 d4 e4 a4 g3 h3 In SQL lautet die JOIN-Formulierung: SELECT * FROM TABA, TABB WHERE TABA.A = TABB.F Bild-08: Der Join (alte Schreibweise) im RDB-Modell S.K.Consulting Services GmbH ++49 (0) Seite 26 von 44

DB2 SQL. DB2-Optimierung und SQL-Performance. Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL. Ausgabe 9: 2010 V 9.

DB2 SQL. DB2-Optimierung und SQL-Performance. Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL. Ausgabe 9: 2010 V 9. Kapitel 2: Grundsätzliches zu DB2 und Performance Grundlagen, Standards und Tipps zum effizienten Umgang mit DB2/SQL DB2 SQL Optimierung und Performance Ausgabe 9: 2010 V 9.03 S.K.Consulting Services GmbH

Mehr

DB2-Optimierung und SQL-Performance

DB2-Optimierung und SQL-Performance Kapitel 3: SQL Die Structured Query Language bei DB2 Standards, Tipps und Grundlagen zum Umgang mit DB2/SQL und anderen SQL - Dialekten DB2 - Optimierung und SQL - Performance Ausgabe 6: 2006 (inkl. DB2V7/V8)

Mehr

SQL Performance - Tips Do's & Don'ts

SQL Performance - Tips Do's & Don'ts SQL Performance - Tips Do's & Don'ts S.K. Consulting GmbH, München DB2_SQL_PERF - 1 - Inhaltsverzeichnis I. Richtlinien bei der Verwendung von SQL 1.1. In Programmen "verbotene" SQL- Anweisungen 1.2 SQL

Mehr

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at DB2 & SQL E I N F Ü H R U N G T U N I N G O P T I M I E R U N G S E C R E T S ANDREAS PROUZA andreaspr@aon.at andreas@prouza.at http://www.prouza.at Wien, 2015-03-27 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis...

Mehr

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning IBM DB2 für Linux/Unix/Windows Monitoring und Tuning Seminarunterlage Version: 4.05 Version 4.05 vom 9. Februar 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt-

Mehr

Zugriffe auf DB2-Datenbanken

Zugriffe auf DB2-Datenbanken Zugriffe auf DB2-Datenbanken S.K. Consulting GmbH, München DB2_SQL_PERF - 1 - Inhaltsverzeichnis I. Der Zugriffspfad bei DB2 1.1 Query Typen 1.2 Ermittlung des Zugriffspfads 1.2.1 Faktoren der Entscheidung

Mehr

DGD-DB2-Ausbildung. DB2-IMP Implementierung des physischen Daten-Modells. DB2-Temporal Tables Fachliche und technische Daten-Versionierung

DGD-DB2-Ausbildung. DB2-IMP Implementierung des physischen Daten-Modells. DB2-Temporal Tables Fachliche und technische Daten-Versionierung 1 DGD-DB2-Ausbildung Strategischer Überblick Grundausbildung DB2-M DB2-Einführung und Konsequenzen SQL-GR SQL-Grundlagen Einführung in die Sprache Logische Daten-Modellierung DB2-PROG DB2-Anwendungsprogrammierung

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

IBM Informix Tuning und Monitoring

IBM Informix Tuning und Monitoring Seminarunterlage Version: 11.01 Copyright Version 11.01 vom 25. Juli 2012 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

(*) IBM DB2 V8 for z/os. DB2 Versionen. (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. Feb 2005 1

(*) IBM DB2 V8 for z/os. DB2 Versionen. (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. Feb 2005 1 (*) IBM DB2 V8 for z/os DB2 Versionen (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. 1 Neuerungen der DB2 UDB Version 7 für z/os (Release-Datum: ca. Juli 2001): Universelle

Mehr

Allgemeine Tips zur Steigerung der SQL Performance

Allgemeine Tips zur Steigerung der SQL Performance Allgemeine Tips zur Steigerung der SQL Performance Tips für Einsteiger und fortgeschrittene SQL-Benutze zu den Themen: ALLGEMEINE TIPS ZUR STEIGERUNG DER SQL PERFORMANCE... 1 1 DB2 SQL UND PERFORMANCE...

Mehr

3. Architektur eines DBS (Oracle)

3. Architektur eines DBS (Oracle) 3. Architektur eines DBS (Oracle) aus Sicht des Datenbank Server Rechners Connectivity Komponente(n) des DBS (z.b. Oracle Listener) Installation ORACLE_HOME Instanz ORACLE_SID Datenbank Oracle: 1 (aktive)

Mehr

Cassandra Query Language (CQL)

Cassandra Query Language (CQL) Cassandra Query Language (CQL) Seminar: NoSQL Wintersemester 2013/2014 Cassandra Zwischenpräsentation 1 Gliederung Basic facts Datentypen DDL/DML ähnlich zu SQL Besonderheiten Basic facts CQL kurz für

Mehr

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Neue Technologien effizient nutzen Ehningen, 3. Juli 2014 Rodney Krick rk@aformatik.de aformatik Training & Consulting GmbH & Co. KG

Mehr

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht Inhaltsverzeichnis A. Installationsübersicht B. und Optimierungsbereiche B.1 Hardware B.2 OperatingSystem Z/OS B.3 Databasemanagementsystem DB2 B.4 Applikation C. Organisation BSS_Chart-library 1 Installationsübersicht

Mehr

Einführung in SQL Datenbanken bearbeiten

Einführung in SQL Datenbanken bearbeiten Einführung in SQL Datenbanken bearbeiten Jürgen Thomas Entstanden als Wiki-Buch Bibliografische Information Diese Publikation ist bei der Deutschen Nationalbibliothek registriert. Detaillierte Angaben

Mehr

Transaktionen in der Praxis. Dr. Karsten Tolle

Transaktionen in der Praxis. Dr. Karsten Tolle Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);

Mehr

DB2 Version 10 Kapitel IT-Sicherheit

DB2 Version 10 Kapitel IT-Sicherheit (*) IBM DB2 for z/os DB2 Version 10 Kapitel IT-Sicherheit (06_DB2V10_itsicherheit.pptx) (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. 1 DB2 Version 10 IT Sicherheit DB2

Mehr

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

IBM Informix SQL. Seminarunterlage. Version 11.04 vom

IBM Informix SQL. Seminarunterlage. Version 11.04 vom Seminarunterlage Version: 11.04 Version 11.04 vom 27. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index!

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index! 1/40 PHP-User-Group Stuttgart 14.01.2009 Warum Datenbanken einen Hals bekommen und was sich dagegen tun lässt. Tuning und Performancesteigerung ohne zusätzliche Hardware. Ein. Loblied auf den Tabellen-Index!

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

PostgreSQL im praktischen Einsatz. Stefan Schumacher

PostgreSQL im praktischen Einsatz. Stefan Schumacher PostgreSQL im praktischen Einsatz 2. Brandenburger Linux Infotag 2005 Stefan Schumacher , PGP Key http:/// $Header: /home/daten/cvs/postgresql/folien.tex,v 1.11 2005/04/25

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

MIPS-Aufrüstung vermeiden. BMC DB2-Mainview Usertreffen 2012 Hubertus Beucke

MIPS-Aufrüstung vermeiden. BMC DB2-Mainview Usertreffen 2012 Hubertus Beucke MIPS-Aufrüstung vermeiden BMC DB2-Mainview Usertreffen 2012 Hubertus Beucke Inhalt 1. Szenario 2. Arbeitsweise 2.1. Identifikation der Hauptverbraucher 2.2. Analyse der Hauptverbraucher 2.3. Tuningvorschlag

Mehr

Portierung einer DB2/VM-Datenbank nach DB2 unter zlinux 4 Jahre später - Wie würde ich heute vorgehen?

Portierung einer DB2/VM-Datenbank nach DB2 unter zlinux 4 Jahre später - Wie würde ich heute vorgehen? Portierung einer DB2/VM-Datenbank nach DB2 unter zlinux 4 Jahre später - Wie würde ich heute vorgehen? Tipps aus der Praxis zur Anwendungsentwicklung, Migration und Performanceuntersuchung 1 Einleitung

Mehr

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012 Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

MaxDB-Schulungsthemen

MaxDB-Schulungsthemen MaxDB-Schulungsthemen Ein Überblick über unser Angebot Allgemeine Hinweise zu unseren Schulungen Die Schulungen finden in der Regel als Inhouse Schulungen bei den interessierten Unternehmen statt. Die

Mehr

Einführung in die Informatik II

Einführung in die Informatik II Einführung in die Informatik II Die Structured Query Language SQL Prof. Dr. Nikolaus Wulff SQL Das E/R-Modell lässt sich eins zu eins auf ein Tabellenschema abbilden. Benötigt wird eine Syntax, um Tabellen

Mehr

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,

Mehr

Informatik Datenbanken SQL-Einführung

Informatik Datenbanken SQL-Einführung Informatik Datenbanken SQL-Einführung Gierhardt Inhaltsverzeichnis 1 Vorbemerkungen 1 2 Auswahl-Abfragen mit SELECT 2 2.1 Selektion...................................... 2 2.2 Projektion.....................................

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

DB2 SQL, der Systemkatalog & Aktive Datenbanken

DB2 SQL, der Systemkatalog & Aktive Datenbanken DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog

Mehr

Oracle 9i Einführung. Performance Tuning. Kurs. Teil 9 Sortiervorgänge. Universität Hannover. Sortiervorgänge. Migration. Konfiguration.

Oracle 9i Einführung. Performance Tuning. Kurs. Teil 9 Sortiervorgänge. Universität Hannover. Sortiervorgänge. Migration. Konfiguration. Kurs Oracle 9i Einführung Performance Tuning Teil 9 Anhang Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 14 Seite 1 von 14 Agenda 1. Einführung 2. 3. 4. Der Sortiervorgang 5. 6. Statische Informationen

Mehr

Transaktionsverwaltung

Transaktionsverwaltung Transaktionsverwaltung VU Datenbanksysteme vom 21.10. 2015 Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Transaktionsverwaltung

Mehr

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language: SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

Performance Tuning mit @enterprise

Performance Tuning mit @enterprise @enterprise Kunden-Forum 2005 Performance Tuning mit @enterprise Herbert Groiss Groiss Informatics GmbH, 2005 Inhalt Datenbank RMI JAVA API HTTP Konfiguration Analyse Groiss Informatics GmbH, 2005 2 Datenbank

Mehr

Datenbankadministration

Datenbankadministration Datenbankadministration 10. Monitoring AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 Momentaufnahmen Momentaufnahmen

Mehr

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

Erste Schritte, um selber ConfigMgr Reports zu erstellen

Erste Schritte, um selber ConfigMgr Reports zu erstellen Thomas Kurth CONSULTANT/ MCSE Netree AG thomas.kurth@netree.ch netecm.ch/blog @ ThomasKurth_CH Erste Schritte, um selber ConfigMgr Reports zu erstellen Configuration Manager Ziel Jeder soll nach dieser

Mehr

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler

Geordnete Form...36 Erfassung und Speicherung...37 Relationale Datenbanken...37 Einfache Tabellen...37 Objekte und Begriffe relationaler Inhaltsverzeichnis Einleitung...13 SQL: Die Abfragesprache für Datenbanken...17 Kennzeichnende Merkmale von SQL...17 SQL-Dialekte...18 Kurze Entwicklungsgeschichte...18 SQL/86 oder SQL/1...19 SQL/89 oder

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

SQL-Anweisungen. SELECT (SQL Data Query Language)

SQL-Anweisungen. SELECT (SQL Data Query Language) SQL-Anweisungen SELECT (SQL Data Query Language) SELECT * SELECT * FROM "meine Tabelle"; SELECT feldname1, feldname2 SELECT feldname1, feldname2 FROM meinetabelle ORDER BY feldname2, feldname1 DESC; WHERE

Mehr

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht)

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Christian Haag, DATA MART Consulting Consulting Manager Oracle DWH Team

Mehr

tcvision Freigabemitteilung Version 6

tcvision Freigabemitteilung Version 6 tcvision Freigabemitteilung Version 6 Stand: 5. Mai 2015 TCP/IP TCP/IP Verbindungen werden dynamisch auf- und abgebaut, um Stabilitätsproblemen in der Infrastruktur zu begegnen. Mit Hilfe des tcscript

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Schlagworte Autor: Klaus Friemelt, MT AG dynamisches BULK SQL, VARCHAR2-indizierte PL/SQL-Tabellen Einleitung Mit den letzten

Mehr

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

Build in Function BIF Compatibility. Udo Puschkarsky DB2-Guide 18.05.2015

Build in Function BIF Compatibility. Udo Puschkarsky DB2-Guide 18.05.2015 Build in Function BIF Compatibility Udo Puschkarsky DB2-Guide 18.05.2015 Ausgangssituation Mit DB2 V10 Compatibility Mode Änderungen bei der STRING Formatierung von Decimal Data bei der CHAR und VARCHAR

Mehr

Oracle Datenbank / Ubuntu

Oracle Datenbank / Ubuntu Oracle Datenbank / Ubuntu Sebastian Gath & Hannes Schwarz Seminar Database Tuning & Administration Universität Konstanz - SS 2007 Administration Vorbereitung Zeitmessung Erste Zeitmessung 2 Ausgangssituation

Mehr

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen

ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen ARIS II - Modellierungsmethoden, Metamodelle und Anwendungen C3: Structured Query Language Lernziele: Nach der Bearbeitung dieser Lektion haben Sie folgende Kenntnisse erworben: Sie können elementaren

Mehr

adcubum ACADEMY. Die Vertiefung von Hochstehendem. SQL-Datenbankkurse

adcubum ACADEMY. Die Vertiefung von Hochstehendem. SQL-Datenbankkurse adcubum ACADEMY. Die Vertiefung von Hochstehendem. SQL-Datenbankkurse Rubrik: Datenbanken Einleitung adcubum SYRIUS legt alle Bewegungsdaten in der Datenbank ab. Als Consultant, Parametrierer, Kundendienstmitarbeitender,

Mehr

Built in Function. BIF Compatibility. Eine anonymisierte Kundenpräsentation. von Siegfried Fürst SOFTWARE ENGINEERING GmbH

Built in Function. BIF Compatibility. Eine anonymisierte Kundenpräsentation. von Siegfried Fürst SOFTWARE ENGINEERING GmbH GIVE and TAKE Programme Inspiring experiences Built in Function BIF Compatibility Eine anonymisierte Kundenpräsentation von Siegfried Fürst SOFTWARE ENGINEERING GmbH 2015 SOFTWARE ENGINEERING GMBH and

Mehr

Berater-Profil 220. DB-Administrator (IMS, DB2)

Berater-Profil 220. DB-Administrator (IMS, DB2) Berater-Profil 220 DB-Administrator (IMS, DB2) Kompetenzen: - Datenbank-Design (ERM KDBD) - Performance Analyse - Performance Optimierung - Troubleshooting - Projektleitung - Systemprogrammierung - Schulungsleitung

Mehr

(*) IBM DB2 for z/os. Einleitung - bisherige DB2 Versionen. (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc.

(*) IBM DB2 for z/os. Einleitung - bisherige DB2 Versionen. (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. (*) IBM DB2 for z/os Einleitung - bisherige DB2 Versionen (*) ist eingetragenes Warenzeichen der IBM International Business Machines Inc. 1 (V10) DB2 V10 Neuerungen (Release Oktober 2010) Subsystem Verbesserungen

Mehr

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen.

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen. Ora Education GmbH www.oraeducation.de info@oraeducation.de Lehrgang: Oracle 11g: New Features für Administratoren Beschreibung: Der Kurs über fünf Tage gibt Ihnen die Möglichkeit die Praxis mit der neuen

Mehr

SQL. Abfragesprache Datenmanipulation - DML

SQL. Abfragesprache Datenmanipulation - DML SQL Abfragesprache Datenmanipulation - DML SQL DML-Operationen DML = Data Manipulation Language Sprache zur Veränderung der Daten Operationen Daten selektieren Daten einfügen Daten ändern Daten löschen

Mehr

PROFIL PETER SUMBECK. Personendaten: Position: Beratung / Consulting DB Administration / Support DB2 Systemprogrammierung

PROFIL PETER SUMBECK. Personendaten: Position: Beratung / Consulting DB Administration / Support DB2 Systemprogrammierung Personendaten: PROFIL PETER SUMBECK Anschrift Grimmstrasse 39, D40235 Düsseldorf Phone Handy: +49-170-34 34 134 Home: +49-211-69 89 300 E-Mail peter@sumbeck.de URL http://www.sumbeck.de EDV-Erfahrung seit

Mehr

DB2 for z/os. Musterlösungen zu den Übungen

DB2 for z/os. Musterlösungen zu den Übungen Musterlösungen zu den Übungen 4. Januar 2013 Eine Ausarbeitung von: cps4it Ralf Seidler Stromberger Straße 36A 55411 Bingen Fon: +49-6721-992611 Fax: +49-6721-992613 Mail: ralf.seidler@cps4it.de Internet

Mehr

Qualifikationsprofil:

Qualifikationsprofil: Qualifikationsprofil: GEME Jahrgang 1957 Nationalität Deutsch Fremdsprachen Englisch Ausbildung Betriebswirt Zertifikate IBM Certified Database Administrator DB2 9 for z/os, IBM Certified Database Administrator

Mehr

DB2 Newsletter Inhalt

DB2 Newsletter Inhalt DB2 Newsletter Inhalt Datenbankdesign Wie groß ist eine Large Tabelle 200811 Anwendung der Datenkomprimierung in DB2 LUW 200808 Macht Table Partitioning Union-All-Views überflüssig? 200807 BCU: Was ist

Mehr

Change Log. Fehlerbehebung bei den Funktionen Edit SQL, Set Session_user und Set current Schema..

Change Log. Fehlerbehebung bei den Funktionen Edit SQL, Set Session_user und Set current Schema.. Change Log 15.09.2015 Version 2.0.3.9 Fehlerbehebung bei den Funktionen Edit SQL, Set Session_user und Set current Schema.. 15.01.2015 Version 2.0.3.8 Unter Optionen können jetzt zusätzliche Parameter

Mehr

Archive / Backup System für OpenVMS

Archive / Backup System für OpenVMS Archive / Backup System für OpenVMS DECUS Symposium 2002 Bonn Vortrag-Nr. 3C04 Günther Fröhlin Compaq Computer Corporation Colorado Springs, USA 1 Highlights V4.0 Auslieferung Januar 2002 Hauptversion

Mehr

Oracle Datenbankadministration Grundlagen

Oracle Datenbankadministration Grundlagen Oracle Datenbankadministration Grundlagen Seminarunterlage Version: 12.02 Version 12.02 vom 14. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

Inhalt. Vorwort...11. 1 Die Eigenschaften von PostgreSQL...15. 2 Das ideale DBMS...45. 3 Der Datenbankadministrator...59

Inhalt. Vorwort...11. 1 Die Eigenschaften von PostgreSQL...15. 2 Das ideale DBMS...45. 3 Der Datenbankadministrator...59 Inhalt Vorwort...11 1 Die Eigenschaften von PostgreSQL...15 1.1 Die Geschichte von PostgreSQL...16 1.2 Die Lizenz von PostgreSQL...17 1.3 Grundlegende Konzepte von Postgres...17 1.3.1 Die Eigenschaften

Mehr

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine.

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine. Kapitel 2 Datenverwaltung durch SQL Server Wir wollen das obige Skript zwei Mal laufen lassen, einmal mit und einmal ohne eingeschalteten Schreibcache der Festplatte. Für eine lokale Festplatte können

Mehr

Datenbankadministration

Datenbankadministration Datenbankadministration 3. Architektur AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 DB2 Produktpalette DB2 Universal

Mehr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale

Mehr

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken.

SQL. SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Vorlesungsteil SQL Grundlagen - 1 / 8 - SQL SQL = Structured Query Language, ist eine standardisierte Sprache zum Gebrauch im Zusammenhang mit Datenbanken. Auf einem Server (Rechner im Netz, der Dienste

Mehr

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen: 1 Einführung in Datenbanksysteme Fast jeder kennt Excel und hat damit in seinem Leben schon einmal gearbeitet. In Excel gibt es Arbeitsblätter, die aus vielen Zellen bestehen, in die man verschiedene Werte

Mehr

IO Performance in virtualisierten Umgebungen

IO Performance in virtualisierten Umgebungen IO Performance in virtualisierten Umgebungen Bruno Harsch El. Ing. HTL/FH Managing Partner Tel +41 52 366 39 01 bruno.harsch@idh.ch www.idh.ch IDH GmbH Lauchefeld 31 CH-9548 Matzingen 2 Die Firma IDH wurde

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services

27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services 531 27 Transact-SQL-Erweiterungen in Bezug auf Analysis Services Im zweiten Teil dieses Buches haben wir die Eigenschaften der Transact-SQL- Sprache in Bezug auf die Bearbeitung von operativen Daten gezeigt.

Mehr

Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten

Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten Entwurf Data Architect Verwaltung und Umsetzung komplexer Datenmodelle Graphische Darstellung

Mehr

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7

CARL HANSER VERLAG. Christopher Allen. Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 CARL HANSER VERLAG Christopher Allen Oracle PL/SQL für Einsteiger Der Einsatz von SQL und PL/SQL in der Oracle-Datenbank 3-446-21801-7 www.hanser.de Inhaltsverzeichnis Danksagung...XI Einleitung...XIII

Mehr

SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit

SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit Johann Fößleitner Cadaxo GmbH email: johann.foessleitner@cadaxo.com Twitter: @foessleitnerj Agenda 1 SAP HANA Integrationsszenarien

Mehr

Backup & Recovery in Oracle 11g Funktionen und Features

Backup & Recovery in Oracle 11g Funktionen und Features Backup & Recovery in Oracle 11g Funktionen und Features Wolfgang Thiem Server Technologies Customer Center ORACLE Deutschland GmbH Warum werden Backups gemacht? Damit man im Fehlerfall auf einen konsistenten

Mehr

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1 Inhaltsverzeichnis Lutz Fröhlich PostgreSQL 9 Praxisbuch für Administratoren und Entwickler ISBN (Buch): 978-3-446-42239-1 ISBN (E-Book): 978-3-446-42932-1 Weitere Informationen oder Bestellungen unter

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de Oracle GridControl Tuning Pack best Open Systems Day April 2010 Unterföhring Marco Kühn best Systeme GmbH marco.kuehn@best.de Agenda GridControl Overview Tuning Pack 4/26/10 Seite 2 Overview Grid Control

Mehr

Dokumentation zur Anlage eines JDBC Senders

Dokumentation zur Anlage eines JDBC Senders Dokumentation zur Anlage eines JDBC Senders Mithilfe des JDBC Senders ist es möglich auf eine Datenbank zuzugreifen und mit reiner Query Datensätze auszulesen. Diese können anschließend beispielsweise

Mehr

27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte

27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte Ole Raether raether@oraservices.de 27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte Inhalt oraservices.de Probleme: Failover Cluster, RAC 24*7 Fazit Was tun? oraservices.de

Mehr

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1.

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1. Inhalt der Vorlesung Literatur 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell 3 Relationenalgebra 4 Datenbanksprache (SQL) 5 Normalisierung 6 Vom ERM zum Datenbankschema 7 Routinen

Mehr

Andrea Held. Motivation ILM: Definition und Strategien Lösungen für Oracle Datenbanken. Empfehlungen

Andrea Held. Motivation ILM: Definition und Strategien Lösungen für Oracle Datenbanken. Empfehlungen Andrea Held Motivation ILM: Definition und Strategien Lösungen für Oracle Datenbanken Partitionierung Komprimierung ILM Assistant Flashback Data Archive Empfehlungen 1 Datenwachstum Wachsende Kosten Schlechtere

Mehr

Tivoli Monitoring for Databases (ITM) Resource Model Tivoli Enterprise Console (TEC) Zusammenfassung. IBM Tivoli. Marcel Brückner

Tivoli Monitoring for Databases (ITM) Resource Model Tivoli Enterprise Console (TEC) Zusammenfassung. IBM Tivoli. Marcel Brückner 1 Tivoli Monitoring for Databases (ITM) Grundidee Umsetzung 2 3 Aufbau Kombination mit ITM Rule Sets 4 Grundidee Umsetzung 1 Tivoli Monitoring for Databases (ITM) Grundidee Umsetzung 2 3 Aufbau Kombination

Mehr

BICsuite!focus Parallelisierung von Prozessen mit der BICsuite Dynamic Submit Funktion

BICsuite!focus Parallelisierung von Prozessen mit der BICsuite Dynamic Submit Funktion independit Integrative Technologies GmbH Bergstraße 6 D 86529 Schrobenhausen BICsuite!focus Parallelisierung von Prozessen mit der BICsuite Dynamic Submit Funktion Dieter Stubler Ronald Jeninga July 30,

Mehr

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig)

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig) 1 Grundlagen Begriffe Daten bekannte zutreffende Tatsachen über die Domäne/Miniwelt DBS Einsatz eines DBMS für eine Datenbank, DBS besteht aus folgenden Komponenten: 1. DBMS 2. Datenbank DBMS Software

Mehr

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien

Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Aufbau einer Oracle Datenbank Tablespace, Arten von Dateien Boris Meißner 05-INDT Fachbereich Informatik, Mathematik und Naturwissenschaften HTWK-Leipzig 05. Juni 2008 Boris Meißner (Fb IMN - HTWK-Leipzig)

Mehr

RAC auf Sun Cluster 3.0

RAC auf Sun Cluster 3.0 RAC auf Sun Cluster 3.0 Schlüsselworte RAC, OPS, Sun Cluster, Performance, Availability Zusammenfassung Oracle hat mit dem Real Application Cluster (RAC) aus einer Hochverfügbarkeitslösung eine Höchstverfügbarkeitslösung

Mehr

Indexing und Performance Tuning

Indexing und Performance Tuning Indexing und Performance Tuning Cybertec Schönig & Schönig GmbH Hans-Jürgen Schönig PostgreSQL Indexing - Jeder hat schon einmal ein Telefonbuch Benutzt - Jeder hat schon einmal Suchen durchgeführt CREATE

Mehr

MySQL in großen Umgebungen

MySQL in großen Umgebungen MySQL in großen Umgebungen 03.03.2011 CeBIT Referent: Bernd Erk Agenda DESTINATION TIME REMARK KURZVORSTELLUNG MYSQL STATUS QUO STORAGE ENGINES MONITORING UND MANAGEMENT ENTERPRISE FEATURES FRAGEN UND

Mehr

7 Die Reorganisation von DB2

7 Die Reorganisation von DB2 Ab und an sollte eine Tabelle reorganisiert werden. Besonders, nachdem größere Datenmengen eingefügt oder gelöscht wurden, muß über eine Reorganisation nachgedacht werden. Eine optimale Performance ist

Mehr

System z9 and zseries Processor Capacity Reference. zpcr Erfahrungsbericht

System z9 and zseries Processor Capacity Reference. zpcr Erfahrungsbericht Qualität unser Service System z9 and zseries Processor Capacity Reference zpcr Erfahrungsbericht Dagmar Fischer - Lahnstein 28.02.2008 Agenda Ausgangspunkt Rechnerkapazität MSU MIPS LSPR Workloads ETR

Mehr