Scénario : Créer une table Hive partitionnée - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Ce scénario explique comment utiliser un composant tHiveConnection, un composant tHiveCreateTable et un tHiveLoad afin de créer une table Hive partitionnée et d'y écrire des données.

Notez que les composants tHiveCreateTable et tHiveLoad ne sont disponibles que si vous utilisez une des solutions Talend avec Big Data.

Les données d'exemple à utiliser dans ce scénario sont des informations relatives aux employés d'une entreprise et se présentent comme suit :

1;Lyndon;Fillmore;21-05-2008;US
2;Ronald;McKinley;15-08-2008
3;Ulysses;Roosevelt;05-10-2008
4;Harry;Harrison;23-11-2007
5;Lyndon;Garfield;19-07-2007
6;James;Quincy;15-07-2008
7;Chester;Jackson;26-02-2008
8;Dwight;McKinley;16-07-2008
9;Jimmy;Johnson;23-12-2007
10;Herbert;Fillmore;03-04-2008
				

Les informations contiennent le nom de certains employés et la date de leur enregistrement dans le système des ressources humaines. Comme ces employés travaillent pour la filiale américaine de l'entreprise, créez une partition US pour ces données.

Avant de commencer à reproduire ce scénario, assurez-vous d'avoir les droits d'accès appropriés à la base de données Hive à utiliser.

Notez que si vous utilisez le système d'exploitation Windows, vous devez créer un dossier tmp à la racine du disque où le studio est installé.

Procédez comme suit :

Relier les composants

  1. Dans la perspective Integration du studio, créez un Job vide depuis le nœud Job Designs du Repository.

    Pour plus d'informations concernant la création de Jobs, consultez le chapitre relatif dans le Guide utilisateur du Studio Talend.

  2. Déposez un tHiveConnection, un tHiveCreateTable et un tHiveLoad dans l'espace de modélisation graphique.

  3. Reliez-les à l'aide de liens Trigger > OnSubjobOk.

Configurer la connexion à Hive

Configurer le tHiveConnection

  1. Double-cliquez sur le tHiveConnection pour ouvrir sa vue Component.

  2. Dans la liste Property type, sélectionnez Built-in. Si vous avez créé la connexion à utiliser dans le Repository, sélectionnez Repository, cliquez sur le bouton pour ouvrir la boîte de dialogue [Repository content] et sélectionnez cette connexion. Ainsi, le studio réutilise les paramètres de connexion dans le Job.

    Pour plus d'informations concernant la création d'une connexion Hadoop dans le Repository, consultez le chapitre décrivant le nœud Hadoop cluster dans le Guide de prise en main de Talend Big Data.

  3. Dans la zone Version, sélectionnez la distribution de Hadoop à utiliser, ainsi que sa version. Si votre distribution n'est pas dans la liste, sélectionnez Custom pour vous connecter à une distribution de Hadoop non officiellement supportée dans le studio.

    Pour comprendre comment utiliser l'option Custom étape par étape, consultez Connexion à une distribution Hadoop personnalisée.

  4. Dans la zone Connection, saisissez les paramètres de connexion à la base de données Hive à utiliser.

  5. Dans le champ Name node, saisissez l'emplacement du nœud maître, le NameNode, de la distribution à utiliser. Par exemple, saisissez talend-hdp-all:50300.

  6. Dans le champ Job tracker, saisissez l'emplacement du JobTracker de votre distribution. Par exemple, saisissez hdfs://talend-hdp-all:8020.

    La notion de Job dans le terme de JobTracker désigne les Jobs MR ou MapReduce décrits dans la documentation de Apache sur le site http://hadoop.apache.org/ (en anglais).

Créer la table Hive

Définir le schéma

  1. Double-cliquez sur le tHiveCreateTable pour ouvrir sa vue Component.

  2. Cochez la case Use an existing connection et, dans la liste Component list, sélectionnez la connexion configurée dans le composant tHiveConnection utilisé dans ce Job.

  3. Cliquez sur le bouton à côté du champ Edit schema pour ouvrir l'éditeur de schéma.

  4. Cliquez quatre fois sur le bouton pour ajouter quatre lignes dans la colonne Column. Renommez-les respectivement Id, FirstName, LastName et Reg_date.

    Notez que vous ne pouvez pas utilisez les mots-clés réservés à Hive pour nommer les colonnes, comme par exemple location ou date.

  5. Dans la colonne Type, sélectionnez le type de données dans chaque colonne. Dans ce scénario, Id est de type Integer, Reg_date est de type Date et les autres lignes sont de type String.

  6. Dans la colonne DB type, sélectionnez le type Hive de chaque colonne correspondant au type de données défini. Par exemple, Id est de type INT et Reg_date est de type TIMESTAMP.

  7. Dans la colonne Data pattern, définissez le modèle correspondant à celui des données brutes. Dans cet exemple, utilisez le modèle par défaut.

  8. Cliquez sur OK pour valider ces modifications.

Configurer les paramètres de la table

  1. Dans le champ Table name, saisissez le nom de la table Hive à créer. Dans ce scénario, saisissez employees.

  2. Dans la liste Action on table, sélectionnez Create table if not exists.

  3. Dans la liste Format, sélectionnez le format des données pour lequel la table Hive est créée. Dans ce scénario, sélectionnez TEXTFILE.

  4. Cochez la case Set partitions pour ajouter la partition US comme expliqué au début de ce scénario. Pour définir cette partition, cliquez sur le bouton à côté du champ Edit schema.

  5. Laissez la case Set file location décochée pour utiliser le chemin par défaut pour la table Hive.

  6. Cochez la case Set Delimited row format pour afficher les options disponibles du format de ligne.

  7. Cochez la case Field et saisissez un point-virgule (;) comme séparateur de champs dans le champ qui apparaît.

  8. Cochez la case Line et laissez la valeur par défaut comme séparateur de lignes.

Écrire des données dans la table

Configurer le tHiveLoad

  1. Double-cliquez sur le tHiveLoad pour ouvrir sa vue Component.

  2. Cochez la case Use an existing connection et, dans la liste Component list, sélectionnez la connexion configurée dans le composant tHiveConnection utilisé dans ce Job.

  3. Dans le champ Load action, sélectionnez LOAD pour écrire des données du fichier d'exemple présenté au début du scénario.

  4. Dans le champ File path, saisissez le chemin d'accès au répertoire dans lequel sont stockées les données. Dans cet exemple, les données sont stockées sur le système HDFS utilisé. Dans un cas d'utilisation réel, vous pouvez utiliser le tHDFSOutput afin d'écrire des données dans un système HDFS. Vous devez également vous assurer que l'application Hive a les droits et les permissions nécessaires pour écrire et également déplacer les données.

    Pour plus d'informations sur le tHDFSOutput, consultez tHDFSOutput. Pour plus d'informations sur les droits et permissions, consultez la documentation ou contactez l'administrateur du cluster Hadoop utilisé.

    Notez que si vous devez lire des données depuis un système de fichiers local autre que le système HDFS, vous devez vous assurer que les données lues sont stockées dans le système de fichiers local de la machine sur laquelle le Job est exécuté. Cochez ensuite la case Local dans la vue Basic settings. Par exemple, lorsque le mode de connexion à Hive est Standalone, le Job est exécuté sur la machine sur laquelle l'application Hive est installée. Les données sont donc stockées sur cette machine.

  5. Dans le champ Table name, saisissez le nom de la table cible dans laquelle charger les données. Dans ce scénario, saisissez employees.

  6. Dans la liste Action on file, sélectionnez APPEND.

  7. Cochez la case Set partitions et, dans le champ qui apparaît, saisissez le nom de la partition dans laquelle vous souhaitez ajouter des données. Dans ce scénario, cette partition est country='US'.

Exécuter le Job

Vous pouvez appuyer sur la touche F6 pour exécuter ce Job.

Cela fait, la vue Run s'ouvre automatiquement. Vous pouvez suivre le processus d'exécution.

Vous pouvez également vérifier les résultats dans la console Web de votre distribution Hadoop.

Si vous souhaitez plus d'informations concernant le Job, il est recommandé d'utiliser la console Web du JobTracker fournie par votre distribution Hadoop.