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.
Configuration AWS Glue sessions interactives pour Jupyter et AWS Glue Studio blocs-notes
Présentation de Jupyter magics
Les Jupyter magics sont des commandes qui peuvent être exécutées au début d'une cellule ou en tant que corps cellulaire entier. Les magics commencent par %
pour les magics linéaires et %%
pour les magics cellulaires. Les magics linéaires telles que %region
et %connections
peuvent être exécutées avec plusieurs magics dans une cellule, ou avec du code inclus à l’intérieur de la cellule, comme dans l'exemple suivant.
%region us-east-2 %connections my_rds_connection dy_f = glue_context.create_dynamic_frame.from_catalog(database='rds_tables', table_name='sales_table')
Les magics cellulaires doivent utiliser la cellule entière et leur commande peut s'étendre sur plusieurs lignes. Ci-dessous un exemple de %%sql
.
%%sql select * from rds_tables.sales_table
Magies soutenues par AWS Glue séances interactives pour Jupyter
Voici des magies que vous pouvez utiliser avec AWS Glue sessions interactives pour les blocs-notes Jupyter.
Sessions Magics (Séances Magics)
Nom | Type | Description |
---|---|---|
%help
|
N/A | Renvoie une liste de descriptions et de types d'entrée pour toutes les commandes magiques. |
%profile |
Chaîne | Spécifiez un profil dans votre AWS configuration à utiliser comme fournisseur d'informations d'identification. |
%region |
Chaîne |
Spécifie la Région AWS ; dans laquelle initialiser une séance. Valeurs par défaut de Exemple : |
%idle_timeout |
Int |
Nombre de minutes d'inactivité au bout desquelles une séance expire après l'exécution d'une cellule. La valeur du délai d'inactivité par défaut pour les ETL séances Spark est le délai d'inactivité par défaut, soit 2 880 minutes (48 heures). Pour les autres types de séances, consultez la documentation relative. Exemple : |
%session_id |
N/A | Retournez l'ID de séance de la séance en cours d'exécution. |
%session_id_prefix |
Chaîne |
Définissez une chaîne qui précède toutes les séances IDs au format [session_id_prefix] - [session_id]. Si aucun ID de séance n'est fourni, un résultat aléatoire UUID est généré. Ce magic n'est pas pris en charge lorsque vous exécutez un bloc-notes Jupyter dans AWS Glue Studio. Exemple : |
%status |
Renvoie le statut du courant AWS Glue session, y compris sa durée, sa configuration et l'exécution de son rôle/utilisateur. | |
%stop_session
| Arrête la séance en cours. | |
%list_sessions |
Répertorie toutes les séances en cours d'exécution par nom et ID. | |
%session_type |
Chaîne |
Définit le type de session comme suit : Streaming ou Ray. ETL Exemple : |
%glue_version |
Chaîne |
La version de AWS Glue à utiliser par cette séance. Exemple : |
Magics pour la sélection des types de tâches
Nom | Type | Description |
---|---|---|
%streaming |
Chaîne | Modifie le type de session en AWS Glue Streaming. |
%etl |
Chaîne | Modifie le type de session en AWS Glue ETL. |
%glue_ray | Chaîne | Modifie le type de session en AWS Glue pour Ray. Découvrez les sessions interactives Magics soutenues par AWS Glue Ray. |
AWS Glue pour Spark config magics
Le magic %%configure
est un dictionnaire au format JSON comprenant tous les paramètres de configuration d'une session. Chaque paramètre peut être spécifié ici ou par magies individuelles.
Nom | Type | Description |
---|---|---|
%%configure
|
Dictionnaire |
Spécifiez un dictionnaire JSON au format comprenant tous les paramètres de configuration d'une séance. Chaque paramètre peut être spécifié ici ou par magies individuelles. Pour obtenir la liste des paramètres et des exemples d'utilisation |
%iam_role |
Chaîne |
Spécifiez un IAM rôle ARN avec lequel exécuter votre séance. Valeurs par défaut de ~/.aws/configure. Exemple : |
%number_of_workers |
Int |
Le nombre d'employés d'un paramètre worker_type défini qui sont alloués lorsqu'une tâche est exécutée. Exemple : |
%additional_python_modules |
Liste |
Liste de modules Python supplémentaires séparés par des virgules à inclure dans votre cluster (peut provenir de PyPI ou de S3). Exemple: |
%%tags |
Chaîne |
Ajoute des balises à une session. Spécifiez les balises entre crochets {}. Chaque paire de noms de balises est placée entre parenthèses (« ») et séparée par une virgule (,).
Utilisez le magic
|
%%assume_role |
Dictionnaire |
Spécifiez un dictionnaire au format JSON ou une ARN chaîne de IAM rôle pour créer une séance d'accès intercompte. Exemple avec ARN :
Exemple avec informations d'identification :
|
Arguments du magic cellulaire %%configure
Le magic %%configure
est un dictionnaire au format JSON comprenant tous les paramètres de configuration d'une session. Chaque paramètre peut être spécifié ici ou par magies individuelles. Vous trouverez ci-dessous des exemples d'arguments soutenus par le magic cellulaire %%configure
. Utilisez le --
préfixe pour les arguments d'exécution spécifiés pour la tâche. Exemple :
%%configure { "--user-jars-first": "true", "--enable-glue-datacatalog": "false" }
Pour de plus amples informations sur les paramètres de la tâche, consultezParamètres des tâches.
Configuration de session
Paramètre | Type | Description |
---|---|---|
max_retries |
Int | Nombre maximum de tentatives de cette tâche en cas d'échec.
|
max_concurrent_runs |
Int | Nombre maximal d'exécutions simultanées autorisées pour une tâche. Exemple :
|
Paramètres de session
Paramètre | Type | Description |
---|---|---|
--enable-spark-ui |
Booléen | Activez l'interface utilisateur Spark pour surveiller et déboguer AWS Glue ETLemplois.
|
--spark-event-logs-path |
Chaîne | Spécifie un chemin d'accès Amazon S3. Lorsque vous utilisez la fonctionnalité de surveillance de l'interface utilisateur Spark. Exemple :
|
--script_location |
Chaîne | Spécifie le chemin d'accès S3 à un script qui exécute une tâche. Exemple :
|
--SECURITY_CONFIGURATION |
Chaîne | Nom d'une configuration AWS Glue de sécurité Exemple :
|
--job-language |
Chaîne | Langage de programmation des scripts. Accepte la valeur « scala » ou « python ». La valeur par défaut est « python ». Exemple :
|
--class |
Chaîne | La classe Scala qui sert de point d'entrée à votre script Scala. La valeur par défaut est nulle. Exemple :
|
--user-jars-first |
Booléen | Donne la priorité aux JAR fichiers supplémentaires du client dans le chemin de classe. La valeur par défaut est nulle. Exemple :
|
--use-postgres-driver |
Booléen | Donne la priorité au JDBC pilote Postgres dans le chemin de classe afin d'éviter tout conflit avec le pilote. Amazon Redshift JDBC La valeur par défaut est nulle. Exemple :
|
--extra-files |
List(string) | Chemins Amazon S3 vers des fichiers supplémentaires (par exemple, des fichiers de configuration) AWS Glue copie dans le répertoire de travail de votre script avant de l'exécuter. Exemple :
|
--job-bookmark-option |
Chaîne | Contrôle le comportement d'un signet de tâche. Accepte les valeurs « job-bookmark-enable », « job-bookmark-disable » ou « job-bookmark-pause ». La valeur par défaut est job-bookmark-disable « ». Exemple :
|
--TempDir |
Chaîne | Spécifie un chemin Amazon S3 vers un compartiment qui peut être utilisé comme répertoire temporaire pour la tâche. La valeur par défaut est nulle. Exemple :
|
--enable-s3-parquet-optimized-committer |
Booléen | Active le validateur optimisé pour EMRFS Amazon S3 pour l'écriture de données Parquet dans Amazon S3. La valeur par défaut est « true ». Exemple :
|
--enable-rename-algorithm-v2 |
Booléen | Définit la version de l'algorithme de EMRFS renommage sur la version 2. La valeur par défaut est « true ». Exemple :
|
--enable-glue-datacatalog |
Booléen | Vous permet d'utiliser le AWS Glue Catalogue de données en tant que métastore Apache Hive Spark. Exemple :
|
--enable-metrics |
Booléen | Permet de collecter des métriques de profilage de tâche pour l'exécution de la tâche. La valeur par défaut est « false ». Exemple :
|
--enable-continuous-cloudwatch-log |
Booléen | Active la journalisation continue en temps réel pour AWS Glue emplois. La valeur par défaut est « false ». Exemple :
|
--enable-continuous-log-filter |
Booléen | Spécifie un filtre standard ou aucun filtre lorsque vous créez ou modifiez une tâche activée pour la journalisation continue. La valeur par défaut est « true ». Exemple :
|
--continuous-log-stream-prefix |
Chaîne | Spécifie un préfixe de flux de Amazon CloudWatch journal personnalisé pour une tâche activée pour la journalisation en continu. La valeur par défaut est nulle. Exemple :
|
--continuous-log-conversionPattern |
Chaîne | Spécifie un modèle de journal de conversion personnalisé pour une tâche activée pour la journalisation en continu. La valeur par défaut est nulle. Exemple :
|
--conf |
Chaîne | Contrôle les paramètres de configuration de Spark. Elle est destinée aux cas d'utilisation avancés. À utiliser --conf avant chaque paramètre. Exemple :
|
timeout | Int | Détermine la durée maximale pendant laquelle la séance Spark doit attendre la fin d'une instruction avant de la terminer.
|
auto-scaling | Booléen | Détermine s'il faut ou non utiliser l'auto-scaling.
|
Magies de Spark Jobs (ETLet du streaming)
Nom | Type | Description |
---|---|---|
%worker_type |
Chaîne | Standard, G.1X ou G.2X. number_of_workers doit également être défini. Le paramètre worker_type par défaut est G.1X. |
%connections |
Liste |
Spécifiez une liste de connexions séparées par des virgules à utiliser dans la séance. Exemple :
|
%extra_py_files |
Liste | Liste de fichiers Python supplémentaires séparée par des virgules provenant d'Amazon S3. |
%extra_jars |
Liste | Liste de pots supplémentaires séparés par des virgules à inclure dans le cluster. |
%spark_conf |
Chaîne | Spécifiez des configurations Spark personnalisées pour votre session. Par exemple, %spark_conf spark.serializer=org.apache.spark.serializer.KryoSerializer . |
Magics pour les tâches Ray
Nom | Type | Description |
---|---|---|
%min_workers |
Int | Le nombre minimum de travailleurs alloués à une tâche Ray. Par défaut : 1. Exemple : |
%object_memory_head |
Int | Le pourcentage de mémoire disponible sur le nœud principal de l'instance après un démarrage à chaud. Minimum : 0. Maximum : 100. Exemple : |
%object_memory_worker | Int | Le pourcentage de mémoire disponible sur le composant master de l'instance après un démarrage à chaud. Minimum : 0. Maximum : 100. Exemple : |
Action Magics (Action Magics)
Nom | Type | Description |
---|---|---|
%%sql |
Chaîne |
Exécutez SQL le code. Toutes les lignes après la Exemple : |
%matplot |
Illustration Matplotlib |
Visualisez vos données à l'aide de la bibliothèque Matplotlib. Exemple :
|
%plotly |
Illustration Plotly |
Visualisez vos données à l'aide de la bibliothèque Plotly. Exemple :
|
Désignation des séances
AWS Glue Les séances interactives sont AWS des ressources et nécessitent un nom. Les noms doivent être uniques pour chaque séance et peuvent être restreints par vos IAM administrateurs. Pour de plus amples informations, veuillez consulter Sessions interactives avec IAM. Le noyau Jupyter génère automatiquement des noms de session uniques pour vous. Toutefois, les séances peuvent être nommées manuellement de deux manières :
-
À l'aide du fichier de AWS Command Line Interface configuration situé à l'adresse
~.aws/config
. Voir Configuration de la AWS configuration avec le AWS Command Line Interface. -
Utilisation des magics
%session_id_prefix
. Consultez Magies soutenues par AWS Glue séances interactives pour Jupyter .
Un nom de séance est généré comme suit :
Lorsque le préfixe et l'identifiant de session sont fournis : le nom de la séance sera {prefix} - {}. UUID
Lorsque rien n'est fourni : le nom de la séance sera {UUID}.
Le préfixe des noms de séance vous autorise à reconnaître votre session lorsque vous la répertoriez dans la console AWS CLI ou dans la console.
Spécification d'un IAM rôle pour les séances interactives
Vous devez spécifier un rôle AWS Identity and Access Management (IAM) à utiliser avec AWS Glue ETLcode que vous exécutez avec des sessions interactives.
Le rôle requiert les mêmes IAM autorisations que celles requises pour s'exécuter AWS Glue emplois. Voir Créer un IAM rôle pour AWS Gluepour plus d'informations sur la création d'un rôle pour AWS Glue emplois et séances interactives.
IAMLes rôles peuvent être spécifiés de deux manières :
-
À l'aide du fichier de AWS Command Line Interface configuration situé à l'
~.aws/config
adresse (recommandé). Pour de plus amples informations, veuillez consulter Configuration de séances avec ~/.aws/config (langue Français non garantie).Note
Lorsque magic de
%profile
est utilisée, la configuration pourglue_iam_role
de ce profil est respectée. -
Utilisation du magic %iam_role. Pour plus d'informations, consultez Magies soutenues par AWS Glue séances interactives pour Jupyter .
Configuration des séances avec des profils nommés
AWS Glue Les séances interactives utilisent les mêmes informations d'identification que AWS Command Line Interface ou boto3. Les sessions interactives honorent et fonctionnent avec des profils nommés tels que le AWS CLI trouvé dans ~/.aws/config
(Linux ou MacOS) ou %USERPROFILE%\.aws\config
(Windows). Pour de plus amples informations, consultez Using named profiles.
Les sessions interactives tirent parti des profils nommés en permettant AWS Glue Le préfixe de fonction du service et d'ID de séance à spécifier dans un profil. Pour configurer un rôle de profil, ajoutez une ligne pour la clé iam_role
et/ou session_id_prefix
à votre profil nommé comme indiqué ci-dessous. Le session_id_prefix
ne nécessite pas de guillemets. Par exemple, si vous souhaitez ajouter un
session_id_prefix
, saisissez la valeur du session_id_prefix=myprefix
.
[default] region=us-east-1 aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRole> session_id_prefix=<prefix_for_session_names> [user1] region=eu-west-1 aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRoleUser1> session_id_prefix=<prefix_for_session_names_for_user1>
Si vous disposez d'une méthode personnalisée pour générer des informations d'identification, vous pouvez également configurer votre profil pour utiliser le paramètre credential_process
dans votre fichier ~/.aws/config
. Par exemple :
[profile developer] region=us-east-1 credential_process = "/Users/Dave/generate_my_credentials.sh" --username helen
Vous trouverez plus de détails sur la source d'approvisionnement des informations d'identification via le paramètre credential_process
ici : Source d'approvisionnement des informations d'identification avec un processus externe.
Si une région ou iam_role
ne sont pas définis dans le profil que vous utilisez, vous devez les spécifier à l'aide des magics %region
et %iam_role
dans la première cellule que vous exécutez.