Apache Hive

Cette page contient des informations sur la connexion de Looker à Apache Hive 2.3+ et Apache Hive 3.1.2+.

Notez les points suivants concernant la compatibilité de Looker avec les différentes versions d'Apache Hive :

  • Looker est compatible avec les connexions à Apache Hive 2.3 et versions ultérieures, ainsi qu'à Apache Hive 3.1.2 et versions ultérieures.
  • Pour Apache Hive 3.1.2 et versions ultérieures, Looker ne peut s'intégrer complètement aux bases de données Apache Hive 3 que pour les versions ultérieures à 3.1.2. Cela est dû à un problème d'analyse des requêtes dans les versions 2.4.0 à 3.1.2 de Hive, qui a entraîné des temps d'analyse extrêmement longs pour le code SQL généré par Looker.
  • Looker ne prend pas en charge les connexions à Apache Hive 2. Les requêtes sur les connexions à Apache Hive 2 renverront une erreur.

Chiffrement du trafic réseau

Il est recommandé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Envisagez l'une des options décrites sur la page de documentation Activer l'accès sécurisé à la base de données.

Présentation

L'architecture de Looker permet de se connecter à un serveur de base de données via JDBC. Dans le cas de Hive, il s'agit du serveur Thrift (HiveServer2). Pour en savoir plus, consultez la documentation Apache.

Par défaut, ce serveur écoute sur le port 10 000.

Looker est un outil de requêtes interactif. Il doit donc fonctionner avec un moteur SQL interactif. Si Hive s'exécute sur MapReduce (hive.execution.engine est défini sur mr), il renvoie les résultats des requêtes trop lentement pour être pratique.

Looker a été testé avec Hive sur Tez (hive.execution.engine=tez), mais il est également possible d'exécuter Looker avec Hive sur Spark. La compatibilité avec Spark a été ajoutée dans la version 1.1 de Hive. (Looker est compatible avec Hive 1.2.1 et versions ultérieures.)

Tables dérivées persistantes (PDT)

Pour activer les tables dérivées persistantes (PDT) dans Looker à l'aide d'une connexion Hive, créez un schéma entièrement nouveau que Looker utilisera. Voici un exemple de commande que vous pouvez utiliser pour créer un schéma looker_scratch :

 CREATE SCHEMA looker_scratch;

Le compte utilisateur que Looker utilise pour se connecter à Hive (qui peut être anonyme si aucune authentification n'est utilisée) doit disposer des capacités suivantes dans le schéma fictif:

  • Créer des tables
  • Modifier des tableaux
  • Supprimer des tables

Testez-le avec un client JDBC avant d'essayer de créer des tables PDT avec Hive.

Files d'attente

Si vous souhaitez que les requêtes de Looker soient envoyées à une file d'attente spécifique, saisissez le paramètre de nom de file d'attente dans le champ Paramètres JDBC supplémentaires de la page Paramètres de connexion :

?tez.queue.name=the_bi_queue

D'autres paramètres Hive peuvent être définis de cette manière dans le champ Additional JDBC parameters (Paramètres JDBC supplémentaires) de la page Connection Settings (Paramètres de connexion).

Les attributs utilisateur permettent de placer les requêtes de différents utilisateurs ou groupes d'utilisateurs dans différentes files d'attente. Pour ce faire, créez un attribut utilisateur nommé queue_name, puis ajoutez ce qui suit dans le champ Paramètres JDBC supplémentaires :

?tez.queue.name={{ _user_attributes['queue_name'] }}

Vous pouvez l'utiliser pour personnaliser d'autres paramètres hive-site.xml par utilisateur ou par groupe.

Créer la connexion Looker à votre base de données

Pour créer la connexion entre Looker et votre base de données, procédez comme suit:

  1. Dans la section Administration de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
  2. Sélectionnez Apache Hive 2.3+ ou Apache Hive 3.1.2+ dans le menu déroulant Dialect (Dialecte).

  3. Saisissez les informations de connexion. La majorité des paramètres sont communs à la plupart des dialectes de base de données. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données. Certains de ces paramètres sont décrits ci-dessous:

    • Nom : spécifiez le nom de la connexion. C'est sous ce nom que la connexion sera désignée dans les projets LookML.
    • Host (Hôte) : spécifiez le nom d'hôte.
    • Port: spécifiez le port de base de données.
    • Database (Base de données) : indiquez le nom de la base de données.
    • Nom d'utilisateur : indiquez le nom d'utilisateur de la base de données.
    • Mot de passe : spécifiez le mot de passe de l'utilisateur de la base de données.
    • Activer les PDT : utilisez cet interrupteur pour activer les tables dérivées persistantes. Lorsque les PDT sont activés, la fenêtre Connexion affiche des paramètres PDT supplémentaires et la section Remplacements pour les PDT.
    • Base de données temporaire : spécifiez le nom du schéma de travail créé dans la section Tables dérivées persistantes (PDT) de cette page de documentation.
    • Nombre maximal de connexions du générateur PDT : spécifiez le nombre de compilations PDT simultanées possibles sur cette connexion. Définir cette valeur trop élevée peut avoir un impact négatif sur la durée des requêtes. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
    • Paramètres JDBC supplémentaires: spécifiez tout paramètre de chaîne JDBC supplémentaire.
    • Calendrier de maintenance des groupes de données et des tables dérivées persistantes : spécifiez une expression cron qui indique quand Looker doit vérifier les groupes de données et les tables dérivées persistantes. Documentation sur le calendrier de maintenance des groupes de données et des tables dérivées persistantes.
    • SSL: cochez cette option pour utiliser des connexions SSL.
    • Vérifier le protocole SSL : vérifiez la validation du nom d'hôte.
    • Nombre maximal de connexions par nœud: vous pouvez conserver la valeur par défaut de ce paramètre. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données.
    • Expiration du pool de connexions: ce paramètre peut être initialement conservé sur sa valeur par défaut. Pour en savoir plus sur ce paramètre, consultez la section Délai avant expiration du pool de connexions de la page de documentation Connecter Looker à votre base de données.
    • Précache de l'exécuteur SQL: pour empêcher SQL Runner de précharger les informations de table et de ne les charger que lorsqu'une table est sélectionnée, décochez cette option. Pour en savoir plus sur ce paramètre, consultez la section Précache de l'exécuteur SQL de la page de documentation Connecter Looker à votre base de données.
    • Database Time Zone (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.
  4. Pour vérifier que la connexion est établie, cliquez sur Test. Consultez la page de documentation Tester la connectivité de la base de données pour obtenir des informations de dépannage.

  5. Pour enregistrer ces paramètres, cliquez sur Connecter.

Compatibilité des caractéristiques

Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.

Apache Hive 2.3 et versions ultérieures

Apache Hive 2.3 et versions ultérieures sont compatibles avec les fonctionnalités suivantes à partir de Looker 24.16 :

Caractéristique Compatibilité
Niveau d'assistance
Intégration
Looker (Google Cloud Core)
Non
Agrégations symétriques
Non
Tables dérivées
Oui
Tables dérivées SQL persistantes
Oui
Tables dérivées natives persistantes
Oui
Vues stables
Oui
Suppression des requêtes
Oui
Pivots basés sur SQL
Non
Fuseaux horaires
Oui
SSL
Oui
Sous-totaux
Oui
Paramètres JDBC supplémentaires
Oui
Sensible à la casse
Oui
Type d'emplacement
Oui
Type de liste
Oui
Centile
Oui
Centile distinct
Non
Exécuteur SQL : afficher les processus
Non
Table de description de SQL Runner
Oui
Indexes de l'exécuteur SQL
Oui
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
Expliquer SQL
Oui
Identifiants OAuth
Non
Commentaires sur le contexte
Oui
Pooling des connexions
Non
HLL Sketches
Non
Reconnaissance d'agrégats.
Oui
Augmentation de tables PDT
Non
Millisecondes
Oui
Microsecondes
Oui
Vues matérialisées
Non
Nombre approximatif d'éléments distincts
Non

Apache Hive 3.1.2 et versions ultérieures

Apache Hive 3.1.2+ prend en charge les fonctionnalités suivantes à partir de Looker 24.16:

Caractéristique Compatibilité
Niveau d'assistance
Compatible
Looker (Google Cloud Core)
Oui
Agrégations symétriques
Non
Tables dérivées
Oui
Tables dérivées SQL persistantes
Oui
Tables dérivées natives persistantes
Oui
Vues stables
Oui
Suppression des requêtes
Oui
Pivots basés sur SQL
Non
Fuseaux horaires
Oui
SSL
Oui
Sous-totaux
Oui
Paramètres JDBC supplémentaires
Oui
Sensible à la casse
Oui
Type d'emplacement
Oui
Type de liste
Oui
Centile
Oui
Centile distinct
Non
Exécuteur SQL : afficher les processus
Non
Table de description de SQL Runner
Oui
Indexes de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
Expliquer SQL
Oui
Identifiants OAuth
Non
Commentaires sur le contexte
Oui
Pooling des connexions
Non
HLL Sketches
Non
Reconnaissance d'agrégats.
Oui
Augmentation de tables PDT
Non
Millisecondes
Oui
Microsecondes
Oui
Vues matérialisées
Non
Nombre approximatif d'éléments distincts
Non

Étapes suivantes

Une fois votre base de données connectée à Looker, configurez les options de connexion de vos utilisateurs.