Accéder au contenu principal Passer au contenu complémentaire

Propriétés du tRedshiftOutput pour Apache Spark Streaming

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

Le composant tRedshiftOutput Spark Streaming appartient à la famille Bases de données.

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 : aucune propriété n'est stockée de manière centrale.

Repository : Sélectionnez le fichier dans lequel sont stockées les propriétés du composant.

Cliquez sur cette icône pour ouvrir l'assistant de configuration de connexion à la base de données et enregistrer les paramètres de connexion que vous avez définis dans la vue Basic settings du composant.

Pour plus d'informations concernant la configuration et le stockage des paramètres de connexion à la base de données, consultez le Guide d'utilisation du Studio Talend.

Use an existing connection

Cochez cette case et sélectionnez le composant de connexion adéquat dans la liste Component list pour réutiliser les paramètres d'une connexion que vous avez déjà définie.

Host

Saisissez l'endpoint de la base de données à laquelle se connecter dans Redshift.

Port

Saisissez le numéro du port de la base de données à laquelle vous connecter dans Redshift.

Vous pouvez trouver les informations relatives dans la zone Cluster Database Properties de la console Web de votre Redshift.

Pour plus d'informations, consultez Gestion des clusters à l'aide de la console (uniquement en anglais).

Username et Password

Saisissez les informations d'authentification à la base de données Redshift à laquelle vous connecter.

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles et cliquez sur OK afin de sauvegarder les paramètres.

Database

Saisissez le nom de la base de données à laquelle vous connecter dans Redshift.

Vous pouvez trouver les informations relatives dans la zone Cluster Database Properties de la console Web de votre Redshift.

Pour plus d'informations, consultez Gestion des clusters à l'aide de la console (uniquement en anglais).

Le bucket et la base de données Redshift à utiliser doivent se situer dans la même région sur Amazon. Cela permet d'éviter les erreurs S3ServiceException d'Amazon. Pour plus d'informations concernant ces erreurs, consultez S3ServiceException Errors (uniquement en anglais) (en anglais).

Schema

Saisissez ne nom du schéma de la base de données à utiliser dans Redshift. Le schéma est nommé par défaut PUBLIC.

Un schéma, en termes Redshift , est similaire à un répertoire dans votre système d'exploitation. Pour plus d'informations concernant les schémas Redshift, consultez Schémas (uniquement en anglais).

Additional JDBC Parameters

Définissez des propriétés JDBC supplémentaires pour la connexion que vous créez. Les propriétés sont séparées par une esperluette et chaque propriété est une paire clé-valeur. Par exemple, ssl=true & sslfactory=com.amazon.redshift.ssl.NonValidatingFactory, qui signifie que la connexion sera créée en utilisant le SSL.

S3 configuration

Sélectionnez le composant tS3Configuration à partir duquel vous voulez que Spark utilise les détails de configuration pour se connecter à S3.

Vous devez déposer un composant tS3Configuration à utiliser avec le tRedshiftConfiguration dans le même Job, afin que le tS3Configuration soit affiché dans la liste S3 configuration.

S3 temp path

Saisissez l'emplacement dans S3 dans lequel les données à transférer à partir de ou vers Redshift sont temporairement stockées.

Ce chemin est indépendant du chemin temporaire que vous devez définir dans l'onglet Basic settings (Paramètres de base du composant tS3Configuration.

Table

Saisissez le nom de la table dans laquelle écrire les données. Notez que seule une table peut être écrite à la fois.

Si cette table n'existe pas, sélectionnez Create dans la liste Save mode pour permettre au tRedshiftOutput de la créer.

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.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Jobs et projets.

 

Créez le schéma en cliquant sur le bouton Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre Repository Content.

Save mode

Sélectionnez l'opération que le tRedshiftOutput doit exécuter sur la table spécifiée.

  • Create : le tRedshiftOutput crée la table spécifiée et écrit dans cette table.

  • Append : le tRedshiftOutput ajoute des données dans une table existante.

  • Overwrite : le tRedshiftOutput écrase les données de la table spécifiée.

    Cet écrasement a un impact sur la disponibilité de la table cible. Ainsi, si vous devez garder cette table hautement disponible, vous devez cocher la case Use staging table dans l'onglet Advanced settings pour que le tRedshiftOutput crée et écrive des données dans une table de préparation puis, une fois l'écriture réussie, qu'il remplace la table cible par la table de préparation. Si la table de préparation est activée et que l'écriture échoue, la table cible peut être rapidement restaurée.

Advanced settings

Distribution style

Sélectionnez le style de distribution que le tRedshiftOutput doit appliquer aux données à écrire.

Pour plus d'informations concernant chaque style de distribution, consultez Styles de distribution (uniquement en anglais).

Define sort key

Cochez cette case pour trier les données à écrire selon certaines colonnes des données.

Une fois cette case cochée, vous devez sélectionnez la ou les colonne(s) à utiliser comme clé(s) de tri. Pour plus d'informations concernant les différents types de clés de tri, consultez Choix des clés de tri (uniquement en anglais).

Use staging table

Cochez la case Use staging table pour que le tRedshiftOutput crée et écrive des données dans une table de préparation puis, une fois l'écriture réussie, qu'il remplace la table cible par la table de préparation.

Cette fonctionnalité est seulement disponible si vous avez sélectionné Overwrite dans la liste Save mode et est recommandée lorsque vous devez garder la table cible de l'écrasement hautement disponible.

Define pre-actions

Cochez cette case et dans le champ qui s'affiche, ajoutez une liste d'instructions SQL séparées par un point-virgule (;) à exécuter avant que le tRedshiftOutput ne commence à écrire des données.

En utilisant les instructions suivantes, vous pouvez par exemple supprimer toutes les lignes de la table Movie qui remplissent les conditions définies par les tables Movie et Director.
delete from movie using director where movie.movieid=director.directorid;

Define post-actions

Cochez cette case et dans le champ qui s'affiche, ajoutez une liste d'instructions SQL séparées par un point-virgule (;) à exécuter après que le tRedshiftOutput a écrit les données avec succès.

En utilisant les instructions suivantes, vous pouvez par exemple accorder le droit de sélection sur la table Movie à l'utilisateur ou l'utilisatrice ychen.
grant select on table movie to ychen;

Define extra copy options

Cochez cette case et dans le champ qui s'affiche, ajoutez une liste d'instruction SQL séparées par un point-virgule (;) à exécuter en même temps que l'écriture des données.

Le tRedshiftOutput utilise l'instruction Copy de Redshift SQL pour écrire des données. La liste des instructions SQL est en fait ajoutée à l'instruction Copy. Ainsi, seules les instructions ayant du sens à la fin de la commande Copy devraient être utilisées. Par exemple, l'instruction COMPUPDATE qui est utilisée pour contrôler si les encodages de compression sont automatiquement appliqués durant l'exécution de l'instruction Copy.

Pour plus d'informations concernant les options supplémentaires que vous pouvez choisir, consultez Paramètres facultatifs (uniquement en anglais).

Utilisation

Règle d'utilisation

Ce composant est utilisé en tant que composant de fin et requiert un lien d'entrée.

Ce composant nécessite un tRedshiftConfiguration présent dans le même Job pour se connecter à Redshift. Vous devez déposer un composant tRedshiftConfiguration avec ce composant et configurer ses paramètres simples (Basic settings) pour utiliser le composant tRedshiftConfiguration.

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.

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 Storage (aperçu 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 le tHDFSConfiguration (en anglais).

  • 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 (en anglais).

    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.

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 – faites-le-nous savoir.