Propriétés du tHDFSConfiguration pour Apache Spark Streaming - 7.0

HDFS

author
Talend Documentation Team
EnrichVersion
7.0
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Open Studio for Big Data
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants File (Intégration) > Composants HDFS
Gouvernance de données > Systèmes tiers > Composants File (Intégration) > Composants HDFS
Qualité et préparation de données > Systèmes tiers > Composants File (Intégration) > Composants HDFS
EnrichPlatform
Studio Talend

Ces propriétés sont utilisées pour configurer le tHDFSConfiguration s'exécutant dans le framework de Jobs Spark Streaming.

Le composant tHDFSConfiguration Spark Streaming appartient à la famille Storage.

Ce composant est disponible dans Talend Real Time Big Data Platform et dans Talend Data Fabric.

Basic settings

Property type

Peut-être Built-In ou Repository.

Built-in : Propriétés utilisées ponctuellement.

Repository : Sélectionnez le fichier de propriétés du composant.

Distribution

Sélectionnez dans la liste le cluster que vous utilisez. Les options de la liste varient selon le composant que vous utilisez. Les options de la liste dépendent des composants que vous utilisez, Parmi ces options, les suivantes nécessitent une configuration spécifique.
  • Si disponible dans la liste de Distribution, l'option Microsoft HD Insight vous permet d'utiliser un cluster Microsoft HD Insight. Dans cette optique, vous devez configurez les connexions au cluster HD Insight et au service Windows Azure Storage du cluster dans les zones affichées.Pour des explications détaillées au sujet de ces paramètres, consultez Configurer manuellement la connexion.

  • Si vous sélectionnez Amazon EMR, consultez l'article suivant concernant la configuration de la connexion : Amazon EMR - Prise en main .

  • L'option Custom vous permet de vous connecter à un cluster différente des clusters de la liste, par exemple une distribution non supportée officiellement par Talend .

  1. Sélectionner Import from existing version pour importer une distribution de base officiellement supportée et ajouter manuellement les autres Jars requis non fournis par cette distribution.

  2. Sélectionner Import from zip pour importer le fichier .zip de configuration pour la distribution personnalisée à utiliser. Ce fichier zip doit contenir les bibliothèques des différents éléments Hadoop et le fichier d'index de ces bibliothèques.

    Dans Talend Exchange, les membres de la communauté Talend ont partagé quelques fichiers zip de configuration prêts à l'emploi que vous pouvez télécharger depuis cette liste Hadoop configuration et utiliser directement dans votre connexion. Cependant, comme les différents projets relatifs à Hadoop ne cessent d'évoluer, il est possible que vous ne trouviez pas dans la liste le zip de configuration correspondant à votre distribution. Il est alors recommandé d'utiliser l'option Import from existing version, afin de se baser sur une distribution existante pour ajouter les .jars requis par votre distribution.

    Notez que les versions personnalisées ne sont pas officiellement supportées par Talend . Talend et sa Communauté fournissent l'opportunité de vous connecter à des versions personnalisées depuis le Studio mais ne peuvent garantir que la configuration de la version choisie sera simple, car de nombreuses versions et distributions d'Hadoop différentes sont disponibles. Il est recommandé de configurer une telle connexion uniquement si vos connaissances relatives à Hadoop sont suffisantes pour réparer les problèmes par vous-même.

    Remarque :

    Dans cette boîte de dialogue, la case de la zone active doit être cochée, afin d'importer les fichiers .jar correspondant à la connexion créée entre la distribution personnalisée et ce composant.

    Pour un exemple étape par étape expliquant comment se connecter à une distribution personnalisée et partager cette connexion, consultez Connexion à une distribution Hadoop personnalisée.

Hadoop version

Sélectionnez la version de la distribution Hadoop que vous utilisez. Les options disponibles dépendent du composant que vous utilisez.

Use kerberos authentication

Si vous accédez au cluster Hadoop fonctionnant avec la sécurité Kerberos, cochez cette case, puis saisissez le Principal Name de Kerberos pour le NameNode dans le champ affiché. Cela vous permet d'utiliser votre identifiant pour vous authentifier, en le comparant aux identifiants stockés dans Kerberos.
  • Si ce cluster est un cluster MapR de version 5.0.0 ou postérieure, vous pouvez paramétrer la configuration de l'authentification par ticket MapR en plus ou comme une alternative en suivant les explications dans Connexion sécurisée à MapR.

    Gardez à l'esprit que cette configuration génère un nouveau ticket de sécurité MapR pour le nom d'utilisateur défini dans le Job dans chaque exécution. Si vous devez réutiliser un ticket existant provenant du même utilisateur, laissez décochées les cases Force MapR ticket authentication et Use Kerberos authentication.

Cette case est disponible ou non selon la distribution Hadoop à laquelle vous vous connectez.

Use a keytab to authenticate

Cochez la case Use a keytab to authenticate pour vous connecter à un système utilisant Kerberos à l'aide d'un fichier keytab. Un fichier Keytab contient les paires des Principaux et clés cryptées Kerberos. Vous devez saisir le principal à utiliser dans le champ Principal et le chemin d'accès au fichier keytab dans le champ Keytab. Ce fichier keytab doit être stocké sur la machine où s'exécute votre Job, par exemple, sur un serveur de Jobs Talend.

L'utilisateur exécutant un Job utilisant un fichier 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 le Job est user1 et le principal à utiliser est guest. Dans cette situation, assurez-vous que user1 a les droits de lecture pour le fichier keytab à utiliser.

URI du NameNode

Saisissez l'URI du NameNode Hadoop, nœud maître d'un système Hadoop. Par exemple, si vous avez choisi une machine nommée mastermode comme NameMode, son emplacement est hdfs://masternode:portnumber. Si ce WebHDFS est sécurisé via SSL, le schéma d'URI doit être swebhdfs et vous devez utiliser un tLibraryLoad dans le Job pour charger la bibliothèque requise par votre WebHDFS sécurisé.

User name

Le champ User name est disponible lorsque vous n'utilisez pas Kerberos pour vous authentifier. Dans le champ User name, saisissez votre identifiant pour cette distribution. Si vous laissez le champ vide, le nom de la machine hébergeant le Studio sera utilisé.

Group

Identifiant de l'utilisateur et nom du groupe sous lesquels les instances HDFS ont été lancées. Ce champ peut être disponible ou indisponible selon la distribution que vous utilisez.

Use datanode hostname

Cochez la case Use datanode hostname pour permettre au Job d'accéder aux nœuds de données via leurs hébergeurs. Cela permet de configurer la propriété dfs.client.use.datanode.hostname à true. Lorsque vous vous connectez à un système de fichiers S3N, vous devez cocher cette case.

Hadoop properties

Le Studio Talend utilise une configuration par défaut pour son moteur, afin d'effectuer des opérations dans une distribution Hadoop. Si vous devez utiliser une configuration personnalisée dans une situation spécifique, renseignez dans cette table la ou les propriété(s) à personnaliser. Lors de l'exécution, la ou les propriété(s) personnalisée(s) va (vont) écraser celle(s) par défaut.
  • Notez que, si vous utilisez les métadonnées stockées centralement dans le Repository, cette table hérite automatiquement des propriétés définies dans ces métadonnées et passe en lecture seule jusqu'à ce que, dans la liste Property type, vous passiez de Repository à Built-in.

Pour plus d'informations concernant les propriétés requises par Hadoop et ses systèmes associés, tels que HDFS et Hive, consultez la documentation de la distribution Hadoop utilisée ou consultez la documentation d'Apache Hadoop sur http://hadoop.apache.org/docs en sélectionnant la version de la documentation souhaitée. À titre d'exemple, les liens vers certaines propriétés sont listés ci-après :

Setup HDFS encryption configurations

Si le chiffrement transparent HDFS est activé dans votre cluster, cochez la case Setup HDFS encryption configurations et, dans le champ HDFS encryption key provider qui s'affiche, saisissez l'emplacement du proxy KMS.

Pour plus d'informations concernant le chiffrement transparent HDFS et son proxy KMS, consultez Transparent Encryption in HDFS (en anglais).

Utilisation

Règle d'utilisation

Ce composant est utilisé sans avoir besoin d'être connecté à d'autres composants.

Déposez le tHDFSConfiguration avec le sous-job relatif au système de fichiers à exécuter dans le même Job, afin que la configuration soit utilisée par le Job complet lors de l'exécution.

Ce composant, ainsi que les composants Spark Streaming de la Palette à laquelle il appartient, s'affichent uniquement lorsque vous créez un Job Spark Streaming.

Notez que, dans cette documentation, sauf mention contraire, un scénario présente uniquement des Jobs Standard, c'est-à-dire des Jobs Talend traditionnels d'intégration de données.

Prérequis

La distribution Hadoop doit être correctement installée afin de garantir les interactions avec le Studio Talend . La liste suivante présente des informations d'exemple relatives à MapR.

  • Assurez-vous d'avoir installé le client MapR sur la même machine que le Studio Talend et d'avoir ajouté la bibliothèque client de MapR dans la variable PATH de cette machine. D'après la documentation de MapR, la ou les bibliothèques du client MapR correspondant à chaque OS peuvent être trouvées dans MAPR_INSTALL\ hadoop\hadoop-VERSION\lib\native. Par exemple, pour Windows, la bibliothèque est lib\MapRClient.dll dans le fichier Jar du client MapR. Pour plus d'informations, consultez la page suivante sur le site de MapR : http://www.mapr.com/blog/basic-notes-on-configuring-eclipse-as-a-hadoop-development-environment-for-mapr (en anglais).

    Si vous n'ajoutez pas de librairie, il est possible que vous rencontriez l'erreur suivante : no MapRClient in java.library.path.

  • Configurez l'argument -Djava.library.path, par exemple, dans la zone Job Run VM arguments de la vue Run/Debug de la boîte de dialogue [Preferences] dans le menu Window. Cet argument fournit au studio le chemin d'accès à la bibliothèque native du client MapR. Cela permet aux utilisateurs en souscription d'utiliser entièrement l'aperçu des données (Data viewer) afin de visualiser localement dans le studio les données stockées dans MapR.

Pour plus d'informations concernant l'installation d'une distribution Hadoop, consultez le manuel correspondant à la distribution Hadoop que vous utilisez.

Connexion à Spark

Dans l'onglet Spark Configuration de la vue Run, définissez la connexion à un cluster Spark donné pour le Job complet. De plus, puisque le Job attend ses fichiers .jar dépendants pour l'exécution, vous devez spécifier le répertoire du système de fichiers dans lequel ces fichiers .jar sont transférés afin que Spark puisse accéder à ces fichiers :
  • Yarn mode (Yarn Client ou Yarn Cluster) :
    • Lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration.

    • Lorsque vous utilisez HDInsight, spécifiez le blob à utiliser pour le déploiement du Job, dans la zone Windows Azure Storage configuration de l'onglet Spark configuration.

    • Lorsque vous utilisez Altus, spécifiez le bucket S3 ou le stockage Azure Data Lake (apercu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • Lorsque vous utilisez d'autres distributions, utilisez le composant de configuration correspondant au système de fichiers utilisé par votre cluster. Généralement, ce système est HDFS et vous devez utiliser le tHDFSConfiguration.

  • Standalone mode : vous devez choisir le composant de configuration selon le système de fichiers que vous utilisez, comme tHDFSConfiguration ou tS3Configuration.

Cette connexion fonctionne uniquement pour le Job dans lequel vous l'avez définie.

Délai spécifique avant suspension, dans Spark

Lorsque vous rencontrez des problèmes de réseau, Spark, par défaut, attend 45 minutes avant d'arrêter ses tentatives pour soumettre les Jobs. Lorsque ces 45 minutes sont écoulées, Spark déclenche la fin automatique de votre Job.

Ajoutez les propriétés suivantes à la table Hadoop properties du tHDFSConfiguration afin de réduire ce délai.

  • ipc.client.ping : false. Cela évite d'effectuer des pings si le serveur ne répond pas.

  • ipc.client.connect.max.retries : 0. Indique le nombre de nouvelles tentatives s'il y a une réponse à la demande de connexion mais qu'elle est refusée.

  • yarn.resourcemanager.connect.retry-interval.ms : saisissez n'importe quel chiffre ou nombre. Cela indique la fréquence des tentatives de connexion au service ResourceManager jusqu'à ce que Spark abandonne.