Was ist Azure Batch?
Nur wenige Organisationen verfügen über die Ressourcen, um permanente Bereitstellungen von sehr leistungsstarken Computeplattformen unterstützen zu können, die möglicherweise nur hin und wieder voll ausgelastet sind. Es ist üblicher, auf eine flexible und skalierbare Computelösung wie Azure Batch zurückzugreifen, um die benötigte Berechnungsleistung zur Verfügung stellen zu können.
Damit Sie die optische Zeichenerkennung für die hochgeladenen Bilder der Wasserqualitätprüfgeräte mithilfe von Azure Batch durchführen können, müssen Sie die Hauptkomponenten eines Azure Batch-Workflows verstehen.
In diesem Modul sehen Sie sich an, für welche Aufgaben Azure Batch entworfen wurde, und wie die Batch-Komponenten in einem typischen Workflow zum Einsatz kommen.
Computeintensive Aufgaben und parallele Workloads
Manche Workloads erfordern eine außergewöhnlich hohe Berechnungsleistung. Beispielszenarios wären die Modellierung finanzieller Risiken, das Rendern von 3D-Bildern, die Transcodierung von Medien und die Analyse genetischer Sequenzen. In manchen Fällen lassen sich diese Workloads in mehrere Unteraufgaben unterteilen und parallel ausführen, sodass die Aufgaben viel schneller ausgeführt werden können. Drei VMs können dabei die Arbeit einer VM in einem Drittel der Zeit erledigen.
Im Rahmen des Projekts für die optische Zeichenerkennung der gemeinnützigen Organisation können Sie die Arbeit für die optische Zeichenerkennung mithilfe von Azure Batch aufteilen, sodass die Verarbeitung parallel und viel schneller erfolgen kann.
Die Komponenten von Azure Batch
Sie können Azure Batch für diese großen, parallelen und rechenintensiven Aufgaben in Azure verwenden. Ganz allgemein ist Azure Batch ein Zusammenspiel vieler Komponenten. Alles, was geschieht, geschieht im Rahmen eines Azure Batch-Kontos. Dieses Konto fungiert als Container für alle Batch-Ressourcen.
Für manche Anwendungsfälle kann es sinnvoll sein, dieses Konto mit einem Azure Storage-Konto zu verbinden, um Eingabedateien und Anwendungen herunterzuladen, die während der Ausführung und beim Speichern ihrer Ergebnisse verwendet werden. Innerhalb Ihres Azure Batch-Kontos können Sie Pools virtueller Computeknoten erstellen, auf denen entweder Windows oder Linux ausgeführt wird. Sie geben die Anzahl der Knoten sowie die CPU- und Arbeitsspeicher-Größe an. Die Verwaltung und Planung übernimmt der Azure Batch-Dienst. Ein Batch-Konto kann viele Batch-Pools enthalten.
Sobald Sie einen oder mehrere Pools erstellt haben, erstellen Sie einzelne Aufträge, die wie logische Container für alle Aufgaben fungieren, die Sie planen und gemeinsame Eigenschaften aufweisen können. Wie bereits gesagt, sind mehrere Aufträge problemlos möglich.
Schließlich erstellen Sie Aufgaben, die beschreiben, wie die Arbeit tatsächlich erledigt wird. Entweder verwenden Sie Aufgaben, die direkt die Befehlszeile aufrufen, oder die Aufgaben führen Anwendungen aus, die Sie in Azure Storage hochgeladen haben. In der nächsten Übung sehen Sie, wie alle Hauptkomponenten von Azure Batch zusammenarbeiten.
Typischer Azure Batch-Workflow
Wie sieht ein typischer Azure Batch-Workflow eigentlich aus? Wie im folgenden Diagramm gezeigt, sind für ein typisches, reales Azure Batch-Szenario Daten und Anwendungsdateien erforderlich. Der Batch-Workflow beginnt damit, dass diese Daten und Anwendungsdateien in ein Azure Storage-Konto hochgeladen werden. Dann wird ein Batch-Pool erstellt, der so viele virtuelle Windows- oder Linux-Computeknoten enthält, wie nötig sind. Sie können auch automatisch skaliert werden, falls sich der Bedarf Ihrer Workloads mit der Zeit ändert.
Der Batch-Dienst sorgt dann dafür, dass die Knoten online gestellt werden, und plant die Ausführung der Aufgaben auf den Knoten. Bevor die Aufgaben mit der Ausführung beginnen, laden Sie sämtliche Daten und Anwendungsdateien aus dem Speicher herunter, die Sie für die Verarbeitung benötigen. Während die Aufgaben ausgeführt werden, ist es möglich, den Status der Knoten sowie den Fortschritt der Aufgaben abzufragen. Sobald die Knoten ihre Aufgaben abgeschlossen haben, kann ihre jeweilige Ausgabe untersucht oder in Azure Storage gepusht werden.