Am veröffentlicht

AWS Neuigkeiten Mai 2021

Im Mai dieses Jahres stehen die Veränderungen in der AWS Cloud im Zeichen von Streaming, Machine-Learning und Containerisierung, um die sich abzeichnenden Trend der Branche auch weiterhin bedienen zu können. Dieser Blogbeitrag stellt einen Ausschnitt aus den Neuerungen und Ankündigungen des Monats April dar, erhebt aber nicht den Anspruch auf Vollständigkeit. Das Hauptaugenmerk liegt hierbei auf Veränderungen, bei denen wir von einem direkten Einfluss auf unsere Kunden im Versicherungs-, Finanz- und Retailsektor ausgehen. In diesem Beitrag werden insbesondere Änderungen und Ankündigungen der Services AWS App Runner, AWS Kinesis Data Analytics Studiosowie AWS Redshift ML vorgestellt.  

Streaming 

Amazon Kinesis Data Analytics Studio 

Für das Streaming von Daten in Echtzeit und Batchweise bietet AWS die Services AWS MSK und Amazon Kinesis an. Im Mai ist nun zu letzterem eine Erweiterung hinzugekommen: Amazon Kinesis Data Analytics Studio. 

Mit diesem Service möchte Amazon die Verarbeitung und Analyse von Streaming Data noch weiter vereinfachen und erlaubt so die direkte Interaktion mit den Daten unter der Verwendung von SQL, Python oder Scala. Hierfür können Notebooks innerhalb der AWS Konsole erstellt und an eine Datenquelle angebunden werden. Die Notebooks verwenden die Technologien von Apache Zeppelin und Apache Flink, um eine interaktive Analyse der Streaming Data zu ermöglichen. Datenquellen können beispielsweise Amazon Kinesis oder auch AWS MSK sein, wobei für Letzteres auch seit neuestem die Kafka Versionen 2.8.0, 2.7.1 und 2.6.2 und die IAM Access Control verfügbar sind. Die Metadaten der jeweiligen Sources und Destinations können in einer AWS Glue Database angelegt und mittels des AWS Glue Data Catalogs abgerufen werden. 

Der Preis des Services errechnet sich – neben den Kosten, die für Storage und Networking der Daten anfallen – aus der durchschnittlichen Anzahl der Kinesis Processing Units (KPU) pro Stunde, wobei eine KPU 1vCPU und 4GB RAM beinhaltet.  

Neue APIs in Amazon Kinesis Data Analytics for Apache Flink 

Eine weitere Neuigkeit aus dem Bereich Streaming und AWS Kinesis betrifft die Verfügbarkeit drei neuer APIs zur Anwendungsverwaltung in Amazon Kinesis Data Analytics for Apache Flink: Mit der RollbackApplication können nun Anwendungen auf die letzte funktionierende Version zurückgesetzt und der Anwendungsstatus aus einem Snapshot wiederhergestellt werden. Mit der ListApplicationVersion-API können nun alle Anwendungsversionen sowie eine Zusammenfassung der dazugehörigen Konfigurationen abgerufen werden und mit der DescribeApplicationVersion kann die Konfiguration einer bestimmten Version aufgerufen werden. 

 

Machine Learning  

AWS Redshift 

Eine der interessantesten Änderungen im Bereich Machine Learning betrifft Amazon Redshift – etwas genauer gesagt Amazon Redshift ML. 

Als Cloud Data Warehouse ermöglicht es Redshift eine nahezu beliebig große Menge an strukturierten und semi-strukturierten Daten mittels SQL-Befehlen abzufragen und zu kombinieren und mit der Einführung von AQUA im letzten Monat ist dies sogar noch bedeutend schneller möglich als zuvor. AWS geht diesen Monat noch einen Schritt weiter und veröffentlich Amazon Redshift ML. Mit dieser Erweiterung ist es nun möglich, Machine Learning Modelle innerhalb der Strukturen von Redshift mittels simplen SQL zu entwickeln.  

Mit der Query werden sowohl die Daten angegeben, mit welchen das Model trainiert werden soll, als auch ein Output-Value definiert. Zur Veranschaulichung der Funktionsweise hier ein Beispiel aus dem Retail-Sektor: Angenommen es soll ein Modell entwickelt werden, mit welchem vorhergesagt werden kann, ob ein Kunde in näherer Zukunft seinen Vertrag kündigen möchte. Für ein solches Projekt war es bisher notwendig, die Daten aus Redshift in den S3 Storage zu exportieren, um von dort aus zum Beispiel mit SageMaker einen Machine Learning Prozess aufzusetzen. Nun ist es so, dass einfach die Spalten aus der Datenbank mit den notwendigen Kundendaten mittels SQL-Query abgefragt und verwendet werden können.  

Betrachtet man diesen neuen Service etwas detaillierter, so sieht man, dass der früher manuelle Kopierschritt der Daten in den S3 Bucket nun automatisch geschieht. In der Tat ist es so, dass nach der Erstellung eines Modells die ausgewählten Daten automatisch aus Redshift heraus in einen S3-Bucket übertragen und dort mittels Amazon SageMaker Autopilot vorbereitet und verarbeitet werden. Nachdem das Modell erstellt und trainiert worden ist, wird es anschließend von Redshift ML unter Verwendung von Amazon SageMaker Neo optimiert und schlussendlich als SQL-Funktion zur Verfügung gestellt. 

Mit Redshift ML ist es allerdings nicht nur möglich, neue Modelle zu erstellen, sondern auch bereits bestehende Modelle und Endpunkte aus SageMaker zu importieren und zu verwenden. Verfügbar ist der Service in nahezu allen größeren AWS Regionen, inklusive Frankfurt.  

Weiteres aus dem Bereich Machine Learning 

Auch andere Services in diesem Segment haben einige Verbesserungen erfahren – so zum Beispiel Amazon Recognition.  

Amazon Recognition ist ein Machine Learning gestützter Service zur Erkennung von Objekten, Konstruktionen, Personen, Gesichter oder Text in Bild- und Videodateien. Für Letzteres gab es nun ein Update seitens Amazons: Amazon Recognition kann nun, mit einer höheren Präzision und einer um bis zu 70% verringerten Latenz, Texte erkennen, die bis zu 100 Wörter lang sind.  

Eine weitere Neuigkeit aus dem Bereich Machine Learning betrifft Amazon Forecast. Mit Amazon Forecast können Bedarfsprognosen ohne vorherige Machine Learning Erfahrungen erstellt werden.  Aufgrund der früheren Limitierung der CreatePredictor API waren Kunden allerdings darauf beschränkt, Prognosen für maximal eine Millionen Einzelartikel erstellen zu können. Dies hatte zur Folge, dass Kunden, die mehr als eine Millionen Einzelartikel hatten, sich entweder auf eine Teilmenge ihrer Artikel beschränken oder separate Modelle für ausgewählte Kategorien oder eine ähnliche Gruppierung erstellen mussten. Die oben angesprochenen Limitierungen der CreatePredictor API sind nun allerdings aufgehoben beziehungsweise erhöht worden, sodass Prognosen statt für eine Million Artikel für fünf Millionen erstellt werden können. 

Cloud-Computing  

Lambda Extensions 

Bereits im Oktober des vergangenen Jahres hat AWS Erweiterungen für AWS Lambda vorgestellt, um eine einfache Integration von Lambda Funktionen in bestehende Monitoring-, Observability- und Security-Tools zu ermöglichen. Diese Erweiterungen sind nun im Mai veröffentlicht worden und nutzen die Runtime Extensions API von AWS Lambda, wodurch sie mit dem vollen Lebenszyklus einer Lambda-Funktion verknüpft sind. Dies legt auch bereits einige Anwendungsmöglichkeiten der Extensions offen, wie zum Beispiel das Sammeln von diagnostischen Informationen eines Systems vor, während und nach dem Aufrufen einer Funktion oder dem Senden eines Logs an einen beliebigen Zielort – wie AWS S3, Kinesis oder Elasticsearch – über die AWS Runtime Logs API. Da die Erweiterungen sich die Compute-Ressourcen mit der eigentlichen Lambda Funktion teilen, kann die Verwendung im Allgemeine allerdings zu einer Verschlechterung der Performance führen. 

Die Lambda Extensions sind bisher in Europa nur in den Regionen Irland und Mailand verfügbar, sollen aber auch demnächst in Frankfurt nutzbar sein und besitzen dasselbe Kostenmodell, wie AWS Lambda selbst, d.h. es entstehen auch hier Kosten in Abhängigkeit zur Laufzeit der Funktion. 

Container 

AWS App Runner 

Die Containerisierung von Applikationen bringt viele Vorteile mit sich, wie zum Beispiel eine effizientere Nutzung von Ressourcen und ein höheres Maß an Portabilität von Anwendungen. Insbesondere in modernen Cloud-Architekturen, in denen vermehrt auf Microservices gesetzt wird, sind containerisierte Anwendungen oftmals vertreten und kaum zu ersetzen.  

Mit AWS App Runner steht nun auch ein weiterer Container-Anwendungsservice in der AWS Cloud bereit. Es handelt sich hierbei um einen fully managed Service, der es insbesondere Kunden ohne Containererfahrungen ermöglichen soll, Webanwendungen und APIs in containerisierter Form zu erstellen, bereitzustellen und auszuführen. Es genügt hierbei, dem Service den jeweiligen Quellcode oder das Image eines Containers zur Verfügung zu stellen. AWS App Runner erstellt dann automatisch eine Webanwendungen und stellt diese inklusive Load Balancing, Skalierung und Monitoring des Systems bereit und eliminiert so für Kunden die Notwendigkeit, selbst einen Containerorchestrierungsservice zu verwalten. Durch diese Funktionalität kann App Runner eine Alternative zu Architekturen, welche den Elastic Container Service von Amazon nutzen, darstellen. Unterstützt wird AWS App Runner auch bereits von der neuesten Version von AWS Copilot sowie von dem Service AWS App2Container, welcher es erlaubt, .NET und Java-Anwendungen in eine containerisierte Anwendung zu konvertieren.  

Für weitere regelmäßige Updates zum Thema AWS Cloud, folgen Sie unserer Präsenz auf Xing undInstagramoder direkt unserem Blog.