Wo sind die BIFs? Und wie können wir in Zukunft problemlos mit Ihnen leben?



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

Build in Function BIF Compatibility. Udo Puschkarsky DB2-Guide

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Installation der SAS Foundation Software auf Windows

Internet Explorer Version 6

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Anwendungsbeispiele Buchhaltung

Die Post hat eine Umfrage gemacht

Dokumentation: ZIBXL - Auswertung der internen Umbuchungen

Step by Step Webserver unter Windows Server von Christian Bartl

Online Newsletter III

Urlaubsregel in David

Inhaltsverzeichnis Seite

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

Anleitung über den Umgang mit Schildern

Was meinen die Leute eigentlich mit: Grexit?

teischl.com Software Design & Services e.u. office@teischl.com

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Erstellen von x-y-diagrammen in OpenOffice.calc

MOM - Medienforum Online-Medien Anleitung zum Ändern der Login-Nummer und des Passworts

Konvertieren von Settingsdateien

Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook ( ) Zentrum für Datenverarbeitung der Universität Tübingen

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Teaser-Bilder erstellen mit GIMP. Bildbearbeitung mit GIMP 1

Windows 7 - Whoami. Whoami liefert Informationen wie z.b. die SID, Anmelde-ID eines Users, sowie Gruppenzuordnungen, Berechtigungen und Attribute.

Mediumwechsel - VR-NetWorld Software

Bilder zum Upload verkleinern

Fotostammtisch-Schaumburg

Anleitung zum Upgrade auf SFirm Datenübernahme

Die neue Aufgabe von der Monitoring-Stelle. Das ist die Monitoring-Stelle:

Professionelle Seminare im Bereich MS-Office

Lizenzen auschecken. Was ist zu tun?

Einen Wiederherstellungspunktes erstellen & Rechner mit Hilfe eines Wiederherstellungspunktes zu einem früheren Zeitpunkt wieder herstellen

2.1 Briefkopf Klicken Sie im Menü Einstellungen auf den Button Briefkopf. Folgendes Formular öffnet sich:

LSF-Anleitung für Studierende

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Anwendungsbeispiele. Neuerungen in den s. Webling ist ein Produkt der Firma:

Gimp Kurzanleitung. Offizielle Gimp Seite:

Anleitung zum Upgrade auf SFirm Datenübernahme

Erklärung zu den Internet-Seiten von

MPDS4 EXAMPLE DATENBANK

Speichern. Speichern unter

Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:

Partnerportal Installateure Registrierung

Nachricht der Kundenbetreuung

Installation älterer Programmversionen unter Windows 7

KNX BAOS Gadget. Installations- und Bedienanleitung. WEINZIERL ENGINEERING GmbH. DE Burgkirchen Web:

Installation OMNIKEY 3121 USB

Dieser Ablauf soll eine Hilfe für die tägliche Arbeit mit der SMS Bestätigung im Millennium darstellen.

Lokale Installation von DotNetNuke 4 ohne IIS

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Einrichten einer mehrsprachigen Webseite mit Joomla (3.3.6)

Hilfe zur Urlaubsplanung und Zeiterfassung

Xerox Device Agent, XDA-Lite. Kurzanleitung zur Installation

Artikel Schnittstelle über CSV

Lehrer: Einschreibemethoden

WORKSHOP für das Programm XnView

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Kostenstellen verwalten. Tipps & Tricks

Lernwerkstatt 9 privat- Freischaltung

PayPal API Zugang aktivieren und nutzen Version / Datum V 1.5 / a) Aktivierung auf der PayPal Internetseite. 1 von 7

Installation eblvd (Fernwartung)

Jeunesse Autopiloten

Installation der Konfigurationsdateien für alle Windows-Versionen bis einschließlich Microsoft Windows 7

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Adventskalender Gewinnspiel

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

SWOT Analyse zur Unterstützung des Projektmonitorings

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

Anleitung zum Upgrade auf SFirm 3.x + Datenübernahme. I. Vorbereitungen

Alle gehören dazu. Vorwort

4D Server v12 64-bit Version BETA VERSION

Datenbanken Kapitel 2

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

SICHERN DER FAVORITEN

Qt-Projekte mit Visual Studio 2005

Tutorial Speichern. Jacqueline Roos - Riedstrasse 14, 8908 Hedingen, jroos@hispeed.ch -

Der Kalender im ipad

Checkliste für die Behebung des Problems, wenn der PC Garmin USB GPS-Geräte nicht erkennt.

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

virtuos Leitfaden für die virtuelle Lehre

Hilfedatei der Oden$-Börse Stand Juni 2014

Bedienungsanleitung für Mitglieder von Oberstdorf Aktiv e.v. zur Verwaltung Ihres Benutzeraccounts auf

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Installieren von Microsoft Office Version 2.1

Transkript:

BIF-Usage Wo sind die BIFs? Und wie können wir in Zukunft problemlos mit Ihnen leben? Wege aus der mangelnden Aufwärtskompatibilität bei der Migration von DB2 Versionen Siegfried Fürst - SOFTWARE ENGINEERING GmbH Migrationsplanungen und BIFs In der Programmierung lernt man sehr früh die Vorteile von von Built-in functions (BIF) zu schätzen. Sie ersparen unnötiges kodieren und damit Zeit und Geld. Es gibt hunderte von BIFs, sie sind überall und es gibt sie nahezu seit immer. Warum soll es jetzt Probleme geben? Zur Vorbereitung auf die Migrationsplanung zu DB2 10 weist die IBM erstmals auf die Problematik einer Inkompatibilität mit älteren Versionen für bestimmte BIFs(CHAR, VARCHAR, CAST,TIMESTAMP ) hin. Aus Gründen der Anpassung an den SQL Standard hat IBM den Output für bestimmte Datenformate in Applikationen geändert : there is a possible impact to your DB2 environment". Diese Änderungen betreffen mehrere DB2 Releases. BIF-Umgehungslösungen Die DB2 Systemprogrammierung hat zunächst andere Schwerpunkte umzusetzen. Die IBM bietet daher auch Tolerierungsparameter zur Umgehung des Aufwärtskompatibilitäts-Problems an. Mittels ZPARM BIF_Compatibility (DB2 10)kann für Applikationen ein systemweites DB2 9 Verhalten erzwungen werden. 2015 SEGUS Inc; SOFTWARE ENGINEERING GmbH

Das IBM DB2 10 Manual zeigt Beispiele für unterschiedliche Output-Formate auf. CURRENT ist die normale DB2 10 Verarbeitung, V9 läßt den DB2 10 Kompatibilitäts-Modus wie V9 arbeiten. V9_DECIMAL_VARCHAR ist DB2 10 als DB2 9, aber bezogen auf CHAR und VARCHAR. Table 1. Example output for CHAR based on BIF_COMPATIBILITY settings BIF_COMPATIBILITY setting OUTPUT for CHAR(000.1) OUTPUT for CHAR(1000.) OUTPUT for CHAR(1.1) V9 ' 000.1' ' 1000.' ' 1.1' V9_DECIMAL_VARCHAR ' 000.1' ' 1000.' ' 1.1' CURRENT '.1 ' '1000 ' '1.1 ' Table 2. Example output for VARCHAR and CAST(decimal-expression AS VARCHAR) based on BIF_COMPATIBILITY settings BIF_COMPATIBILITY setting Output for VARCHAR(000.1) or CAST(000.1 AS VARCHAR(3)) Output for VARCHAR(1000.) or CAST(1000. AS VARCHAR(5)) Output for VARCHAR(1.1) or CAST(1.1 AS VARCHAR(3)) V9 '.1' '1000' '1.1' V9_DECIMAL_VARCHAR '0.1' '1000.' '1.1' CURRENT '.1' '1000' '1.1' Table 3. Example output for CAST(decimal-expression AS CHAR) based on BIF_COMPATIBILITY settings BIF_COMPATIBILITY setting Output for CAST(000.1 AS CHAR(6)) Output for CAST(1000. AS CHAR(6)) Output for CAST(1.1 AS CHAR(4)) V9 '.1 ' '1000 ' '1.1 ' V9_DECIMAL_VARCHAR '0.1 ' '1000. ' ' 1.1' CURRENT '.1 ' '1000 ' '1.1 ' DB2 11 APPLCOMPAT erlaubt die DB2 Subsystem-Migration von der Applikations-Migration zu isolieren. Die BIND/REBIND Option APPLCOMPAT erlaubt Programmen unter DB2 11 so zu laufen wie unter DB2 10. Die Umgehungslösungen erleichtern die Migrations-Planung und unterstützen Applikations-Stabilität. Sie helfen dem Kunden die erforderlichen Program-Änderungen aufzuschieben, indem es die Applikationen in den Stand versetzt ein konsistentes SQL-Verhalten auch nac h der Migration zu zeigen. Page 2

Warum also soll man sich kümmern? Es besteht also nicht zwingend ein sofortiger Handlungsbedarf, das Kompatibilitätsproblem an seiner Wurzel zu lösen. Laut IBM hat man für die notwendigen SQL-Änderungen in den Anwendungsprogrammen Zeit bis zur Migration zu DB2 13; je nachdem wo man heute steht also zirka 5-6 Jahre. Aber, wer kennt dann die betroffenen Programme noch? Fest steht, dass sich das Problem unter Zeitdruck nicht vereinfacht. IBM stellt fest: APPLCOMPAT ist nur gültig für 2 Releases. Wenn das Thema also zum späteren Zeitpunkt neu adressiert wird, steht man wieder vor dem Problem, wo die BIFs sind und welche Programme betroffen sind. Wo sind die BIFs? Daher bietet IBM neben den Umgehungslösungen Verfahren zur Erkennung der Kandidaten ( Programme resp. SQL ) mittels der für diese Zwecke eigens geschaffenen IFCID 366 (DB2 10)und IFCID 376 (DB2 11)an. Der klassische Weg im z/os zur Gewinnung von brauchbaren System-Informationen geht über SMF. IFCID366 schreibt einen SMF (102) Record für jeden Programm-Call. Große Installationen haben bis zu 4 Millionen Records gesehen. Dieses Ergebnis produziert einen erheblichen Overhead für die Speicherung und Verarbeitung. Daher hat IBM die aggregierte IFCID Version 376 mit DB2 11 geschaffen. Wie werden diese Records gesammelt? Diese oben genannten IFCIDs können auf dreierlei Wegen gespeichert werden: 1. Geschrieben als SMF Record Type 102 mit dem daraus resultierenden hohen Overhead. 2. Geschrieben als Teil eines laufenden GTFs (Generalized Trace Facility) - der zusätzliche CPU-Cycle benötigt und möglicherweise zu erhöhten Kosten beim 4 Hours-Rolling-Average führt. 3. Abgespeichert im OPx-Buffer was die effektivste und kostengünstigste Methode ist. Unabhängig von den gewählten Methoden ist es unabdingbar, 1. Die nicht kompatiblen Statements zu identifizieren. 2. Diese Statements den entsprechenden Programmen zu zuordnen. 3. Die möglichen Auswirkungen dieser Statements zu beurteilen und einen Plan zur ihrer korrigierenden Sanierung zu entwickeln. Für statisches SQL ist diese Unterscheidung irrelevant, für dynamisches SQL ist sie allerdings entscheidend: im Falle des post-processing Verfahrens ist es unwahrscheinlich, dass sich das SQL Statement noch im DSC befindet. Page 3

Statische versus Dynamische SQL Nachdem alle IFCIDS gesichtet worden sind, besteht die Aufgabe nun darin, die Daten zu beurteilen und die problematischen Statements und die zugehörigen Programme zu identifizieren. Im Falle von statischem SQL lässt sich im Allgemeinen die Statement Nummer einfach dem Record und damit den SQL-Source zuordnen. Nicht ganz so einfach stellt sich die Aufgabe für dynamisches SQL dar. Hier ist die Wahrscheinlichkeit sehr hoch, dass das Statement sich nicht mehr im DSC (Dynamic Statement Cache)befindet; es kann nur ganz kurz erscheinen, bevor es wieder aus dem Cache verschwindet. Außerdem kann es schwierig werden, das Source-Statement zu kontrollieren, insbesondere, wenn es von einem 3rd Party Hersteller kommt. Auf jeden Fall ist es wichtig, zu ermitteln, wo Handlungsbedarf besteht und was auf die eigene TO-DO- LISTe gesetzt werden muss. Forderungen an das ideale Verfahren Für das ideale Verfahren muss 100% Kontrolle gefordert werden. Das heißt, der Kunde muss alle statischen und dynamischen SQLs aufzeichnen können. Das erfordert 1. Ein umfassendes Monitoring des EDM ( Environmental Descriptive Manager statement pool) und des DSC. Diese Methode muss sicherstellen, dass a l l e SQL Statements - auch die flüchtigen aufgezeichnet werden. 2. Das komplette SQL Statement muss dem entsprechenden IFCID -Event zugeordnet werden können. 3. Das Programm, das das SQL enthält muss ebenfalls identifiziert werden können. Zum Zweck der bereichsübergreifenden Kommunikation (z.b. Systemprogrammierung, Datenbankadministration und Anwendungsentwicklung) sollten neben den Mainframefunktionalitäten grafische Benutzeroberflächen intuitives Bedienen erlauben und eine Weiterverarbeitung in Office Tools unterstützen. Wünschenwert ist aus der Sicht großer Installationen neben dem Klick-Modus die Unterstützung des Mainframekonzeptes durch Batch-Automation zur ständigen, lückenlosen Überwachung. Was wird gesammelt? 1. Nahezu alle SQL, die im Plex ausgeführt wird 2. Die Zeit & Datum der Ausführung 3. Relevante Herkunft informationen 4. Verschiedene Kosten-Faktoren Page 4

Der WLX-BIF USAGE Use Case SQL WorkloadExpert for DB2 z/os (WLX) folgt exakt dieser Methodology mit seinem WLX-BIF USAGE Use Case, einer von über 30 Use Cases mit dem das Produkt ausgestattet ist. Der im Anschluss präsentierte Use Case BIF USAGE integriert sich als Plug-in in IBM Datastudio oder native in Eclipse. Die Datensammlung auf dem Host erfolgt in Real-Time. Das BIF-Usage-Verfahren bietet 2 unterschiedliche Ausgabeformate, Standard und Expanded. Standard bietet eine Gruppierung der Daten über 2 Ebenen, während Expanded alle BIFs sofort listet. Der Ebenenwechsel bei Standard erfolgt über die Drill down Funktion, die duch einen Maus-Doppelklick oder über ein Kontextmenü ausgelöst werden kann. Präsentation des BIF USAGE Verfahrens mit WLX Das BIF-Usage-Verfahren bietet 2 unterschiedliche Ausgabeformate, Standard und Expanded. Standard bietet eine Gruppierung der Daten über 2 Ebenen, während Expanded alle BIFs sofort listet. Der Ebenenwechsel bei Standard erfolgt über die Drill down Funktion, die duch einen Maus-Doppelklick oder über ein Kontextmenü ausgelöst werden kann. Das Kontextmenü wird durch Drücken der rechten Maustaste aufgerufen. Use Case Auswahl - Standard Page 5

Ebene 1 - Collection, Package Durch das Anklicken der letzten Zeile wird die ICI und der Grund für die BIF-Usage gezeigt Ebene 2 - ICI Nummer Der Klick auf DB2 9 CHAR Usage zeigt die Details. Detail Ebene Der Klick auf Selection zeigt den SQL-Text Page 6

Vollständiger SQL Statement Text Use Case Auswahl Expanded Der Expanded BIF-Usage Use case zeigt die gleichen Informationen mit weniger Klicks. Diesmal wird das CUBE BIF hervorgehoben. Detail Ebene Teil 1 Page 7

Detail Ebene Teil 2 Detail Ebene Teil 3 Page 8

Auslieferung des BIF Usage Use Cases Der BIF-USAGE-Use- Case ist einer von über30 Fällen des SOFTWARE ENGINEERING/SEGUS Produktes SQL WorkloadExpert for DB2 z/os (1). Das Produkt besteht aus einer zu installierenden Mainframe-Komponente (ab z/os 2.1 und DB2 10) und auf der Workstation mit einer Eclipse GUI, die als Plug-in zu Datastudio 4.1.1. bzw. Eclipse (ab Indigo) nativ installiert werden kann(2). WLX Architecture Das komplette Produkt SQLWorkloadExpert for DB2 z/os (3) deckt folgende Mainframe-Arbeitsbereiche ab: Page 9

Eine Bewertung aus der Deutschen DB2 Usergruppe: Als Teilnehmer der GSE-Working Group BDB2D (DB2 Systemverwaltung) im Mai 2015 in Düsseldorf sind wir in den Genuss des 3. Teils des "GIVE and TAKE Program for DB2 on z/os" von SEG gekommen, dem Use Case "BIF- Usage" der Software "SQL WorkloadExpert for DB2 z/os" (WLX). Unser Erfahrung mit WLX aus Systemsicht: Die Installation ist sehr unkompliziert und in wenigen Stunden abgeschlossen. WLX zeichnet sich im täglichen Betrieb durch eine große Robustheit aus. Der Ressourcenverbrauch ist vernachlässigbar. Ergebnis der Nutzung des Use Case "BIF-Usage": Bereits wenige Minuten Datensammlung reichen aus, um mit ersten Auswertungen wertvolle Ergebnisse zu erhalten. Die grafische Oberfläche ist intuitiv zu bedienen und bietet zur weiteren Verarbeitung in Office-Tools eine Export-Funktionalität. Die offengelegte Schnittstelle ermöglicht die Einbindung in andere Tools sowie eine Batch-Automation der Auswertungen. Es werden aussagefähige Ergebnisse erzielt, mit denen die Anwendungsentwicklung zur Sicherstellung des Versionswechsels qualifiziert und zielgerichtet mit eingebunden werden kann WLX ("BIF-Usage") stellt eine abgerundete all-in-one-lösung (Daten sammeln, persistieren und aufbereiten) dar. WLX trägt dazu bei, eine Transparenz über Anpassungsaufwände durch Versions-Inkompatibilitäten zu erhalten und hilft dadurch, diese realistisch einschätzen, planen und steuern zu können. (Ein Mitglied der DB2 Usergruppe DB2 Systemverwaltung, GSE Deutschland) Page 10

Fazit Das BIF Thema nicht rechtzeitig zu adressieren kann den Unterschied zwischen Business as usual und kompletten Chaos bedeuten ( Service Ausfälle, Unstimmigkeiten in Umlauf zu bringen, Verlust der Daten-Integrität bis hin zu Anwendungsfehlern). Traditionelle Tools zur Auffindung der relevanten BIF zu benutzen ist sehr zeitaufwendig, fehleranfällig und teuer. Bedingt durch stark gekürzte Budgets und verkleinerte Teams ergibt sich definitiv der Bedarf für die Rechenzentren modernen und innovativen Tools wie WLX und den WLX BIF Usage Use Case. WLX Sammelt das Komplette SQL eines typischen Systems ohne den Overhead eines traces oder eines monitors. Analyziert SQL Workload aggregiert oder im Detail. Analyziert Zugriffspfade und SQl im Vergleich Liefert Reports und Chart- Daten mittels eines standard Eclipse interface ein Desktop tool, das allegemein anerkant und als Freeware erhältlich ist. Literatur: DB2 Workload Analysis &Trending (1) Flyer BIF BIF HealthCheck & WLX BIF Usage for DB2 z/os - https://www.seg.de/media/flyer-bif.pdf (2) BIF Freeware BIF HealthCheck Freeware anfordern - https://www.seg.de/bif (3) Flyer SQL WorkloadExpert for DB2 z/os, 2013-2015 workshop results, What Users want to do with an SQL Data Warehouse - https://www.seg.de/media/flyer-wlx-uc2.pdf (4) Flyer SQL WorkloadExpert for DB2 z/os, Captures SQL cost-efficiently 24x7 without a trace https://www.seg.de/media/flyer-wlx.pdf (5) Flyer SQL WorkloadExpert for DB2 z/os, Practical Uses -https://www.seg.de/media/flyer-wlx-uc.pdf (6) Presentation BIF Compatibility A german customer presentation translated and anonymized (engl) - https://www.seg.de/media/p-wlx-bif-cpb-en.pdf (German) https://www.seg.de/media/p-wlx-bif-cpb-de.pdf (7) Webseite The SOFTWARE ENGINEERING GIVE and TAKE Program Nr. 1, 2,3 for the German DB2 User Group https://www.seg.de/give-and-take-program-bif-explain-index-maintenance (8) Statements SQL WorkloadExpert for DB2 z/os, BIF USAGE, Customer Comments across the Industrie (engl) (Health Care, Insurance, Banking, Car Manufacturer) https://www.seg.de/media/p-wlx-gt-statements2015-en.pdf (German) https://www.seg.de/media/p-wlx-gt-statements2015-de.pdf (9) Newsletter Where is the BIF? Roy Boxwell - https://www.seg.de/en/2015-01-bifcids-wheres-bif (10) Video Where is the BIF (11 minutes only: Roy Boxwell) https://www.seg.de/media/webinar-wlx-dw1.mp4 (11) User Success How a minor change had a major impact https://www.seg.de/media/howaminorchange.pdf SEGUS Inc 14151 Park Meadow Dr. (800) 327-9650 Chantilly, VA 20151 www.segus.com USA info@segus.com SOFTWARE ENGINEERING GMBH Heinrichstrasse 83-85 +49-211-961-49-0 D-404239 Dusseldorf www.seg.de Germany info@seg.de Page 11