Propriétés du tMapRStreamsInput pour Apache Spark Streaming - 7.1

MapRStreams

author
Talend Documentation Team
EnrichVersion
7.1
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 Messaging (Intégration) > Composants MapRStreams
Gouvernance de données > Systèmes tiers > Composants Messaging (Intégration) > Composants MapRStreams
Qualité et préparation de données > Systèmes tiers > Composants Messaging (Intégration) > Composants MapRStreams
EnrichPlatform
Studio Talend

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

Le composant tMapRStreamsInput Spark Streaming appartient à la famille Messaging.

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

Basic settings

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Notez que le schéma de ce composant est en lecture seule. Il stocke les messages envoyés du producteur de messages.

Output type

Sélectionnez le type de données à envoyer au composant suivant.

Généralement, il est recommandé d'utiliser le type String, car le tMapRStreamsInput peut automatiquement traduire les messages MapR Streams de type byte[] en chaînes de caractères, afin de les traiter par le Job. Cependant, si le format des messages MapR Streams est inconnu du tMapRStreamsInput, comme Protobuf, vous pouvez sélectionner byte[] et utiliser un composant Custom code, comme le tJavaRow, afin de désérialiser les messages en chaînes de caractères, afin que les autres composants du Job puissent traiter ces messages.

Topic name

Saisissez le nom du topic duquel le tMapRStreamsInput reçoit le flux des messages. Vous devez saisir le nom du flux auquel ce topic appartient. La syntaxe est la suivante : chemin_du_flux:nom_du_topic

Starting from

Sélectionnez le point de départ duquel les messages d'un topic sont consommés.

Dans MapR Streams, le numéro d'ID séquentiel d'un message se nomme offset. Lorsqu'un nouveau groupe de consommateurs démarre, dans cette liste, vous pouvez sélectionner beginning pour commencer la consommation depuis le message le plus ancien du topic entier ou sélectionner latest pour attendre un nouveau message.

Notez que le groupe de consommateurs prend en compte uniquement les messages dont l'offset a été commité comme point de départ.

Chaque groupe de consommateurs possède son propre compteur pour se rappeler la position d'un message consommé. Pour cette raison, une fois qu'un groupe de consommateurs a commencé à consommer des messages d'un topic donné, un groupe de consommateurs reconnaît le message le plus récent en voyant simplement la position où son groupe a arrêté la consommation, plutôt que le topic complet. Partant de ce principe, les comportements suivants peuvent être attendus :

  • Si vous reprenez un groupe de consommateurs existant, cette option détermine le point de départ de ce groupe de consommateurs uniquement s'il n'a pas déjà de point de départ commité. Sinon, ce groupe de consommateurs démarre du point de départ commité. Par exemple, un topic contient 100 messages. Si un groupe de consommateurs existant a traité 50 messages et a commité leurs offsets, le même groupe de consommateurs reprend à partir de l'offset 51.

  • Si vous créez un nouveau groupe de consommateurs ou en réinitialisez un existant, ce qui signifie que ce groupe n'a consommé aucun message de ce topic, lorsque vous le démarrez depuis le dernier message, ce nouveau groupe démarre et attend l'offset 101.

Set number of records per second to read from each Kafka partition

Saisissez ce nombre entre guillemets doubles afin de limiter la taille de chaque batch à envoyer pour traitement.

Par exemple, si vous saisissez 100 et que la valeur du batch définie dans l'onglet Spark configuration est 2 secondes, la taille de partition pour chaque batch est de 200 messages.

Si vous laissez cette case décochée, le composant essaie de lire tous les messages disponibles en une seconde dans un batch avant d'envoyer ce dernier, ce qui peut créer un échec du Job s'il gère d'énormes quantités de messages.

Advanced settings

Consumer properties

Ajoutez les propriétés de consommation Kafka nécessaires pour personnaliser cette table.

Pour plus d'informations concernant les propriétés de consommation à définir dans cette table, consultez la documentation de MapR Streams à l'adresse suivante MapR Streams Overview (en anglais).

Custom encoding

Il est possible de rencontrer des problèmes d'encodage lorsque vous traitez les données stockées. Dans ce cas, cochez cette case pour afficher la liste Encoding.

Cet encodage est utilisé par le tMapRStreamsInput pour décoder les messages d'entrée.

Utilisation

Règle d'utilisation

Ce composant est utilisé en tant que composant de début et nécessite un lien de sortie.

Spark Connection

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 Storage (apercu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • Lorsque vous utilisez Qubole, ajoutez tS3Configuration à votre Job pour écrire vos données métier dans le système S3 avec Qubole. Sans tS3Configuration, ces données métier sont écrites dans le système Qubole HDFS et détruites une fois que vous arrêtez votre cluster.
    • Lorsque vous utilisez des distributions sur site (on-premises), 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 tHDFSConfiguration.

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

    Si vous utilisez Databricks sans composant de configuration dans votre Job, vos données métier sont écrites directement dans DBFS (Databricks Filesystem).

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

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 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.