Propriétés du tPubSubInputAvro pour Apache Spark Streaming

Google PubSub

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend Data Fabric
Talend Real-Time Big Data Platform
task
Qualité et préparation de données > Systèmes tiers > Stockages Cloud > Composants Google PubSub
Création et développement > Systèmes tiers > Stockages Cloud > Composants Google PubSub
Gouvernance de données > Systèmes tiers > Stockages Cloud > Composants Google PubSub
EnrichPlatform
Studio Talend

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

Le composant Spark Streaming tPubSubInputAvro appartient à la famille Messaging.

Le composant de ce framework est disponible si vous avez souscrit à Talend Real-Time Big Data Platform ou Talend Data Fabric.

Basic settings

Define a Goolge Cloud configuration component

Si vous utilisez Dataproc comme votre cluster Spark, cochez cette case.

Sinon, cochez cette case pour permettre au composant Pub/Sub d'utiliser les informations de configuration de Google Cloud fournies par un composant tGoogleCloudConfiguration.

Schema et Edit schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont traités et passés 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 défini ici doit correspondre exactement au schéma Avro binaire des messages reçus sur Pub/Sub. Pour vous en assurer, vous pouvez créer un autre Job Spark Streaming pour définir un schéma donné en utilisant le composant tWriteAvroFields et écrire des messages avec ce schéma via le composant tPubSubOutput.

Topic name

Saisissez le nom du topic à partir duquel vous souhaitez consommer les messages.

Subscription name

Saisissez le nom de la souscription qui doit consommer le topic spécifié.

Si la souscription existe, elle doit être connectée au topic en question ; si la souscription n'existe pas, elle doit être créée et connectée au topic en question lors de l'exécution.

Advanced settings

Storage level

Dans la liste Storage level affichée, sélectionnez comment stocker les RDD en cache, dans la mémoire uniquement, ou dans la mémoire et sur le disque.

Pour plus d'informations concernant chaque niveau de stockage, consultez https://spark.apache.org/docs/latest/programming-guide.html#rdd-persistence.

Use hierarchical mode

Cochez cette case pour mapper le schéma binaire (y compris le schéma hiérarchique) Avro au schéma plat défini dans l'éditeur de schéma du composant. Si le message Avro à traiter est plat, laissez cette case décochée.

Une fois cochée, vous devez configurer le(s) paramètre(s) suivant(s) :

  • Local path to the avro schema : parcourez jusqu'au fichier définissant le schéma de données Avro à traiter.

  • Mapping : créez le mapping entre les colonnes du schéma du composant courant et les données stockées dans le message hiérarchique Avro à gérer. Dans la colonne Node, vous devez saisir le chemin d'accès à JSON pointant vers les données à lire du message Avro.

Utilisation

Règle d'utilisation

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

Connexion Spark

Vous devez utiliser l'onglet Spark Configuration de la vue Run afin de définir 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 : lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration. Lorsque vous utilisez d'autres distributions, utilisez un composant tHDFSConfiguration afin de spécifier le répertoire.

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

PubSub access permissions

Lorsque vous utilisez Pub/Sub avec un cluster Dataproc, assurez-vous que ce cluster possède les permissions appropriées pour accéder au service Pub/Sub.

Pour cela, vous pouvez créer un cluster Dataproc en cochant la case Allow API access to all Google Cloud services dans le même projet, dans les options avancées sur Google Cloud Platform, ou via l'invite de commande, en assignant les portées explicitement (l'exemple suivant concerne un cluster de test à faible puissance) :
gcloud beta dataproc clusters create CLUSTER_ID \
    --zone europe-west1-b \
    --master-machine-type n1-standard-2 \
    --master-boot-disk-size 50 \
    --num-workers 2 \
    --worker-machine-type n1-standard-2 \
    --worker-boot-disk-size 50 \
    --scopes 'https://www.googleapis.com/auth/cloud-platform' \
    --project PROJECT_ID