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.
Connect Athena à un metastore Apache Hive
Pour connecter Athena à un métastore Apache Hive, vous devez créer et configurer une fonction Lambda. Pour une implémentation de base, vous pouvez effectuer toutes les étapes requises à partir de la console de gestion Athena.
Note
La procédure suivante nécessite que vous soyez autorisé à créer un IAM rôle personnalisé pour la fonction Lambda. Si vous n'êtes pas autorisé à créer un rôle personnalisé, vous pouvez utiliser l'implémentation de référence Athena pour créer une fonction Lambda séparément, puis utiliser la AWS Lambda console pour choisir un IAM rôle existant pour la fonction. Pour de plus amples informations, veuillez consulter Connect Athena à un métastore Hive à l'aide d'un rôle d'exécution existant IAM.
Connexion d'Athena à un métastore Hive
Ouvrez la console à l'adresse https://console.aws.amazon.com/athena/
. Si le panneau de navigation de la console n'est pas visible, choisissez le menu d'extension sur la gauche.
-
Choisissez Sources de données et catalogues.
-
Dans le coin supérieur droit de la console, choisissez Create data source (Créer une source de données).
-
Sur la page Choose a data sources (Choisir une sources de données), pour Data source (Source de données), choisissez S3 - Apache Hive metastore (S3 - Métastore Apache Hive).
-
Choisissez Suivant.
-
Dans la section Détails de la source de données, dans Nom de la source de données, entrez le nom que vous souhaitez utiliser dans vos SQL instructions lorsque vous interrogez la source de données auprès d'Athena. Le nom peut contenir jusqu'à 127 caractères et doit être unique dans votre compte. Il ne peut pas être modifié après sa création. Les caractères valides sont a-z, A-Z, 0–9, _ (trait de soulignement), @ (arobase) et - (trait d'union). Les noms
awsdatacatalog
,hive
,jmx
etsystem
sont réservés par Athena et ne peuvent pas être utilisés pour les noms de source de données. -
Pour la fonction Lambda, choisissez Create Lambda function, puis Create a new Lambda function dans AWS Lambda
La AthenaHiveMetastoreFunctionpage s'ouvre dans la AWS Lambda console. La page contient des informations détaillées sur le connecteur.
Sous Application settings (Paramètres de l'application), saisissez les paramètres de votre fonction Lambda.
-
LambdaFuncName— Donnez un nom à la fonction. Par exemple, myHiveMetastore.
-
SpillLocation— Spécifiez un emplacement Amazon S3 dans ce compte pour stocker les métadonnées dérivées si la taille de réponse de la fonction Lambda dépasse 4 Mo.
-
HMSUris— Entrez le nom URI de votre hôte de métastore Hive qui utilise le protocole Thrift sur le port 9083. Utilisez la syntaxe
thrift://<host_name>:9083
. -
LambdaMemory— Spécifiez une valeur comprise entre 128 Mo et 3 008 Mo. Les CPU cycles alloués à la fonction Lambda sont proportionnels à la quantité de mémoire que vous configurez. La valeur par défaut est 1024.
-
LambdaTimeout— Spécifiez le temps d'exécution d'appel Lambda maximal autorisé en secondes, de 1 à 900 (900 secondes correspondent à 15 minutes). La valeur par défaut est de 300 secondes (5 minutes).
-
VPCSecurityGroupIds— Entrez une liste de groupes de VPC sécurité séparés par des virgules IDs pour le métastore Hive.
-
VPCSubnetIds— Entrez une liste de VPC sous-réseaux séparés par des virgules IDs pour le métastore Hive.
-
-
Sélectionnez Je reconnais que cette application crée IAM des rôles personnalisés, puis choisissez Déployer.
Une fois le déploiement terminé, votre fonction apparaît dans votre liste d'applications Lambda. Maintenant que la fonction de métastore Hive a été déployée sur votre compte, vous pouvez configurer Athena pour l'utiliser.
-
Revenez à la page Enter data sources details (Saisir les détails des sources de données) de la console Athena.
-
Dans la section Lambda function (fonction Lambda), choisissez l'icône d'actualisation située à côté de la zone de recherche de fonction Lambda. L'actualisation de la liste des fonctions disponibles entraîne l'apparition de la fonction nouvellement créée dans la liste.
-
Choisissez le nom de la fonction que vous venez de créer dans la console Lambda. Le ARN de la fonction Lambda s'affiche.
-
(Facultatif) Pour Tags (Identifications), ajoutez des paires clé-valeur à associer à cette source de données. Pour en savoir plus sur les identifications, consultez Tag : ressources d'Athena.
-
Choisissez Suivant.
-
À la page Review and create, vérifiez les détails de la source de données, puis choisissez Create data source (Créer une source de données).
-
La section Data source details (Détails de source de données) de la page de votre source de données affiche des informations sur votre nouveau connecteur.
Vous pouvez désormais utiliser le nom de source de données que vous avez spécifié pour référencer le métastore Hive dans vos requêtes SQL dans Athena. Dans vos SQL requêtes, utilisez l'exemple de syntaxe suivant, en le
hms-catalog-1
remplaçant par le nom de catalogue que vous avez spécifié précédemment.SELECT * FROM hms-catalog-1.CustomerData.customers
-
Pour plus d'informations sur l'affichage, la modification ou la suppression des sources de données que vous créez, consultez Gérez vos sources de données.