Ajout de propriétés Spark avancées pour résoudre des problèmes - Cloud - 8.0

Spark Batch

Version
Cloud
8.0
Language
Français
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement > Création de Jobs > Frameworks de Jobs > Spark Batch
Last publication date
2024-02-21

Selon la distribution que vous utilisez ou les problèmes auxquels vous êtes confrontés, vous aurez peut-être besoin d'ajouter des propriétés Spark spécifiques à la table Advanced properties dans l'onglet Spark configuration de la vue Run de votre Job.

Vous pouvez également définir des métadonnées de connexion à Hadoop dans le Repository. Dans son assistant, cochez la case Use Spark properties pour ouvrir la table des propriétés et ajoutez la ou les propriété(s) à utiliser, par exemple depuis spark-defaults.conf de votre cluster. Lorsque vous réutilisez cette connexion dans vos Jobs Apache Spark, les propriétés Spark avancées que vous avez ajoutées sont automatiquement ajoutées aux configurations de Spark pour ces Jobs.

Les informations contenues dans cette section concernent uniquement les utilisateurs et utilisatrices ayant souscrit à Talend Data Fabric ou à un produit Talend avec Big Data.

Les propriétés avancées et leurs valeurs nécessaires aux différentes distributions Hadoop ou pour certains problèmes sont listées ci-dessous :

Pour plus d'informations concernant les propriétés Spark valides, consultez la documentation Spark à l'adresse https://spark.apache.org/docs/latest/configuration (en anglais).

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.

Hortonworks Data Platform V2.4

  • spark.yarn.am.extraJavaOptions : -Dhdp.version=2.4.0.0-169

  • spark.driver.extraJavaOptions : -Dhdp.version=2.4.0.0-169

De plus, vous devez ajouter -Dhdp.version=2.4.0.0-169 dans la zone JVM settings, soit dans l'onglet Advanced settings de la vue Run, ou dans la zone Talend > Run/Debug de la fenêtre Preferences. La configuration de cet argument dans la fenêtre Preferences s'applique à tous les Jobs conçus dans le même Studio Talend.

MapR V5.1 et V5.2

Lorsque vous utilisez le cluster avec les composants HBase ou MapRDB :

spark.hadoop.yarn.application.classpath : saisissez la valeur de ce paramètre spécifique à votre cluster et ajoutez, s'il n'est pas renseigné, le classpath vers HBase pour vous assurer que le Job à utiliser trouve les classes et les packages dans le cluster.

Par exemple, si la version HBase installée dans le cluster est 1.1.1, copiez-collez tous les chemins d'accès définis dans le paramètre spark.hadoop.yarn.application.classpath de votre cluster et ajoutez ensuite opt/mapr/hbase/hbase-1.1.1/lib/* et /opt/mapr/lib/* à ces chemins d'accès. Les chemins d'accès ajoutés indiquent les endroits où HBase est généralement installée dans le cluster MapR. Si votre HBase est installée autre part, contactez l'administrateur·trice de votre cluster pour plus de détails et pour adapter ces chemins d'accès.

Cloudera CDP

Lorsque la configuration par défaut du Job ne fournit pas toutes les dépendances nécessaires à l'exécution du Job, vous devez spécifier les chemins des classes des dépendances manquantes via la propriété spark.hadoop.yarn.application.classpath.

Par exemple, ajoutez les chemins d'accès aux Jar Spark et aux bibliothèques Hive, en séparant chaque chemin par une virgule (,) : "opt/cloudera/parcels/CDP/lib/spark/jars/*, opt/cloudera/parcels/CDP/lib/hive/libs/*"

Sécurité

Sur la machine où est installé le Studio Talend avec Big Data, des outils de scan peuvent rapporter un problème de vulnérabilité (CVE vulnerability issue, en anglais) lié à Spark. Cependant, ce problème n'a aucun impact sur Spark, comme expliqué par la communauté Spark (en anglais), car cette vulnérabilité concerne uniquement la bibliothèque client Apache Thrift Go, que Spark n'utilise pas. Cette alerte ne concerne donc pas le Studio Talend et ne nécessite aucune action.