Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Les fonctions définies par l'utilisateur (UDF) dans Amazon Athena vous permettent de créer des fonctions personnalisées pour traiter des registres ou des groupes de registres. Une UDF accepte les paramètres, effectue le travail, puis renvoie un résultat.
Pour utiliser une UDF dans Athena, vous écrivez une clause USING EXTERNAL FUNCTION
avant une instruction SELECT
dans une requête SQL. L'instruction SELECT
fait référence à l'UDF et définit les variables qui sont transmises à l'UDF lors de l'exécution de la requête. La requête SQL invoque une fonction Lambda à l'aide de l'environnement d'exécution Java lorsqu'elle appelle l'UDF. UDFssont définies dans la fonction Lambda en tant que méthodes dans un package de déploiement Java. Plusieurs UDFs peuvent être définis dans le même package de déploiement Java pour une fonction Lambda. Vous spécifiez également le nom de la fonction Lambda dans la clause USING EXTERNAL FUNCTION
.
Deux options s'offrent à vous pour déployer une fonction Lambda pour Athena. UDFs Vous pouvez déployer la fonction directement en utilisant Lambda, ou vous pouvez utiliser le AWS Serverless Application Repository. Pour trouver les fonctions Lambda existantes pour UDFs, vous pouvez effectuer une recherche dans le référentiel public AWS Serverless Application Repository ou privé, puis les déployer sur Lambda. Vous pouvez également créer ou modifier le code source Java, le packager dans un fichier JAR et le déployer à l'aide de Lambda ou du AWS Serverless Application Repository. Pour des exemples de code source Java et de packages pour vous aider à démarrer, voir Création et déploiement d'un UDF à l'aide de Lambda. Pour plus d'informations sur Lambda, consultez le Guide du développeur AWS Lambda. Pour plus d'informations à ce sujet AWS Serverless Application Repository, consultez le guide du AWS Serverless Application Repository développeur.
Pour un exemple d'utilisation de UDFs with Athena pour traduire et analyser du texte, consultez l'article du blog AWS Machine Learning Translate and analysis text using SQL functions with Amazon Athena, Amazon Translate et Amazon Comprehend
Pour un exemple d'utilisation UDFs pour étendre les requêtes géospatiales dans Amazon Athena, consultez la section Étendre les requêtes géospatiales dans Amazon Athena UDFs avec AWS Lambda