Centraliser des métadonnées HBase - 6.3

Talend Data Fabric Studio Guide utilisateur

EnrichVersion
6.3
EnrichProdName
Talend Data Fabric
task
Création et développement
Qualité et préparation de données
EnrichPlatform
Studio Talend

Si vous utilisez fréquemment une table d'une base de données HBase, vous pouvez centraliser les informations de connexion à la base de données HBase ainsi que les détails du schéma de la table, dans le dossier Metadata de la vue Repository.

Bien que vous puissiez toujours le faire depuis le nœud DB connection, l'utilisation du nœud Hadoop cluster est une alternative qui permet une meilleure utilisation des propriétés de connexion centralisées pour une distribution Hadoop donnée.

Prérequis :

  • Lancez la distribution Hadoop que vous souhaitez utiliser et assurez-vous que vous disposez des permissions d'accès nécessaires pour cette distribution et sa base HBase.

  • Créez la connexion vers cette distribution Hadoop depuis le nœud Hadoop cluster. Pour plus d'informations, consultez Centraliser une connexion Hadoop.

Créer une connexion à HBase

  1. Développez le nœud Hadoop cluster situé sous le nœud Metadata dans la vue Repository. Cliquez-droit sur la connexion Hadoop à utiliser et sélectionnez Create HBase dans le menu contextuel.

  2. Dans l'assistant de connexion qui s'ouvre, renseignez les propriétés génériques de la connexion que vous devez créer, notamment le nom (champ Name), l'objectif (champ Purpose) et la Description. Le champ Status est un champ que vous pouvez personnaliser dans la fenêtre [File] > [Edit project properties].

  3. Cliquez sur Next pour passer à l'étape suivante et renseigner les informations de connexion à la base de données HBase. Parmi ces informations, DB Type, Hadoop cluster, Distribution, HBase version et Server sont automatiquement pré-remplies avec les propriétés héritées de la connexion Hadoop que vous avez sélectionnée dans les étapes précédentes.

    Notez que si vous choisissez None dans la liste Hadoop cluster, vous basculez dans un mode manuel dans lequel les données héritées sont abandonnées. Vous devez donc configurer chaque propriété vous-même. La connexion créée apparaît sous le nœud Db connection uniquement.

  4. Dans le champ Port, saisissez le numéro du port de la base de données HBase à laquelle vous connecter.

    Note

    Afin que le nom d'hôte du serveur Hadoop soit reconnu par les ordinateurs client et hôte, vous devez établir une entrée de mapping de l'adresse IP et du nom d'hôte pour ce nom d'hôte dans le fichier hosts des ordinateurs client et hôte. Par exemple, si le nom d'hôte du serveur Hadoop est talend-all-hdp et que son adresse IP est 192.168.x.x, l'entrée de mapping est 192.168.x.x talend-all-hdp. Pour un système Windows, vous devez ajouter l'entrée dans le fichier C:\WINDOWS\system32\drivers\etc\hosts (en supposant que Windows est installé sur le lecteur C). Pour un système Linux, vous devez modifier l'entrée du fichier /etc/hosts.

  5. Dans le champ Column family, saisissez, si vous souhaitez filtrer les colonnes, la famille de colonnes puis cliquez sur Check afin de vérifier votre connexion.

  6. Si vous accédez à une distribution Hadoop s'exécutant avec la sécurité de Kerberos, cochez cette case puis, saisissez le Principal name pour le NameNode dans le champ qui s'affiche. Cela vous permet d'utiliser votre identifiant pour vous connecter avec les informations de connexion stockées dans Kerberos.

    Si vous devez utiliser un fichier Keytab pour vous identifier, cochez la case Use a keytab to authenticate. Un fichier Keytab contient des paires de Principals et de clés de cryptage Kerberos. Vous devez saisir le Principal à utiliser dans le champ Principal. Dans le champ Keytab, parcourez votre système jusqu'au fichier Keytab à utiliser.

    L'utilisateur exécutant un Job utilisant un Keytab n'est pas nécessairement celui désigné par un Principal mais doit avoir le droit de lire le fichier Keytab utilisé. Par exemple, le nom d'utilisateur que vous utilisez pour exécuter un Job est user1 et le Principal à utiliser est guest. Dans cette situation, assurez-vous que user1 a les droits en lecture sur le fichier Keytab à utiliser.

  7. Si vous devez utiliser une configuration personnalisée pour la distribution d'Hadoop ou HBase à utiliser, cliquez sur le bouton [...] à côté de Hadoop properties afin d'ouvrir la table des propriétés et ajouter la ou les propriété(s) à personnaliser. Lors de l'exécution, les propriétés personnalisées écrasent celles par défaut utilisées par le studio pour son moteur Hadoop.

    Une table Parent Hadoop properties s'affiche au-dessus de la table des propriétés que vous modifiez. La table mère est en lecture seule et affiche les propriétés Hadoop ayant été définies dans l'assistant de la connexion Hadoop mère, sur laquelle se base la connexion à HBase.

    Pour plus d'informations concernant les propriétés de Hadoop, consultez la documentation de Apache Hadoop à l'adresse suivante : http://hadoop.apache.org/docs/current/ (en anglais) ou la documentation de la distribution Hadoop que vous utilisez. Par exemple, la page suivante liste certaines propriétés Hadoop par défaut https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml.

    Pour plus d'informations concernant les propriétés de HBase, consultez la documentation de Apache HBase. Par exemple, la page suivante liste certaines propriétés de configuration de HBase par défaut http://hbase.apache.org/book.html#_configuration_files.

    Pour tirer parti de cette table des propriétés, consultez Configuration des propriétés réutilisables de Hadoop.

  8. Cliquez sur Finish pour valider les modifications.

    La nouvelle connexion HBase apparaît dans la vue Repository, sous le nœud Hadoop cluster. De plus, comme la connexion HBase est une connexion de base de données, cette nouvelle connexion apparaît également sous le nœud Db connections.

    Note

    La vue Repository dépend de l'édition du studio que vous utilisez.

Si vous devez utiliser un contexte environnemental pour définir les paramètres de cette connexion, cliquez sur le bouton Export as context pour ouvrir l'assistant correspondant et choisir parmi les options suivantes :

  • Create a new repository context : créer le contexte environnemental depuis la connexion Hadoop courante, c'est-à-dire que les paramètres à configurer dans l'assistant sont pris comme variables de contexte avec les valeurs données à ces paramètres.

  • Reuse an existing repository context : utiliser les variables d'un contexte environnemental afin de configurer la connexion courante.

Si vous devez annuler l'implémentation du contexte, cliquez sur Revert context. Les valeurs des variables de contexte utilisées sont directement mises dans l'assistant.

Pour un exemple étape par étape concernant l'utilisation de la fonctionnalité Export as context, consultez Exporter une métadonnée en tant que contexte et réutiliser ses paramètres pour configurer une connexion.

Récupérer le schéma d'une table

Avertissement

Si vous travaillez sur un projet géré par SVN ou Git alors que l'option Manual lock est cochée dans Talend Administration Center, assurez-vous de verrouiller manuellement votre connexion dans le Repository avant de récupérer ou de mettre à jour des schémas de table. Sinon, la connexion est en lecture seule et le bouton Finish de l'assistant n'est pas disponible.

Pour plus d'informations concernant le verrouillage et le déverrouillage d'un élément du projet ainsi que les différents types de verrouillage, consultez Travailler sur un projet partagé.

Dans cette étape, vous allez récupérer le schéma de la table de la base de données HBase connectée.

  1. Dans la vue Repository, cliquez-droit sur la nouvelle connexion et sélectionnez Retrieve schema dans le menu contextuel puis cliquez sur Next dans l'assistant qui s'ouvre afin de voir et filtrer les différentes tables de la base de données HBase.

    Vous pouvez définir le nombre de colonnes à afficher pour chaque famille de colonnes dans le champ Limit.

    Si vous souhaitez configurer cette limite pour toutes les métadonnées de connexion à HBase/MapR-DB à définir dans le Référentiel, configurez la limite dans le champ HBase/MapR-DB scan limit dans Preferences > Talend > Performance.

  2. Développez le nœud de la table ainsi que la famille de la colonne et sélectionnez les colonnes qui vous intéressent. Cliquez sur Next pour ouvrir une nouvelle vue dans l'assistant, listant les schémas de la table sélectionnée. Vous pouvez sélectionner n'importe quel schéma pour afficher ses détails dans la zone Schema, du côté droit de l'assistant.

    Avertissement

    Si la table de la base de données source contient une valeur par défaut étant une fonction ou une expression et non une chaîne de caractères, assurez-vous de supprimer les guillemets simples entourant la valeur par défaut du schéma final, s'il y en a, afin d'éviter des résultats inattendus lors de la création de tables de bases de données à l'aide de ce schéma.

    Pour plus d'informations, consultez l'article Vérification des valeurs par défaut dans un schéma récupéré sur Talend Help Center (https://help.talend.com).

  3. Modifiez le schéma si nécessaire. Vous pouvez renommer le schéma et personnaliser sa structure selon vos besoins, dans la zone Schema.

    La barre d'outils vous permet d'ajouter, supprimer ou déplacer des colonnes dans votre schéma.

    Pour écraser les modifications effectuées sur le schéma sélectionné avec le schéma par défaut, cliquez sur Retrieve schema. Notez que toutes les modifications apportées au schéma seront perdues si vous cliquez sur ce bouton.

  4. Cliquez sur Finish pour terminer la création du schéma de la base de données. Tous les schémas récupérés sont affichés sous le nœud HBase connection correspondant dans la vue Repository.

    Si vous devez éditer ultérieurement le schéma, cliquez-droit sur le schéma et sélectionnez Edit Schema dans le menu contextuel pour ouvrir à nouveau l'assistant et effectuer vos modifications.

    Avertissement

    Si vous modifiez le schéma, assurez-vous que le Type des données est correctement défini.

Comme expliqué précédemment, vous pouvez utiliser le nœud Hadoop cluster ou également créer une connexion HBase et récupérer les schémas du nœud Db connection. Dans tous les cas, vous devez toujours configurer les propriétés spécifiques de connexion à HBase. A cette étape :

  • si vous sélectionnez l'option Repository dans la liste Hadoop cluster pour réutiliser les détails d'une connexion Hadoop établie, la connexion HBase créée sera classée à la fois sous le nœud Hadoop cluster et le nœud Db connection ;

  • sinon, si vous sélectionnez l'option None dans la liste Hadoop cluster afin de saisir vous-même les propriétés de la connexion Hadoop, la connexion HBase créée apparaît uniquement sous le nœud Db connection.