Looker est compatible avec les connexions à Amazon Athena, un service de requête interactif qui permet d'analyser facilement les données dans Amazon S3 à l'aide du langage SQL standard. Amazon Athena est sans serveur, il n'y a donc aucune infrastructure à gérer. Seules les requêtes exécutées vous sont facturées.
Chiffrement du trafic réseau
Il est recommandé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Pour ce faire, consultez les options détaillées sur la page de documentation Sécurisation de l'accès à la base de données.
Configurer une connexion Amazon Athena
Cette page explique comment connecter Looker à une instance Amazon Athena.
Assurez-vous de disposer des éléments suivants :
- Paire de clés d'accès Amazon AWS.
Bucket S3 contenant les données que vous souhaitez interroger dans Looker avec Amazon Athena. Les clés d'accès Amazon AWS doivent disposer d'un accès en lecture et en écriture à ce bucket.
Amazon Athena doit avoir accès à ce bucket S3 via un rôle ou un ensemble d'autorisations, ainsi que via des règles de pare-feu. N'ajoutez pas de règles de sécurité au bucket S3 pour l'adresse IP de Looker, car cela pourrait bloquer par inadvertance l'accès d'Amazon Athena au bucket S3. (Pour les autres dialectes qu'Amazon Athena, les utilisateurs peuvent limiter l'accès aux données à partir de la couche réseau à l'aide d'une liste d'adresses IP autorisées, comme décrit sur la page de documentation Activer l'accès sécurisé aux bases de données.)
Vous devez savoir où se trouvent les données de votre instance Amazon Athena. Le nom de la région se trouve en haut à droite de la console Amazon.
Dans la section Admin de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
Renseignez les informations de connexion :
- Nom : spécifiez le nom de la connexion. C'est sous ce nom que la connexion sera désignée dans les projets LookML.
- Dialect (Dialecte) : sélectionnez Amazon Athena.
- Hôte et Port : spécifiez le nom de l'hôte et du port, comme décrit dans la documentation Athena sur le format de l'URL JDBC. L'hôte doit être un point de terminaison Amazon valide (comme
athena.eu-west-1.amazonaws.com
) et le port doit rester à443
. Vous trouverez une liste à jour des points de terminaison compatibles avec Athena sur la page Référence générale AWS. - Base de données : spécifiez la base de données par défaut que vous souhaitez modéliser. Vous pouvez accéder à d'autres bases de données, mais Looker traite celle-ci comme base de données par défaut.
- Nom d'utilisateur : spécifiez l'ID de clé d'accès AWS.
- Mot de passe : spécifiez la clé d'accès secrète AWS.
- Activer les PDT : utilisez ce bouton bascule pour activer les tables dérivées persistantes (PDT). L'activation des PDT permet d'afficher des champs PDT supplémentaires et la section Remplacements pour les PDT pour la connexion.
- Base de données temporaire : spécifiez le nom du répertoire de sortie dans votre bucket S3 où vous souhaitez que Looker écrive vos PDT. Le chemin d'accès complet à votre répertoire de sortie doit être spécifié dans le champ Paramètres JDBC supplémentaires. Pour en savoir plus, consultez la section Spécifier votre bucket S3 pour la sortie des résultats de requête et les PDT sur cette page.
- Nombre maximal de connexions du générateur de PDT : spécifiez le nombre de PDT pouvant être générées simultanément sur cette connexion. Si vous définissez une valeur trop élevée, les temps de réponse aux requêtes risquent d'être affectés. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
- Paramètres JDBC supplémentaires : spécifiez des paramètres supplémentaires pour la connexion :
- Le paramètre
s3_staging_dir
correspond au bucket S3 que Looker doit utiliser pour les résultats de requête et les PDT. Consultez la section Spécifier votre bucket S3 pour les résultats de requête et les PDT sur cette page. - Marquez les résultats de streaming. Si la règle
athena:GetQueryResultsStream
est associée à votre utilisateur Athena, vous pouvez ajouter;UseResultsetStreaming=1
à la fin de vos paramètres JDBC supplémentaires pour améliorer considérablement les performances de l'extraction de grands ensembles de résultats. Ce paramètre est défini sur0
par défaut. - Paramètres supplémentaires facultatifs à ajouter à la chaîne de connexion JDBC.
- Le paramètre
- SSL : ignorer. Par défaut, toutes les connexions à l'API AWS sont chiffrées.
- Nombre maximal de connexions par nœud : par défaut, cette valeur est définie sur 5. Vous pouvez augmenter cette valeur jusqu'à 20 si Looker est le principal moteur de requêtes exécuté sur Athena. Pour en savoir plus sur les limites de service, consultez la documentation sur les limites de service Athena. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
- Délai avant expiration du pool de connexions : spécifiez le délai avant expiration du pool de connexions. Par défaut, le délai avant expiration est défini sur 120 secondes. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
- Effectuer une mise en cache préalable de l'exécuteur SQL : désélectionnez cette option si vous préférez que SQL Runner charge les informations de la table uniquement lorsqu'une table est sélectionnée. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
- Fuseau horaire de la base de données : spécifiez le fuseau horaire utilisé dans la base de données. Laissez ce champ vide si vous ne souhaitez pas convertir le fuseau horaire. Pour en savoir plus, consultez la page de documentation Utiliser les paramètres de fuseau horaire.
Pour vérifier que la connexion a réussi, cliquez sur Tester. Pour obtenir des informations sur le dépannage, consultez la page de documentation Tester la connectivité à la base de données.
Pour enregistrer ces paramètres, cliquez sur Connecter.
Spécifier votre bucket S3 pour les résultats de requêtes et les PDT
Utilisez le champ Paramètres JDBC supplémentaires de la page Connexions pour configurer le chemin d'accès au bucket S3 que Looker utilisera pour stocker les résultats de requête, et pour spécifier le nom du répertoire de sortie dans le bucket S3 dans lequel vous souhaitez que Looker écrive les PDT. Spécifiez ces informations à l'aide du paramètre s3_staging_dir
.
Le paramètre JDBC s3_staging_dir
est une autre façon de configurer la propriété S3OutputLocation
d'Amazon Athena, qui est requise pour les connexions JDBC Athena. Pour en savoir plus et obtenir la liste de toutes les options de pilote JDBC disponibles, consultez la documentation Athena sur les options de pilote JDBC.
Dans le champ Paramètres JDBC supplémentaires, spécifiez le paramètre s3_staging_dir
au format suivant :
`s3_staging_dir=s3://<s3-bucket>/<output-path>`
Où :
<s3-bucket>
est le nom du bucket S3.<output-path>
est le chemin d'accès où Looker écrira les résultats de la requête.
La paire de clés d'accès AWS doit disposer d'autorisations en écriture pour le répertoire
<s3-bucket>
.
Pour configurer le répertoire dans lequel Looker écrira les PDT, saisissez le chemin d'accès au répertoire dans le bucket S3 dans le champ Base de données temporaire.
Par exemple, si vous souhaitez que Looker écrive les PDT dans s3://<s3-bucket>/looker_scratch
, saisissez ce qui suit dans le champ Base de données temporaire :
`looker_scratch`
Saisissez uniquement le chemin d'accès au répertoire. Looker obtient le nom du bucket S3 à partir du paramètre s3_staging_dir
que vous saisissez dans le champ Paramètres JDBC supplémentaires.
Remarques concernant les buckets S3
Nous vous recommandons de configurer les cycles de vie des objets Amazon S3 pour supprimer régulièrement les fichiers inutiles dans le bucket S3 spécifié. Voici quelques raisons à cela :
- Athena stocke les résultats de chaque requête dans un bucket S3. Consultez Interroger Athena.
- Si les PDT sont activées, lorsque vous en créez une, les métadonnées concernant la table créée sont stockées dans le bucket S3.
Ressources
- Documentation Amazon Athena
- Console Amazon Web Services pour Athena (connexion AWS requise)
- Documentation de référence sur Amazon Athena SQL et HiveQL
Débogage
Amazon propose des options de pilote JDBC LogLevel
et LogPath
pour le débogage des connexions. Pour les utiliser, ajoutez ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log
à la fin du champ Paramètres JDBC supplémentaires, puis testez à nouveau la connexion.
Si Looker héberge l'instance, l'assistance Looker ou votre analyste devront récupérer ce fichier pour poursuivre le débogage.
Compatibilité avec les fonctionnalités
Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.
Depuis Looker 25.10, Amazon Athena est compatible avec les fonctionnalités suivantes :
Fonctionnalité | Compatibilité |
---|---|
Niveau d'assistance | Compatible |
Looker (Google Cloud Core) | Oui |
Agrégations symétriques | Oui |
Tables dérivées | Oui |
Tables dérivées persistantes basées sur SQL | Oui |
Tables dérivées natives persistantes | Oui |
Vues stables | Oui |
Arrêt des requêtes | Oui |
Tableaux croisés dynamiques basés sur SQL | Oui |
Fuseaux horaires | Oui |
SSL | Oui |
Sous-totaux | Non |
Paramètres JDBC supplémentaires | Oui |
Sensibilité à la casse | Oui |
Type de lieu | Oui |
Type de liste | Oui |
Centile | Oui |
Centile distinct | Non |
Afficher les processus SQL Runner | Non |
Décrire la table dans SQL Runner | Oui |
Afficher les index dans SQL Runner | Non |
SQL Runner Select 10 | Oui |
Nombre d'exécutions SQL Runner | Oui |
Explication SQL | Non |
Identifiants OAuth 2.0 | Non |
Commentaires contextuels | Oui |
Regroupement de connexions | Non |
Résumés HLL | Oui |
Reconnaissance d'agrégats | Oui |
Augmentation de tables PDT | Non |
Millisecondes | Oui |
Microsecondes | Non |
Vues matérialisées | Non |
Mesures de variation par période | Non |
Nombre approximatif d'éléments distincts | Oui |
Étapes suivantes
Une fois la connexion à la base de données établie, configurez les options d'authentification.