HeadlinesBriefing HeadlinesBriefing.com

Python-Simulationen in eine Self-Service-Plattform

Towards Data Science •
×

Eine langlaufende Python-Simulation wirkt nur so lange wie ein reines Rechenproblem, wie eine einzelne Person sie ausführt. Sobald mehrere Personen auf sie angewiesen sind, verlagert sich die Schwierigkeit auf Warteschlangen, Wiederherstellung nach Fehlern, Sichtbarkeit der Aufträge und Reproduzierbarkeit. Anfragen treffen schneller ein, als Aufträge abgeschlossen werden, einige Läufe brechen auf halbem Weg ab, und die Menschen erwarten, dass frühere Ergebnisse auf Abruf reproduziert werden können.

Der Autor argumentiert, dass die eigentliche ingenieurtechnische Arbeit in der Lücke zwischen einem Programm, das funktioniert, und einem Dienst liegt, auf den sich Menschen verlassen können. Modellbewertung und Batch-Verarbeitung stehen vor demselben Problem. Code einmal auszuführen ist einfach; ihn wiederholt für viele Nutzer auszuführen, sodass jeder Lauf gefunden, nachverfolgt und wiederholt werden kann, ohne andere zu stören, ist eine ganz andere Aufgabe.

Bei der Arbeit an der AWS-basierten Infrastruktur für Verkehrssimulationen bei Amazon UK lag der Engpass nicht in der Rechenleistung. Der Arbeitsablauf war weitgehend manuell, Bediener kümmerten sich von Hand um Eingaben, Konfigurationen und den Infrastruktur-Aufbau. Jede neue Anfrage band die Aufmerksamkeit der Ingenieure, bevor überhaupt Rechenleistung genutzt wurde, und fehlgeschlagene Läufe ließen sich schwer nachverfolgen, weil die Belege über Eingaben, Konfigurationen und Maschinen verstreut waren. Mehr Maschinen hätten die theoretische Obergrenze angehoben, die Probleme mit Warteschlangen, der Isolation einzelner Läufe und doppelter Ausführung aber ungelöst gelassen.

Die Frage verlagerte sich daher von der Frage, wie Simulationen schneller laufen, zu der Frage, wie mehrere Personen Arbeit sicher einreichen, den Status jedes Auftrags beobachten und sich erholen können, wenn etwas schiefgeht. Die Kernaussage des Autors lautet, dass das eigentliche Problem, sobald mehrere Personen auf langlaufende Simulationen angewiesen sind, in der Auftragssteuerung liegt. Diese zerfällt in kleinere Anliegen: Warteschlangen, Zustandsverwaltung, Isolation, Wiederherstellung und Nachvollziehbarkeit.

Quelle: Towards Data Science · Zusammengefasst von HeadlinesBriefing