Utilisation du machine learning (ML) avec Amazon Athena - Amazon Athena

Utilisation du machine learning (ML) avec Amazon Athena

Le ML avec Amazon Athena vous permet d’utiliser Athena pour écrire des instructions SQL qui exécutent l’inférence de ML à l’aide d’Amazon SageMaker AI. Cette fonctionnalité simplifie l'accès aux modèles ML pour l'analyse des données, éliminant ainsi la nécessité d'utiliser des méthodes de programmation complexes pour exécuter l'inférence.

Pour utiliser ML avec Athena, vous définissez une fonction ML avec Athena avec la clause USING EXTERNAL FUNCTION. La fonction pointe vers le point de terminaison du modèle SageMaker AI que vous souhaitez utiliser et spécifie les noms de variable et les types de données à transmettre au modèle. Les clauses suivantes de la requête font référence à la fonction de transmission des valeurs au modèle. Le modèle exécute l'inférence en fonction des valeurs que la requête transmet, puis renvoie les résultats de l'inférence. Pour plus d’informations sur SageMaker AI et sur le fonctionnement des points de terminaison SageMaker AI, consultez le Guide de développement d’Amazon SageMaker AI.

Pour découvrir un exemple qui utilise le ML avec l’inférence d’Athena et de SageMaker pour détecter une valeur anormale dans un jeu de résultats, consultez l’article Detecting anomalous values by invoking the Amazon Athena machine learning inference function sur le blog AWS Big Data Blog.

Considérations et restrictions

  • Régions disponibles – La fonctionnalité de ML d’Athena est disponible dans les Régions AWS qui prennent en charge la version 2 et les versions ultérieures du moteur Athena.

  • Le point de terminaison du modèle SageMaker AI doit accepter et renvoyer text/csv – Pour plus d’informations sur les formats de données, consultez Common data formats for inference dans le Guide de développement d’Amazon SageMaker AI.

  • Athena n’envoie pas d’en-têtes CSV – Si votre point de terminaison SageMaker AI est text/csv, votre gestionnaire d’entrées ne doit pas supposer que la première ligne de l’entrée est un en-tête CSV. Comme Athena n'envoie pas d'en-têtes CSV, la sortie renvoyée à Athena contiendra une ligne de moins que ce qu'Athena attend et générera une erreur.

  • Mise à l’échelle du point de terminaison SageMaker AI – Assurez-vous que l’augmentation verticale du point de terminaison du modèle SageMaker AI référencé est suffisante pour les appels Athena au point de terminaison. Pour plus d’informations, consultez Automatically scale SageMaker AI models dans le Guide de développement d’Amazon SageMaker AI et CreateEndpointConfig dans le Guide de référence des API Amazon SageMaker AI.

  • Autorisations IAM – Pour exécuter une requête qui spécifie une fonction ML avec Athena, le principal IAM qui exécute la requête doit être autorisé à exécuter l’action sagemaker:InvokeEndpoint pour le point de terminaison du modèle SageMaker AI référencé. Pour de plus amples informations, consultez Autorisation d’accès pour les requêtes ML avec Athena.

  • Les fonctions ML avec Athena ne peuvent pas être utilisées directement dans les clauses GROUP BY