Machine Learning (ML) mit Amazon Athena verwenden - Amazon Athena

Machine Learning (ML) mit Amazon Athena verwenden

Mit Machine Learning (ML) mit Amazon Athena können Sie Athena verwenden, um SQL-Anweisungen zu schreiben, die Machine-Learning (ML)-Inferenz mit Amazon SageMaker AI ausführen. Dieses Feature vereinfacht den Zugriff auf ML-Modelle zum Zweck von Datenanalysen. Daher müssen keine komplexen Programmiermethoden verwendet werden, um Inferenzen auszuführen.

Um ML mit Athena zu verwenden, definieren Sie eine ML mit Athena Funktion mit der USING EXTERNAL FUNCTION-Klausel. Die Funktion Feature auf den SageMaker-AI-Modellendpunkt, den Sie verwenden sollten, und gibt die Variablennamen und Datentypen an, die an das Modell übergeben werden sollen. Die folgenden Klauseln in der Abfrage verweisen auf die Funktion, um Werte an das Modell zu übergeben. Das Modell führt Inferenzen basierend auf den von der Abfrage übergebenen Werten aus und gibt anschließend Inferenzergebnisse zurück. Weitere Informationen zu SageMaker AI und zur Funktionsweise von SageMaker-AI-Endpunkten finden Sie im Entwicklerhandbuch von Amazon SageMaker AI.

Ein Beispiel, das ML mit Athena- und SageMaker-AI-Inferenz verwendet, um einen anomalen Wert in einem Resultset zu erkennen, finden Sie im AWS-Big-Data-Blog-Artikel Erkennen anomaler Werte durch Aufrufen der Inferenzfunktion von Amazon Athena Machine Learning.

Überlegungen und Einschränkungen

  • Verfügbare Regionen – Die Athena-ML-Feature ist in der AWS-Regionen verfügbar, in der die Athena-Engine Version 2 oder höher unterstützt wird.

  • SageMaker-AI-Modellendpunkt muss text/csv akzeptieren und zurückgeben – Weitere Informationen zu Datenformaten finden Sie unter Häufig verwendete Datenformate für Inferenzen im Entwicklerhandbuch für Amazon SageMaker AI.

  • Athena sendet keine CSV-Header – Wenn Ihr SageMaker-AI-Endpunkt text/csv ist, sollte Ihr Eingabe-Handler nicht davon ausgehen, dass die erste Zeile der Eingabe ein CSV-Header ist. Da Athena keine CSV-Header sendet, enthält die an Athena zurückgegebene Ausgabe eine Zeile weniger als von Athena erwartet, und verursacht einen Fehler.

  • SageMaker-AI-Endpunktskalierung – Der SageMaker-AI-Modellendpunkt, auf den verwiesen wird, muss ausreichend skaliert sein, um Athena-Aufrufe an den Endpunkt verarbeiten zu können. Weitere Informationen finden Sie unter SageMaker-AI-Modelle automatisch skalieren im Entwicklerhandbuch für Amazon SageMaker AI und CreateEndpointConfig in der API-Referenz für Amazon SageMaker AI.

  • IAM-Berechtigungen – Um Abfragen auszuführen, die eine ML-Athena-Funktion angeben, muss der IAM-Prinzipal, der die Abfrage ausführt, die Aktion sagemaker:InvokeEndpoint für den SageMaker-AI-Modellendpunkt ausführen können, auf den verwiesen wird. Weitere Informationen finden Sie unter Zugriff für ML mit Athena zulassen.

  • ML-Athena-Funktionen dürfen in GROUP BY-Klauseln nicht direkt verwendet werden