Es ist von entscheidender Bedeutung, sicherzustellen, dass Ihre Db2®-Datenbanken und -Systeme effektiv und effizient laufen. Dies erfordert die sorgfältige und regelmäßige Anwendung von Verwaltungs- und Managementaufgaben. Wenn man den Status seiner Db2-Datenbanken nicht im Auge behält, kann dies zu schlecht funktionierenden Anwendungen, nicht verfügbaren Daten und Systemen und letztendlich zu Einnahmeverlusten führen.

Automatisierung kann helfen. Aber was meinen wir mit Automatisierung? Natürlich wissen die meisten von Ihnen grundsätzlich, was Automatisierung ist, zumindest auf einer allgemeinen Ebene. Aber es lohnt sich, eine kurze Definition in Betracht zu ziehen. Automatisierung bedeutet, menschliche Beteiligung an Ihren Aktivitäten zu reduzieren, indem Aufgaben an intelligente Software übergeben werden. Ziel ist es, den Zeitaufwand, die Mühe und die menschlichen Fehler bei der Aufrechterhaltung effizienter Systeme zu reduzieren. Das klingt gut, oder?

Dennoch haben viele IT-Experten eine Abneigung gegen Automatisierung. Wir sind froh, die Arbeit anderer zu automatisieren, aber nicht unsere eigene. Als Technologieexperten könnte man denken, dass wir in der Lage wären, den Trugschluss dieser Überzeugung zu erkennen. Durch die Entwicklung von Computeranwendungen zur Unterstützung von Geschäftsprozessen automatisieren wir fast jeden Job in unseren Organisationen. Aber wenn Sie einem DBA sagen, dass er seine Utilities automatisieren oder fortschrittliche Autonomien nutzen soll, um seine Aktionen zu steuern, könnte man denken, Sie hätten seine Mutter beleidigt. Viele Techniker widerstehen der Automatisierung aus Angst, die Kontrolle zu verlieren oder vielleicht ihren Job zu verlieren. Diese Ängste sind verständlich, aber nicht wirklich gerechtfertigt.

Es herrscht ein Mangel an IT-Fachkräften, und Unternehmen wollen mehr IT-Experten einstellen, als verfügbar sind. Und wir sind überarbeitet – wer von uns möchte wirklich immer 12-Stunden-Tage arbeiten? Und in der Mainframe-Welt altert die Belegschaft, und wir müssen etwas tun, wenn die erfahrenen Mitarbeiter in den Ruhestand gehen und weiterziehen.

Die Wahrheit ist, dass die meisten IT-Aufgaben und -Verfahren durch Automatisierung rationalisiert und effizienter gestaltet werden können: automatisiertes Systemmanagement, Datenbankadministration und -optimierung und ja, sogar Anwendungsentwicklung. Die Automatisierung wird IT-Experten nicht so schnell vollständig ersetzen können, aber sie ist wichtig, da Organisationen darum kämpfen, mit einem Mangel an qualifizierten IT-Fachkräften fertig zu werden. Indem man einen Teil der Arbeit an den Computer übergibt, kann die IT effizienter, effektiver und rentabler für das Geschäft werden.

Eine der größten Herausforderungen, denen IT-Experten im Allgemeinen und DBAs im Besonderen gegenüberstehen, ist die zunehmende Komplexität von Technologie und Software. Zu dieser Komplexität trägt die steigende Anzahl von Geräten, die zunehmende Anzahl von Systemen, die miteinander interagieren, und die wachsende Anzahl von Parametern und Optionen in Systemsoftware und Utilities bei.

 

Ein Tag im Leben eines DBA

Um uns dabei zu helfen, die zunehmende Komplexität und den Bedarf an Automatisierung zu verstehen, betrachten wir einen typischen Tag im Leben eines Db2-DBA. Es kann ziemlich hektisch sein. Der DBA muss Produktions- und Testumgebungen verwalten, während er gleichzeitig laufende Anwendungsentwicklungsprojekte überwacht, an Strategie- und Designmeetings teilnimmt, bei der Auswahl und Bewertung neuer Produkte hilft und Legacy-Systeme mit dem Web verbindet. Und Joe aus der Buchhaltung hat gerade wieder diese „Höllenabfrage“ eingereicht, die das System lahmlegt – können Sie etwas dagegen tun? All diese Dinge können an einem einzigen Arbeitstag eines DBA passieren.

Datenbanken stehen im Zentrum moderner Anwendungen. Wenn Db2 ausfällt, fallen Anwendungen aus, und wenn Anwendungen ausfallen, kann das gesamte Geschäft zum Erliegen kommen. Wenn Datenbanken und Anwendungen oft genug ausfallen, kann das gesamte Unternehmen scheitern. Die Datenbankverwaltung ist daher entscheidend für den anhaltenden Erfolg moderner Unternehmen.

Die zunehmende Komplexität und überforderte DBAs tragen also zur Notwendigkeit der Automatisierung bei. Automatisierung kann das Management optimieren und die Komplexität verringern, indem Aufgaben basierend auf bewährten Best Practices ausgeführt werden.

 

Automatisierung von Db2-Utilities

Db2-Utilities sind ein hervorragender Kandidat für die Automatisierung, da sie regelmäßig ausgeführt werden müssen und es branchenspezifische Best Practices und Statistiken gibt, die für die Automatisierung verwendet werden können. Ganz zu schweigen von der Tatsache, dass die Komplexität der Db2-Utilities ständig zunimmt. Vergleichen Sie einfach die Anzahl der heute verfügbaren Parameter und Optionen für Db2 13 für z/OS mit dem, was früher verfügbar war.

Verstehen Sie beispielsweise, wie Sie Ihre Utilities online ausführen, während die Daten für Ihre Anwendungen zugänglich sind? Verwenden Sie den parallelen Indexaufbau mit den Utilities LOAD, REORG und REBUILD INDEX? Haben Sie jemals Partitionen parallel geladen? Wie sieht es mit der Verwendung der Anweisungen LISTDEF, TEMPLATE und OPTIONS zur Steuerung von Utility-Operationen aus? Und dies sind nur einige der Innovationen, die im Laufe der Jahre in IBM’s Db2-Utilities eingeführt wurden. Tatsächlich ist die Liste der Verbesserungen in den IBM-Utilities von Db2 13 für z/OS herausfordernd, und einige DBAs haben seit Jahren keine neuen Utility-Funktionalitäten implementiert.

In der Tat ist die Automatisierung von Utilities eine bewährte Praxis, aber viele Unternehmen halten sich nicht an diese Best Practice. Stattdessen erstellen sie einfach für jedes Objekt Utility-Jobs und planen deren regelmäßige Ausführung. Diese „Einrichten und Vergessen“-Mentalität bedeutet, dass die meisten Utility-Jobs erstellt werden, wenn das Objekt erstellt wird, und dann kaum wieder überprüft werden. Die Entscheidung, wie oft die Jobs ausgeführt werden, wird zu Beginn getroffen und nie wieder überprüft, es sei denn, es treten Leistungs-, Verfügbarkeits- oder Wiederherstellungsprobleme auf.

Wenn Sie zu dieser Kategorie von Utility-Planern gehören, wie oft planen Sie Ihre REORG-, RUNSTATS- und COPY-Jobs ein? Wöchentlich, monatlich, vierteljährlich? Normalerweise wird nicht viel über die Ausführungsfrequenz nachgedacht. Und selbst wenn Sie Ihre Planungsentscheidung bei der Erstellung des Objekts sorgfältig analysieren, sind Sie sicher, dass diese Entscheidung auch heute, vielleicht viele Jahre später, noch gültig ist? Nur wenige DBAs bewerten die Situation im Laufe der Zeit neu, um zu sehen, ob ihre anfänglichen Planungsentscheidungen richtig waren oder immer noch Bestand haben.

Jedenfalls ist die Automatisierung von Utilities auf Basis von Schwellenwerten eine bessere Praxis. Automatisierung kann sicherstellen, dass Sie Ihre REORG-, RUNSTATS- und COPY-Utilities zum richtigen Zeitpunkt ausführen, anstatt nach einem starren Zeitplan. Wenn Sie diese Utilities zu spät ausführen, riskieren Sie Wiederherstellungs- und Verfügbarkeitsprobleme sowie erhöhte Kosten aufgrund schlechter Leistung und erhöhter CPU-Nutzung. Und wenn Sie die Utilities zu früh ausführen, verbrauchen Sie CPU und E/A, die Sie nicht benötigen, was ebenfalls die Kosten erhöht.

Das Ziel ist es, Ihre Db2-Utilities genau zur richtigen Zeit auszuführen. Und das kann mithilfe von Db2-Statistiken geschehen. Natürlich muss jedes Utility verschiedene Echtzeit-Statistiken untersuchen, um sie zur richtigen Zeit auszuführen. Sie sollten ein Tool in Betracht ziehen, wie z. B. iDBA, das Ihnen helfen kann, eine intelligente DBA-Automatisierung zu implementieren. Eine solche Lösung kann alle relevanten Parameter und Statistiken berücksichtigen und die geeigneten Wartungsaufgaben und Utilities bestimmen, die basierend auf Ihrer Umgebung und Situation ausgeführt werden müssen … und nicht nach einem alten Zeitplan.