BLOG | BÜRO DES CTO

Wie F5-Ingenieure KI zur Softwareoptimierung nutzen

Lori MacVittie Miniaturbild
Lori MacVittie
Veröffentlicht am 22. Februar 2022


Es herrscht ein großer Hype um den Einsatz von KI in allen Bereichen, vom Marketing über die Personalbeschaffung bis hin zu Betrieb und Sicherheit. Unsere jährliche Umfrage zeigt, dass die meisten Organisationen KI in den Bereichen Geschäft, Betrieb und Sicherheit mit großem Interesse betrachten.

KI-Pläne

Nichts davon ist eine Überraschung. Zahlreiche Umfragen deuten darauf hin, dass KI zur Unterstützung zahlreicher Geschäfts- und IT-Funktionen zunehmend eingesetzt wird.

Worüber nicht immer gesprochen wird, ist die Art und Weise, wie KI in die Entwicklung integriert wird.

Der geschäftliche und sicherheitsrelevante Wert von KI beruht im Wesentlichen auf ihrer Fähigkeit, Muster und Zusammenhänge zu erkennen, die zu umsetzbaren Erkenntnissen führen. Viele berücksichtigen den „Motor“ hinter dieser Fähigkeit nicht und gehen daher nie wirklich in die Details der KI-Technologien ein, die eingesetzt werden, um auf magische Weise wertvolle Erkenntnisse zutage zu fördern.

Maschinelles Lernen ist ein spezieller Zweig der KI, der sich auf Datenanalyse und -modellierung konzentriert. Seine Verwendung ist im Sicherheitsbereich sinnvoll, da es bei ausreichend Zeit und Daten in der Lage ist, Muster zu erkennen, die in Echtzeit auf anormales Verhalten hinweisen. Auf ähnliche Weise lassen sich in Geschäftsdaten obskure Zusammenhänge aufdecken, die Möglichkeiten zur Vermarktung von Produkten und Dienstleistungen darstellen.

Maschinelles Lernen eignet sich jedoch auch hervorragend für die Modellierung, d. h. für die Ausführung von Hunderten von „Was wäre wenn“-Szenarien, um zu einem besseren Verständnis der komplexen Beziehungen zwischen mehreren Variablen zu gelangen. In der Entwicklung – im Engineering – können diese Variablen die Datengröße, der zugewiesene Speicher, die E/A-Geschwindigkeit, die Netzwerkbandbreite und die Parameter der virtuellen Maschine sein. Maschinelles Lernen ist sehr flexibel und wenn Sie die Variablen identifizieren, können Sie mithilfe des maschinellen Lernens verschiedene Kombinationen dieser Variablen modellieren, um einen „optimalen“ Satz zu ermitteln.

Zum Beispiel F5 Distinguished Engineer Laurent Querel und F5 Sr. Der Architekt Sebastien Soudan hat sich zusammengetan und kürzlich einen Artikel veröffentlicht , in dem er beschreibt, wie sie ein Modell entwickelt haben, um „eine effiziente Möglichkeit zu schaffen, Daten von PubSub zu BigQuery zu übertragen“.

Sie erklären auch, warum der Einsatz von maschinellem Lernen heutzutage die bessere Wahl für die Softwareoptimierung ist, und sie haben das so gut gemacht, dass ich sie einfach zitieren werde: 

„Heutzutage ist die Softwareoptimierung ein iterativer und größtenteils manueller Prozess, bei dem Profiler verwendet werden, um die Leistungsengpässe im Softwarecode zu identifizieren. Profiler messen die Softwareleistung und generieren Berichte, die Entwickler überprüfen und den Code weiter optimieren können. Der Nachteil dieses manuellen Ansatzes besteht darin, dass die Optimierung von der Erfahrung des Entwicklers abhängt und daher sehr subjektiv ist. Es ist langsam, nicht erschöpfend, fehleranfällig und anfällig für menschliche Voreingenommenheit. Die verteilte Natur von Cloud-nativen Anwendungen erschwert den manuellen Optimierungsprozess zusätzlich.

Ein wenig genutzter und globalerer Ansatz ist eine andere Art des Performance Engineering, die auf Leistungsexperimenten und Black-Box-Optimierungsalgorithmen basiert. Genauer gesagt zielen wir darauf ab, die Betriebskosten eines komplexen Systems mit vielen Parametern zu optimieren.“

Die treibenden Faktoren hinter dem Einsatz von KI – insbesondere maschinellem Lernen – in der Entwicklung sind weitgehend dieselben, die auch ihre Einführung im gesamten IT-Betrieb vorantreiben: Manuelle Prozesse sind langsam, fehleranfällig und anfällig für menschliches Voreingenommenheit.

Wenn wir über die Modernisierung der IT und den stetigen Vormarsch hin zu einem vollständig digitalen Unternehmen sprechen, schließt dies auch die Entwicklung/Konstruktion mit ein.

Ich empfehle die Lektüre von „ Optimieren Sie Ihre Anwendungen mit Google Vertex AI Vizier “, und sei es nur, um ein Gefühl für den Prozess der Entwicklung eines geeigneten Modells zu bekommen und zu erfahren, was sie aus ihren Erfahrungen gelernt haben.