Accéder au contenu principal

Appliquer une préparation à un échantillon de données dans un Job Apache Spark Streaming

Ce scénario s'applique uniquement à Talend Real-Time Big Data Platform et à Talend Data Fabric.

Pour plus de technologies supportées par Talend, consultez Composants Talend.

Le composant tDataprepRun vous permet de réutiliser une préparation existante créée dans Talend Data Preparation ou Talend Cloud Data Preparation, directement dans un Job Big Data. En d'autres termes, vous pouvez opérationnaliser le processus d'application d'une préparation à des fichiers d'entrée ayant le même modèle.

Le scénario suivant décrit un Job simple qui :

  • utilise un petit échantillon de données de clients,
  • applique une préparation existante sur ces données,
  • affiche le résultat de la transformation dans la console.

Cela présuppose qu'une préparation ait été précédemment créée, sur un jeu de données ayant le même schéma que vos données d'entrée dans le Job. Dans ce cas, la préparation existante est nommée datapreprun_spark.

Note InformationsRemarque : Avoir le même schéma des deux côtés assure un résultat cohérent. Cependant, le Job s'exécute même si les schémas sont différents.

Cette préparation assez simple met les noms des employés en majuscule, et applique un filtre pour n'afficher que les clients originaires de Californie, du Texas et de Floride.

Notez que si une préparation contient des actions affectant une seule ligne ou des cellules, elles seront ignorées par le composant tDataprepRun au cours du Job. Les fonctions Make as header (Faire de la ligne un en-tête) ou Delete Row (Supprimer la ligne), par exemple, ne fonctionnent pas dans un contexte Big Data.

L'échantillon de données utilisé est le suivant :
James;Butt;California
Daniel;Fox;Connecticut
Donna;Coleman;Alabama
Thomas;Webb;Illinois
William;Wells;Florida
Ann;Bradley;California
Sean;Wagner;Florida
Elizabeth;Hall;Minnesota
Kenneth;Jacobs;Florida
Kathleen;Crawford;Texas
Antonio;Reynolds;California
Pamela;Bailey;Texas
Patricia;Knight;Texas
Todd;Lane;New Jersey
Dorothy;Patterson;Virginia
Note InformationsRemarque : Cet échantillon de données est créé uniquement à des fins de démonstration.

Le tHDFSConfiguration est utilisé dans ce scénario par Spark afin de se connecter au système HDFS où sont transférés les fichiers Jar dépendant du Job.

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 (aperçu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • 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 le tHDFSConfiguration.

  • Standalone mode : utilisez le composant de configuration correspondant au système de fichiers que votre cluster utilise, comme le tHDFSConfiguration Apache Spark Batch ou le tS3Configuration Apache Spark Batch.

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

Prérequis : assurez-vous de la bonne installation et du bon fonctionnement du cluster Spark.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !