Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Lorsque vous définissez votre tâche sur la AWS Glue console, vous fournissez des valeurs pour les propriétés permettant de contrôler l'environnement AWS Glue d'exécution.
Définition des propriétés des tâches Spark
La liste suivante contient les propriétés d'une tâche Spark. Pour les propriétés d'une tâche shell Python, consultez Définition des propriétés pour les tâches shell Python. Pour les propriétés d'une ETL tâche de streaming, voirDéfinition des propriétés de tâche pour une tâche ETL en streaming.
Les propriétés sont répertoriées dans l'ordre dans lequel elles apparaissent dans l'assistant d'ajout d'une tâche sur AWS Glue la console.
- Nom
-
Fournissez une chaîne UTF -8 d'une longueur maximale de 255 caractères.
- Description
-
Fournissez une description facultative de 2 048 caractères maximum.
- IAMRôle
-
Spécifiez le IAM rôle utilisé pour l'autorisation des ressources utilisées pour exécuter le travail et accéder aux magasins de données. Pour plus d'informations sur les autorisations relatives à l'exécution de tâches dans AWS Glue, consultezGestion des identités et des accès pour AWS Glue.
- Type
-
Le type de ETL travail. Ce paramètre est défini automatiquement en fonction du type de sources de données que vous sélectionnez.
-
Spark exécute un ETL script Apache Spark avec la commande job
glueetl
. -
Spark Streaming exécute un ETL script de streaming Apache Spark avec la commande job
gluestreaming
. Pour de plus amples informations, veuillez consulter Tâches ETL en streaming dans AWS Glue. -
Python shell exécute un script Python avec la commande job
pythonshell
. Pour de plus amples informations, veuillez consulter Configuration des propriétés des tâches pour les tâches du shell Python dans AWS Glue.
-
- Version AWS Glue
-
AWS Glue version détermine les versions d'Apache Spark et de Python disponibles pour la tâche, comme indiqué dans le tableau suivant.
AWS Glue version Versions Spark et Python prises en charge 4.0 -
Spark 3.3.0
-
Python 3.10
3.0 -
Spark 3.1.1
-
Python 3.7
2.0 -
Spark 2.4.3
-
Python 3.7
1.0 -
Spark 2.4.3
-
Python 2.7
-
Python 3.6
0.9 -
Spark 2.2.1
-
Python 2.7
-
- Langue
-
Le code du ETL script définit la logique de votre tâche. Le script peut être codé dans Python ou dans Scala. Vous pouvez choisir si le script exécuté par le job est généré par vous AWS Glue ou fourni par vous. Vous fournissez le nom et l'emplacement du script dans Amazon Simple Storage Service (Amazon S3). Vérifiez qu'il n'existe pas de fichier portant le même nom que le répertoire de script dans le chemin d'accès. Pour en savoir plus sur l'écriture de scripts, consultez AWS Glue guide de programmation.
- Type d'employé
-
Les types d'employé suivantes sont disponibles :
Les ressources disponibles pour les AWS Glue travailleurs sont mesurées enDPUs. A DPU est une mesure relative de la puissance de traitement composée de 4 % vCPUs de capacité de calcul et de 16 Go de mémoire.
-
G.1X
– Lorsque vous choisissez ce type, vous devez également fournir une valeur pour Number of workers (Nombre d'employés). Chaque utilisateur est mappé sur 1 DPU (4vCPUs, 16 Go de mémoire) avec un disque de 84 Go (environ 34 Go libres). Nous recommandons ce type de travailleur pour les charges de travail telles que les transformations de données, les jointures et les requêtes, afin de proposer un moyen évolutif et rentable d'exécuter la plupart des tâches. -
G.2X
– Lorsque vous choisissez ce type, vous devez également fournir une valeur pour Number of workers (Nombre d'employés). Chaque utilisateur est mappé sur 2 DPU (8vCPUs, 32 Go de mémoire) avec un disque de 128 Go (environ 77 Go gratuits). Nous recommandons ce type de travailleur pour les charges de travail telles que les transformations de données, les jointures et les requêtes, afin de proposer un moyen évolutif et rentable d'exécuter la plupart des tâches. -
G.4X
– Lorsque vous choisissez ce type, vous devez également fournir une valeur pour Number of workers (Nombre d'employés). Chaque utilisateur correspond à 4 DPU (16 ou vCPUs 64 Go de mémoire) sur un disque de 256 Go (environ 235 Go libres). Nous recommandons ce type de travailleur pour les tâches dont les charges de travail contiennent les transformations, les agrégations, les jointures et les requêtes les plus exigeantes. Ce type de collaborateur n'est disponible que pour les ETL jobs Spark AWS Glue version 3.0 ou ultérieure dans les AWS régions suivantes : USA Est (Ohio), USA Est (Virginie du Nord), USA Ouest (Oregon), Asie-Pacifique (Singapour), Asie-Pacifique (Sydney), Asie-Pacifique (Tokyo), Canada (Centre), Europe (Francfort), Europe (Irlande) et Europe (Stockholm). -
G.8X
– Lorsque vous choisissez ce type, vous devez également fournir une valeur pour Number of workers (Nombre d'employés). Chaque utilisateur en mappe jusqu'à 8 DPU (32vCPUs, 128 Go de mémoire) sur un disque de 512 Go (environ 487 Go gratuits). Nous recommandons ce type de travailleur pour les tâches dont les charges de travail contiennent les transformations, les agrégations, les jointures et les requêtes les plus exigeantes. Ce type de travailleur n'est disponible que pour les ETL tâches Spark AWS Glue version 3.0 ou ultérieure, dans les mêmes AWS régions que celles prises en charge pour le type deG.4X
travailleur. -
G.025X
– Lorsque vous choisissez ce type, vous devez également fournir une valeur pour Number of workers (Nombre d'employés). Chaque utilisateur correspond à 0,25 DPU (2vCPUs, 4 Go de mémoire) avec un disque de 84 Go (environ 34 Go libres). Nous recommandons ce type d'employé pour les travaux de streaming à faible volume. Ce type de travailleur n'est disponible que pour les tâches de streaming de la AWS Glue version 3.0.
Un taux horaire vous est facturé en fonction du nombre d'heures DPUs utilisées pour exécuter vos ETL tâches. Pour plus d'informations, consultez la page de tarification AWS Glue
. Pour les tâches de AWS Glue version 1.0 ou antérieures, lorsque vous configurez une tâche à l'aide de la console et que vous spécifiez un type de travailleur Standard, la capacité maximale est définie et le nombre de travailleurs devient la valeur de Capacité maximale - 1. Si vous utilisez le AWS Command Line Interface (AWS CLI) ou AWS SDK, vous pouvez spécifier le paramètre Capacité maximale, ou vous pouvez spécifier à la fois le type de travailleur et le nombre de travailleurs.
Pour les tâches de AWS Glue la version 2.0 ou ultérieure, vous ne pouvez pas spécifier de capacité maximale. Au lieu de cela, vous devez spécifier le Worker type (Type d'employé) et le Number of workers (Nombre d'employés).
-
- Nombre de travailleurs demandé
-
Pour la plupart des types d'employés, vous devez spécifier le nombre de travailleurs qui sont alloués lors de l'exécution de la tâche.
- Marque-page de tâche
-
Spécifiez la manière dont AWS Glue les informations d'état sont traitées lors de l'exécution de la tâche. Ce signet peut se souvenir des données traitées précédemment, mettre à jour les informations sur l'état ou ignorer les informations sur l'état. Pour de plus amples informations, veuillez consulter Suivi des données traitées à l'aide de signets de tâche.
- Mise en file d'attente pour l'exécution des tâches
-
Spécifie si les exécutions de tâches sont mises en file d'attente pour être exécutées ultérieurement lorsqu'elles ne peuvent pas être exécutées immédiatement en raison de quotas de service.
Lorsque cette case est cochée, la mise en file d'attente des tâches est activée pour les exécutions de tâches. S'ils ne sont pas renseignés, les exécutions de tâches ne seront pas prises en compte pour la mise en file d'attente.
Si ce paramètre ne correspond pas à la valeur définie lors de l'exécution du travail, la valeur du champ d'exécution du travail sera utilisée.
- Exécution flexible
-
Lorsque vous configurez une tâche à l'aide de AWS Studio ou du, API vous pouvez spécifier une classe d'exécution de tâche standard ou flexible. Vos tâches peuvent avoir différents degrés de priorité et de sensibilité au temps. La classe d'exécution standard est idéale pour les charges de travail urgentes qui nécessitent un démarrage rapide des tâches et des ressources dédiées.
La classe d'exécution flexible convient aux tâches non urgentes telles que les tâches de pré-production, les tests et les chargements de données uniques. Les exécutions flexibles sont prises en charge pour les tâches utilisant AWS Glue la version 3.0 ou ultérieure et/ou les
G.1X
types deG.2X
travailleurs.Les exécutions de tâches flexibles sont facturées en fonction du nombre de travailleurs en cours d'exécution à un moment donné dans le temps. Le nombre de travailleurs peut être ajouté ou supprimé pour une exécution flexible en cours d'exécution. Au lieu de facturer comme un simple calcul de
Max Capacity
*Execution Time
, chaque travailleur contribuera pour le temps qu'il a effectué pendant l'exécution du travail. La facture est la somme de (Number of DPUs per worker
*time each worker ran
).Pour plus d'informations, consultez le panneau d'aide de AWS Studio, ou Tâches etExécutions de tâches.
- Nombre de nouvelles tentatives
-
Spécifiez le nombre de fois, de 0 à 10, qui AWS Glue devrait redémarrer automatiquement la tâche en cas d'échec. Les tâches qui atteignent la limite de délai d'expiration ne sont pas redémarrées.
- Délai d'expiration de la tâche
-
Définit le délai d'exécution maximal en minutes. La valeur par défaut est de 2 880 minutes (48 heures) pour les tâches par lots. Lorsque le temps d'exécution de la tâche dépasse cette limite, le statut d'exécution de la tâche devient
TIMEOUT
.Les jobs de streaming doivent avoir des délais d'expiration inférieurs à 7 jours ou 10080 minutes. Lorsque la valeur est laissée vide, le travail sera redémarré au bout de 7 jours, si vous n'avez pas configuré de fenêtre de maintenance. Si vous avez configuré une fenêtre de maintenance, elle sera redémarrée pendant la fenêtre de maintenance après 7 jours.
Bonnes pratiques en matière de délais de travail
Les tâches sont facturées en fonction du temps d'exécution. Pour éviter des frais imprévus, configurez des valeurs de délai d'expiration adaptées à la durée d'exécution prévue de votre tâche.
- Propriétés avancées
-
- Nom du fichier du script
-
Un nom de script unique pour votre tâche. Ne peut pas être nommé « Job sans titre ».
- Chemin du script
-
L'emplacement du script sur Amazon S3. Le chemin doit être de la forme
s3://bucket/prefix/path/
. Il doit se terminer par une barre oblique (/
) et ne pas inclure de fichiers. - Métriques de tâche
-
Activez ou désactivez la création de CloudWatch métriques Amazon lors de l'exécution de cette tâche. Pour afficher les données de profilage, vous devez activer cette option. Pour en savoir plus sur l'activation et la visualisation de métriques, consultez Surveillance et débogage des tâches.
- Indicateurs d'observabilité des emplois
-
Activez la création de CloudWatch mesures d'observabilité supplémentaires lors de l'exécution de cette tâche. Pour de plus amples informations, veuillez consulter Surveillance à l'aide de métriques d'observabilité AWS Glue.
- Journalisation continue
-
Activez la journalisation continue sur Amazon CloudWatch. Si cette option n'est pas activée, les journaux ne sont disponibles qu'une fois la tâche terminée. Pour en savoir plus, consultez Journalisation continue des tâches AWS Glue.
- Interface utilisateur Spark
-
Permettez l'utilisation de l'interface utilisateur Spark pour la surveillance de cette tâche. Pour de plus amples informations, veuillez consulter Activation de l'interface utilisateur web Apache Spark pour les tâches AWS Glue.
- Chemin des journaux de l'interface utilisateur Spark
-
Le chemin pour écrire les journaux lorsque l'interface utilisateur de Spark est activée.
- Configuration de journalisation et de surveillance de l'interface utilisateur Spark
-
Choisissez l’une des options suivantes :
Standard : écrivez des journaux en utilisant l'ID AWS Glue d'exécution du job comme nom de fichier. Activez la surveillance de l'interface utilisateur Spark dans la AWS Glue console.
Legacy : écrivez des journaux en utilisant « spark-application- {timestamp} » comme nom de fichier. N'activez pas la surveillance de l'interface utilisateur Spark.
Standard et ancien : rédigez des journaux à la fois dans les emplacements standard et traditionnels. Activez la surveillance de l'interface utilisateur Spark dans la AWS Glue console.
- Simultanéité maximum
-
Définit le nombre maximal d'exécutions simultanées autorisées pour cette tâche. La valeur par défaut est 1. Une erreur est renvoyée lorsque ce seuil est atteint. La valeur maximale que vous pouvez spécifier est contrôlée par une limite de service. Par exemple, si une tâche est toujours en cours d'exécution lorsqu'une nouvelle instance est lancée, vous pouvez souhaiter le renvoi d'une erreur pour empêcher deux instances de la même tâche de s'exécuter simultanément.
- Chemin temporaire
-
Indiquez l'emplacement d'un répertoire de travail dans Amazon S3 où les résultats intermédiaires temporaires sont écrits lors de l' AWS Glue exécution du script. Vérifiez qu'il n'existe pas de fichier portant le même nom que le répertoire temporaire dans le chemin d'accès. Ce répertoire est utilisé lors des opérations de AWS Glue lecture et d'écriture sur Amazon Redshift et lors de certaines AWS Glue transformations.
Note
AWS Glue crée un compartiment temporaire pour les tâches s'il n'en existe pas déjà un dans une région. Ce compartiment peut permettre l'accès au public. Vous pouvez soit modifier le compartiment dans Amazon S3 pour définir le bloc d'accès public, soit supprimer le compartiment ultérieurement une fois toutes les tâches de cette région terminées.
- Seuil de notification de délai (minutes)
-
Définit le seuil (en minutes) avant l'envoi d'une notification de dépassement de délai. Vous pouvez définir ce seuil pour envoyer des notifications lorsqu'une exécution de tâche
RUNNING
,STARTING
ouSTOPPING
prend plus de temps que le nombre de minutes prévu. - Configuration de la sécurité
-
Choisissez une configuration de sécurité dans la liste. Une configuration de sécurité indique comment les données de la cible Amazon S3 sont chiffrées : pas de chiffrement, chiffrement côté serveur avec des clés AWS KMS gérées (SSE-KMS) ou clés de chiffrement gérées par Amazon S3 (-S3). SSE
- Chiffrement côté serveur
-
Si vous sélectionnez cette option, lorsque la ETL tâche écrit sur Amazon S3, les données sont chiffrées au repos à l'aide du chiffrement SSE -S3. Votre cible de données Amazon S3 et toutes les données qui sont écrites dans un répertoire temporaire Amazon S3 sont chiffrées. Cette option est transmise en tant que paramètre de tâche. Pour plus d'informations, consultez la section Protection des données à l'aide du chiffrement côté serveur avec des clés de chiffrement gérées par Amazon S3 (SSE-S3) dans le guide de l'utilisateur d'Amazon Simple Storage Service.
Important
Cette option est ignorée si une configuration de sécurité est spécifiée.
- Utiliser le catalogue de données Glue en tant que metastore Hive
-
Sélectionnez cette option pour utiliser le catalogue de AWS Glue données comme métastore Hive. Le IAM rôle utilisé pour le travail doit disposer de cette
glue:CreateDatabase
autorisation. Une base de données appelée « default » est créée dans le catalogue de données si elle n'existe pas.
- Connexions
-
Choisissez une VPC configuration pour accéder aux sources de données Amazon S3 situées dans votre cloud privé virtuel (VPC). Vous pouvez créer et gérer une connexion réseau dans AWS Glue. Pour de plus amples informations, veuillez consulter Connexion aux données.
- Bibliothèques
-
- Chemin de bibliothèque Python, JARs chemin dépendant et chemin des fichiers référencés
-
Spécifiez ces options si votre script les requiert. Vous pouvez définir des chemins Amazon S3 séparés par des virgules pour ces options lorsque vous définissez la tâche. Vous pouvez remplacer ces chemins lorsque vous exécutez la tâche. Pour de plus amples informations, veuillez consulter Fournir vos propres scripts personnalisés.
- Paramètres des tâches
-
Ensemble de paires clé-valeur transmises sous forme de paramètres nommés au script. Il s'agit de valeurs par défaut qui sont utilisées lors de l'exécution du script, mais vous pouvez les remplacer dans les déclencheurs ou lorsque vous exécutez la tâche. Vous devez préfixer le nom de la clé avec
--
; par exemple :--myKey
. Vous transmettez les paramètres de la tâche sous forme de carte lorsque vous utilisez le AWS Command Line Interface.Pour accéder à des exemples, veuillez consulter les paramètres Python dans Transmission de paramètres Python et accès à ces paramètres dans AWS Glue.
- Balises
-
Identifiez votre tâche avec une clé d'identification et avec une valeur d'identification facultative. Lorsque les clés d'identification sont créées, elles sont en lecture seule. Utilisez des identifications sur certaines ressources pour mieux les organiser et les identifier. Pour de plus amples informations, veuillez consulter AWS tags dans AWS Glue.
Restrictions pour les tâches qui accèdent aux tables gérées par Lake Formation
Tenez compte des remarques et restrictions suivantes lorsque vous créez des tâches qui permettent de lire ou d'écrire dans des tables gérées par AWS Lake Formation :
-
Les fonctions suivantes ne sont pas prises en charge dans les tâches qui accèdent à des tables comportant des filtres au niveau des cellules :